diff -r dd30e4318b8d -r 119881dc9d0b hotspot/src/share/vm/compiler/compileBroker.cpp --- a/hotspot/src/share/vm/compiler/compileBroker.cpp Sat Mar 26 08:31:45 2011 -0700 +++ b/hotspot/src/share/vm/compiler/compileBroker.cpp Sun Mar 27 00:00:14 2011 -0700 @@ -874,6 +874,14 @@ return; } +#ifndef PRODUCT + if (osr_bci != -1 && !FLAG_IS_DEFAULT(OSROnlyBCI)) { + if ((OSROnlyBCI > 0) ? (OSROnlyBCI != osr_bci) : (-OSROnlyBCI == osr_bci)) { + // Positive OSROnlyBCI means only compile that bci. Negative means don't compile that BCI. + return; + } + } +#endif // If this method is already in the compile queue, then // we do not block the current thread.