6384206: Phis which are later unneeded are impairing our ability to inline based on static types

Reviewed-by: rasbold, jrose
This commit is contained in:
Tom Rodriguez 2008-09-17 12:59:52 -07:00
parent eee15b163e
commit 4b1e242299
18 changed files with 1082 additions and 401 deletions

View file

@ -467,6 +467,7 @@ Compile::Compile( ciEnv* ci_env, C2Compiler* compiler, ciMethod* target, int osr
}
}
set_print_assembly(print_opto_assembly);
set_parsed_irreducible_loop(false);
#endif
if (ProfileTraps) {
@ -550,6 +551,8 @@ Compile::Compile( ciEnv* ci_env, C2Compiler* compiler, ciMethod* target, int osr
rethrow_exceptions(kit.transfer_exceptions_into_jvms());
}
print_method("Before RemoveUseless");
// Remove clutter produced by parsing.
if (!failing()) {
ResourceMark rm;
@ -615,8 +618,6 @@ Compile::Compile( ciEnv* ci_env, C2Compiler* compiler, ciMethod* target, int osr
if (failing()) return;
NOT_PRODUCT( verify_graph_edges(); )
print_method("Before Matching");
#ifndef PRODUCT
if (PrintIdeal) {
ttyLocker ttyl; // keep the following output all in one block
@ -720,6 +721,7 @@ Compile::Compile( ciEnv* ci_env,
TraceTime t1(NULL, &_t_totalCompilation, TimeCompiler, false);
TraceTime t2(NULL, &_t_stubCompilation, TimeCompiler, false);
set_print_assembly(PrintFrameConverterAssembly);
set_parsed_irreducible_loop(false);
#endif
CompileWrapper cw(this);
Init(/*AliasLevel=*/ 0);