Single-assignment variables
These are not variables at all, but dynamic constants
- any loads that precede the store are forced to wait
S-A variables can be used to eliminate data races
- e.g. layers of s-a variables instead of barriers
A key issue with s-a variables is when to reclaim them
- for efficiency, dependence analysis is required
- alternatives are reference counts or garbage collection
The programmer usually knows which load is last