src/share/vm/opto/c2compiler.cpp

changeset 8421
3e1cd663c2d3
parent 7598
ddce0b7cee93
child 8604
04d83ba48607
child 9942
eddd586d1a4c
     1.1 --- a/src/share/vm/opto/c2compiler.cpp	Thu Apr 21 13:17:25 2016 +0200
     1.2 +++ b/src/share/vm/opto/c2compiler.cpp	Fri Apr 15 12:02:37 2016 +0530
     1.3 @@ -49,6 +49,9 @@
     1.4  const char* C2Compiler::retry_no_escape_analysis() {
     1.5    return "retry without escape analysis";
     1.6  }
     1.7 +const char* C2Compiler::retry_class_loading_during_parsing() {
     1.8 +  return "retry class loading during parsing";
     1.9 +}
    1.10  bool C2Compiler::init_c2_runtime() {
    1.11  
    1.12    // Check assumptions used while running ADLC
    1.13 @@ -115,6 +118,10 @@
    1.14  
    1.15      // Check result and retry if appropriate.
    1.16      if (C.failure_reason() != NULL) {
    1.17 +      if (C.failure_reason_is(retry_class_loading_during_parsing())) {
    1.18 +        env->record_failure(C.failure_reason());
    1.19 +        continue;  // retry
    1.20 +      }
    1.21        if (C.failure_reason_is(retry_no_subsuming_loads())) {
    1.22          assert(subsume_loads, "must make progress");
    1.23          subsume_loads = false;

mercurial