src/hotspot/share/prims/jvmtiRedefineClasses.cpp
changeset 51697 49e1b21d9878
parent 51668 0a8d4f484987
child 51959 db0c3952de52
equal deleted inserted replaced
51696:f912267934e0 51697:49e1b21d9878
  1229       // recorded into jvmtiThreadState. This data is used to redirect
  1229       // recorded into jvmtiThreadState. This data is used to redirect
  1230       // the_class to scratch_class in the JVM_* functions called by the
  1230       // the_class to scratch_class in the JVM_* functions called by the
  1231       // verifier. Please, refer to jvmtiThreadState.hpp for the detailed
  1231       // verifier. Please, refer to jvmtiThreadState.hpp for the detailed
  1232       // description.
  1232       // description.
  1233       RedefineVerifyMark rvm(the_class, scratch_class, state);
  1233       RedefineVerifyMark rvm(the_class, scratch_class, state);
  1234       Verifier::verify(
  1234       Verifier::verify(scratch_class, true, THREAD);
  1235         scratch_class, Verifier::ThrowException, true, THREAD);
       
  1236     }
  1235     }
  1237 
  1236 
  1238     if (HAS_PENDING_EXCEPTION) {
  1237     if (HAS_PENDING_EXCEPTION) {
  1239       Symbol* ex_name = PENDING_EXCEPTION->klass()->name();
  1238       Symbol* ex_name = PENDING_EXCEPTION->klass()->name();
  1240       log_info(redefine, class, load, exceptions)("verify_byte_codes exception: '%s'", ex_name->as_C_string());
  1239       log_info(redefine, class, load, exceptions)("verify_byte_codes exception: '%s'", ex_name->as_C_string());
  1261 
  1260 
  1262     if (VerifyMergedCPBytecodes) {
  1261     if (VerifyMergedCPBytecodes) {
  1263       // verify what we have done during constant pool merging
  1262       // verify what we have done during constant pool merging
  1264       {
  1263       {
  1265         RedefineVerifyMark rvm(the_class, scratch_class, state);
  1264         RedefineVerifyMark rvm(the_class, scratch_class, state);
  1266         Verifier::verify(scratch_class, Verifier::ThrowException, true, THREAD);
  1265         Verifier::verify(scratch_class, true, THREAD);
  1267       }
  1266       }
  1268 
  1267 
  1269       if (HAS_PENDING_EXCEPTION) {
  1268       if (HAS_PENDING_EXCEPTION) {
  1270         Symbol* ex_name = PENDING_EXCEPTION->klass()->name();
  1269         Symbol* ex_name = PENDING_EXCEPTION->klass()->name();
  1271         log_info(redefine, class, load, exceptions)
  1270         log_info(redefine, class, load, exceptions)