Details
-
Type:
Improvement
-
Status:
Open
-
Priority:
Minor
-
Resolution: Unresolved
-
Affects Version/s: None
-
Fix Version/s: 1000
-
Component/s: Compiler: Optimizing
-
Labels:None
-
Number of attachments :
Description
In r13896 I added support for REF_MOVE chasing for scalar replacement of aggregates. This means we're not dependent on copy elimination in simple optimizations to analyze the operations on a particular local aggregate type. As such, when analyzing called methods with OPT_SimpleEscape.escapePlan we can possibly remove the simple optimization phase.
Its worth noting that escape optimizations may fail currently as we're not using branch optimizations to kill potential dead code in the called method. We should evaluate what's the best choice of optimizations in this set of compiler phases called by a compiler phase.
It would be nice to have a simpler escape analysis phase but not a critical feature of 2.9.3 (it may also be worth just recompiling the method for analysis rather than converting it to HIR and throwing that in the bin).