mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-20 11:04:34 +02:00
8028515: PPPC64 (part 113.2): opto: Introduce LoadFence/StoreFence
Use new nodes for loadFence/storeFence intrinsics in C2. Reviewed-by: kvn, dholmes
This commit is contained in:
parent
b4ded0bc2e
commit
fe89766184
11 changed files with 135 additions and 21 deletions
|
@ -648,6 +648,8 @@ bool InstructForm::is_wide_memory_kill(FormDict &globals) const {
|
|||
if( strcmp(_matrule->_opType,"MemBarReleaseLock") == 0 ) return true;
|
||||
if( strcmp(_matrule->_opType,"MemBarAcquireLock") == 0 ) return true;
|
||||
if( strcmp(_matrule->_opType,"MemBarStoreStore") == 0 ) return true;
|
||||
if( strcmp(_matrule->_opType,"StoreFence") == 0 ) return true;
|
||||
if( strcmp(_matrule->_opType,"LoadFence") == 0 ) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
@ -4054,13 +4056,15 @@ bool MatchRule::is_ideal_fastlock() const {
|
|||
bool MatchRule::is_ideal_membar() const {
|
||||
if( !_opType ) return false;
|
||||
return
|
||||
!strcmp(_opType,"MemBarAcquire" ) ||
|
||||
!strcmp(_opType,"MemBarRelease" ) ||
|
||||
!strcmp(_opType,"MemBarAcquire") ||
|
||||
!strcmp(_opType,"MemBarRelease") ||
|
||||
!strcmp(_opType,"MemBarAcquireLock") ||
|
||||
!strcmp(_opType,"MemBarReleaseLock") ||
|
||||
!strcmp(_opType,"MemBarVolatile" ) ||
|
||||
!strcmp(_opType,"MemBarCPUOrder" ) ||
|
||||
!strcmp(_opType,"MemBarStoreStore" );
|
||||
!strcmp(_opType,"LoadFence" ) ||
|
||||
!strcmp(_opType,"StoreFence") ||
|
||||
!strcmp(_opType,"MemBarVolatile") ||
|
||||
!strcmp(_opType,"MemBarCPUOrder") ||
|
||||
!strcmp(_opType,"MemBarStoreStore");
|
||||
}
|
||||
|
||||
bool MatchRule::is_ideal_loadPC() const {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue