src/cpu/x86/vm/templateInterpreter_x86_64.cpp

changeset 4873
e961c11b85fe
parent 4727
0094485b46c7
child 4936
aeaca88565e6
     1.1 --- a/src/cpu/x86/vm/templateInterpreter_x86_64.cpp	Tue Apr 02 09:30:07 2013 +0200
     1.2 +++ b/src/cpu/x86/vm/templateInterpreter_x86_64.cpp	Wed Apr 03 11:12:57 2013 -0700
     1.3 @@ -1079,15 +1079,8 @@
     1.4    __ call(rax);
     1.5    // result potentially in rax or xmm0
     1.6  
     1.7 -  // Depending on runtime options, either restore the MXCSR
     1.8 -  // register after returning from the JNI Call or verify that
     1.9 -  // it wasn't changed during -Xcheck:jni.
    1.10 -  if (RestoreMXCSROnJNICalls) {
    1.11 -    __ ldmxcsr(ExternalAddress(StubRoutines::x86::mxcsr_std()));
    1.12 -  }
    1.13 -  else if (CheckJNICalls) {
    1.14 -    __ call(RuntimeAddress(CAST_FROM_FN_PTR(address, StubRoutines::x86::verify_mxcsr_entry())));
    1.15 -  }
    1.16 +  // Verify or restore cpu control state after JNI call
    1.17 +  __ restore_cpu_control_state_after_jni();
    1.18  
    1.19    // NOTE: The order of these pushes is known to frame::interpreter_frame_result
    1.20    // in order to extract the result of a method call. If the order of these

mercurial