src/share/vm/runtime/compilationPolicy.cpp

changeset 4267
bd7a7ce2e264
parent 4251
18fb7da42534
child 4908
b84fd7d73702
child 4936
aeaca88565e6
     1.1 --- a/src/share/vm/runtime/compilationPolicy.cpp	Fri Nov 09 08:36:17 2012 -0800
     1.2 +++ b/src/share/vm/runtime/compilationPolicy.cpp	Mon Nov 12 14:03:53 2012 -0800
     1.3 @@ -97,6 +97,9 @@
     1.4  // This is intended to force compiles for methods (usually for
     1.5  // debugging) that would otherwise be interpreted for some reason.
     1.6  bool CompilationPolicy::must_be_compiled(methodHandle m, int comp_level) {
     1.7 +  // Don't allow Xcomp to cause compiles in replay mode
     1.8 +  if (ReplayCompiles) return false;
     1.9 +
    1.10    if (m->has_compiled_code()) return false;       // already compiled
    1.11    if (!can_be_compiled(m, comp_level)) return false;
    1.12  
    1.13 @@ -322,6 +325,16 @@
    1.14        return NULL;
    1.15      }
    1.16    }
    1.17 +  if (CompileTheWorld || ReplayCompiles) {
    1.18 +    // Don't trigger other compiles in testing mode
    1.19 +    if (bci == InvocationEntryBci) {
    1.20 +      reset_counter_for_invocation_event(method);
    1.21 +    } else {
    1.22 +      reset_counter_for_back_branch_event(method);
    1.23 +    }
    1.24 +    return NULL;
    1.25 +  }
    1.26 +
    1.27    if (bci == InvocationEntryBci) {
    1.28      // when code cache is full, compilation gets switched off, UseCompiler
    1.29      // is set to false

mercurial