src/share/vm/opto/compile.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/share/vm/opto/compile.cpp	Fri Jan 16 19:37:25 2015
--- new/src/share/vm/opto/compile.cpp	Fri Jan 16 19:37:24 2015

*** 2649,2658 **** --- 2649,2659 ---- frc.inc_double_count(); break; case Op_Opaque1: // Remove Opaque Nodes before matching case Op_Opaque2: // Remove Opaque Nodes before matching case Op_Opaque3: + case Op_Opaque4: n->subsume_by(n->in(1), this); break; case Op_CallStaticJava: case Op_CallJava: case Op_CallDynamicJava:
*** 3315,3324 **** --- 3316,3328 ---- // Report if there are too many traps at the current method and bci. // Return true if there was a trap, and/or PerMethodTrapLimit is exceeded. bool Compile::too_many_traps(ciMethod* method, int bci, Deoptimization::DeoptReason reason) { + if (method->ignore_profile()) { + return false; + } ciMethodData* md = method->method_data(); if (md->is_empty()) { // Assume the trap has not occurred, or that it occurred only // because of a transient condition during start-up in the interpreter. return false;
*** 3364,3373 **** --- 3368,3380 ---- // Is not eager to return true, since this will cause the compiler to use // Action_none for a trap point, to avoid too many recompilations. bool Compile::too_many_recompiles(ciMethod* method, int bci, Deoptimization::DeoptReason reason) { + if (method->ignore_profile()) { + return false; + } ciMethodData* md = method->method_data(); if (md->is_empty()) { // Assume the trap has not occurred, or that it occurred only // because of a transient condition during start-up in the interpreter. return false;

src/share/vm/opto/compile.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File