Contributors:
- Andrew Macleod
Dependencies:
Delivery date:
- Unknown (may not happen at all).
Benefits:
- Reduced compilation time.
- Less memory thrashing.
Risks:
- Bugs, introduced when eliminating array accessors to operands,
- using iterator interface exclusively.
Description:
- Remove the existing implementation of the ssa operand cache, and replace it with one which is more efficient now that immediate use information is integrated. The old mechanism destroyed the entire stmt cache when the stmt changed, and rebuilt it. With immediate use information integrated, this results in a LOT of de-linking and re-linking of information when only one operand has changed in the stmt. This is quite common, and is repsonsible for most of the slowdown in keeping info up to date. A lot of thrashing happens. The new implementation will only affect things which actually changed.