src/hotspot/share/interpreter/bytecodeInterpreter.cpp
changeset 47906 0ad8a90268a7
parent 47687 fb290fd1f9d4
child 48706 69d1a1590485
child 48826 c4d9d1b08e2e
equal deleted inserted replaced
47901:4c42aa431f40 47906:0ad8a90268a7
    97   since the JavaCalls::call_helper invocation that initiated the chain.
    97   since the JavaCalls::call_helper invocation that initiated the chain.
    98   There really shouldn't be any handles remaining to trash but this is cheap
    98   There really shouldn't be any handles remaining to trash but this is cheap
    99   in relation to a safepoint.
    99   in relation to a safepoint.
   100 */
   100 */
   101 #define SAFEPOINT                                                                 \
   101 #define SAFEPOINT                                                                 \
   102     if ( SafepointSynchronize::is_synchronizing()) {                              \
   102     {                                                                             \
   103         {                                                                         \
   103        /* zap freed handles rather than GC'ing them */                            \
   104           /* zap freed handles rather than GC'ing them */                         \
   104        HandleMarkCleaner __hmc(THREAD);                                           \
   105           HandleMarkCleaner __hmc(THREAD);                                        \
   105        CALL_VM(SafepointMechanism::block_if_requested(THREAD), handle_exception); \
   106         }                                                                         \
       
   107         CALL_VM(SafepointSynchronize::block(THREAD), handle_exception);           \
       
   108     }
   106     }
   109 
   107 
   110 /*
   108 /*
   111  * VM_JAVA_ERROR - Macro for throwing a java exception from
   109  * VM_JAVA_ERROR - Macro for throwing a java exception from
   112  * the interpreter loop. Should really be a CALL_VM but there
   110  * the interpreter loop. Should really be a CALL_VM but there