src/hotspot/share/opto/c2compiler.cpp
branchdatagramsocketimpl-branch
changeset 58678 9cf78a70fa4f
parent 54750 1851a532ddfe
child 58679 9c3209ff7550
equal deleted inserted replaced
58677:13588c901957 58678:9cf78a70fa4f
   100 
   100 
   101 void C2Compiler::compile_method(ciEnv* env, ciMethod* target, int entry_bci, DirectiveSet* directive) {
   101 void C2Compiler::compile_method(ciEnv* env, ciMethod* target, int entry_bci, DirectiveSet* directive) {
   102   assert(is_initialized(), "Compiler thread must be initialized");
   102   assert(is_initialized(), "Compiler thread must be initialized");
   103 
   103 
   104   bool subsume_loads = SubsumeLoads;
   104   bool subsume_loads = SubsumeLoads;
   105   bool do_escape_analysis = DoEscapeAnalysis && !env->should_retain_local_variables();
   105   bool do_escape_analysis = DoEscapeAnalysis && !env->should_retain_local_variables()
       
   106                                              && !env->jvmti_can_get_owned_monitor_info();
   106   bool eliminate_boxing = EliminateAutoBox;
   107   bool eliminate_boxing = EliminateAutoBox;
   107 
   108 
   108   while (!env->failing()) {
   109   while (!env->failing()) {
   109     // Attempt to compile while subsuming loads into machine instructions.
   110     // Attempt to compile while subsuming loads into machine instructions.
   110     Compile C(env, this, target, entry_bci, subsume_loads, do_escape_analysis, eliminate_boxing, directive);
   111     Compile C(env, this, target, entry_bci, subsume_loads, do_escape_analysis, eliminate_boxing, directive);
   450   case vmIntrinsics::_maxD:
   451   case vmIntrinsics::_maxD:
   451     if (!Matcher::match_rule_supported(Op_MaxD)) return false;
   452     if (!Matcher::match_rule_supported(Op_MaxD)) return false;
   452     break;
   453     break;
   453   case vmIntrinsics::_minD:
   454   case vmIntrinsics::_minD:
   454     if (!Matcher::match_rule_supported(Op_MinD)) return false;
   455     if (!Matcher::match_rule_supported(Op_MinD)) return false;
       
   456     break;
       
   457   case vmIntrinsics::_writeback0:
       
   458     if (!Matcher::match_rule_supported(Op_CacheWB)) return false;
       
   459     break;
       
   460   case vmIntrinsics::_writebackPreSync0:
       
   461     if (!Matcher::match_rule_supported(Op_CacheWBPreSync)) return false;
       
   462     break;
       
   463   case vmIntrinsics::_writebackPostSync0:
       
   464     if (!Matcher::match_rule_supported(Op_CacheWBPostSync)) return false;
       
   465     break;
       
   466   case vmIntrinsics::_rint:
       
   467   case vmIntrinsics::_ceil:
       
   468   case vmIntrinsics::_floor:
       
   469     if (!Matcher::match_rule_supported(Op_RoundDoubleMode)) return false;
   455     break;
   470     break;
   456   case vmIntrinsics::_hashCode:
   471   case vmIntrinsics::_hashCode:
   457   case vmIntrinsics::_identityHashCode:
   472   case vmIntrinsics::_identityHashCode:
   458   case vmIntrinsics::_getClass:
   473   case vmIntrinsics::_getClass:
   459   case vmIntrinsics::_dsin:
   474   case vmIntrinsics::_dsin:
   600   case vmIntrinsics::_Class_cast:
   615   case vmIntrinsics::_Class_cast:
   601   case vmIntrinsics::_aescrypt_encryptBlock:
   616   case vmIntrinsics::_aescrypt_encryptBlock:
   602   case vmIntrinsics::_aescrypt_decryptBlock:
   617   case vmIntrinsics::_aescrypt_decryptBlock:
   603   case vmIntrinsics::_cipherBlockChaining_encryptAESCrypt:
   618   case vmIntrinsics::_cipherBlockChaining_encryptAESCrypt:
   604   case vmIntrinsics::_cipherBlockChaining_decryptAESCrypt:
   619   case vmIntrinsics::_cipherBlockChaining_decryptAESCrypt:
       
   620   case vmIntrinsics::_electronicCodeBook_encryptAESCrypt:
       
   621   case vmIntrinsics::_electronicCodeBook_decryptAESCrypt:
   605   case vmIntrinsics::_counterMode_AESCrypt:
   622   case vmIntrinsics::_counterMode_AESCrypt:
   606   case vmIntrinsics::_sha_implCompress:
   623   case vmIntrinsics::_sha_implCompress:
   607   case vmIntrinsics::_sha2_implCompress:
   624   case vmIntrinsics::_sha2_implCompress:
   608   case vmIntrinsics::_sha5_implCompress:
   625   case vmIntrinsics::_sha5_implCompress:
   609   case vmIntrinsics::_digestBase_implCompressMB:
   626   case vmIntrinsics::_digestBase_implCompressMB: