src/hotspot/cpu/ppc/sharedRuntime_ppc.cpp
changeset 52460 f1bb77833b59
parent 51996 84743156e780
child 54847 59ea39bb2809
equal deleted inserted replaced
52459:cbe83e9c2100 52460:f1bb77833b59
  2428   // In order for GC to work, don't clear the last_Java_sp until after blocking.
  2428   // In order for GC to work, don't clear the last_Java_sp until after blocking.
  2429   Label after_transition;
  2429   Label after_transition;
  2430   {
  2430   {
  2431     Label no_block, sync;
  2431     Label no_block, sync;
  2432 
  2432 
  2433     if (UseMembar) {
  2433     // Force this write out before the read below.
  2434       // Force this write out before the read below.
  2434     __ fence();
  2435       __ fence();
       
  2436     } else {
       
  2437       // Write serialization page so VM thread can do a pseudo remote membar.
       
  2438       // We use the current thread pointer to calculate a thread specific
       
  2439       // offset to write to within the page. This minimizes bus traffic
       
  2440       // due to cache line collision.
       
  2441       __ serialize_memory(R16_thread, r_temp_4, r_temp_5);
       
  2442     }
       
  2443 
  2435 
  2444     Register sync_state_addr = r_temp_4;
  2436     Register sync_state_addr = r_temp_4;
  2445     Register sync_state      = r_temp_5;
  2437     Register sync_state      = r_temp_5;
  2446     Register suspend_flags   = r_temp_6;
  2438     Register suspend_flags   = r_temp_6;
  2447 
  2439