Mercurial > hg > graal-compiler
comparison src/share/vm/opto/matcher.hpp @ 3849:f1c12354c3f7
7074017: Introduce MemBarAcquireLock/MemBarReleaseLock nodes for monitor enter/exit code paths
Summary: replace MemBarAcquire/MemBarRelease nodes on the monitor enter/exit code paths with new MemBarAcquireLock/MemBarReleaseLock nodes
Reviewed-by: kvn, twisti
author | roland |
---|---|
date | Tue, 02 Aug 2011 18:36:40 +0200 |
parents | 1d1603768966 |
children | 95134e034042 |
comparison
equal
deleted
inserted
replaced
3848:a19c671188cb | 3849:f1c12354c3f7 |
---|---|
439 static void soft_match_failure() { | 439 static void soft_match_failure() { |
440 if( SoftMatchFailure ) return; | 440 if( SoftMatchFailure ) return; |
441 else { fatal("SoftMatchFailure is not allowed except in product"); } | 441 else { fatal("SoftMatchFailure is not allowed except in product"); } |
442 } | 442 } |
443 | 443 |
444 // Used by the DFA in dfa_sparc.cpp. Check for a prior FastLock | |
445 // acting as an Acquire and thus we don't need an Acquire here. We | |
446 // retain the Node to act as a compiler ordering barrier. | |
447 static bool prior_fast_lock( const Node *acq ); | |
448 | |
449 // Used by the DFA in dfa_sparc.cpp. Check for a following | |
450 // FastUnLock acting as a Release and thus we don't need a Release | |
451 // here. We retain the Node to act as a compiler ordering barrier. | |
452 static bool post_fast_unlock( const Node *rel ); | |
453 | |
454 // Check for a following volatile memory barrier without an | 444 // Check for a following volatile memory barrier without an |
455 // intervening load and thus we don't need a barrier here. We | 445 // intervening load and thus we don't need a barrier here. We |
456 // retain the Node to act as a compiler ordering barrier. | 446 // retain the Node to act as a compiler ordering barrier. |
457 static bool post_store_load_barrier(const Node* mb); | 447 static bool post_store_load_barrier(const Node* mb); |
458 | 448 |