Mercurial > hg > graal-jvmci-8
diff src/share/vm/opto/compile.cpp @ 4115:1bd45abaa507
6890673: Eliminate allocations immediately after EA
Summary: Try to eliminate allocations and related locks immediately after escape analysis.
Reviewed-by: never
author | kvn |
---|---|
date | Wed, 16 Nov 2011 09:13:57 -0800 |
parents | 6729bbc1fcd6 |
children | 669f6a7d5b70 |
line wrap: on
line diff
--- a/src/share/vm/opto/compile.cpp Wed Nov 16 01:39:50 2011 -0800 +++ b/src/share/vm/opto/compile.cpp Wed Nov 16 09:13:57 2011 -0800 @@ -1711,11 +1711,22 @@ if (failing()) return; + // Optimize out fields loads from scalar replaceable allocations. igvn.optimize(); print_method("Iter GVN after EA", 2); if (failing()) return; + if (congraph() != NULL && macro_count() > 0) { + PhaseMacroExpand mexp(igvn); + mexp.eliminate_macro_nodes(); + igvn.set_delay_transform(false); + + igvn.optimize(); + print_method("Iter GVN after eliminating allocations and locks", 2); + + if (failing()) return; + } } // Loop transforms on the ideal graph. Range Check Elimination,