Mercurial > hg > icedtea8-forest > hotspot
changeset 10328:2bbcdd69f3ac icedtea-3.12.0pre01
8221220, PR3724: AArch64: Add StoreStore membar explicitly for Volatile Writes in TemplateTable
Reviewed-by: aph
author | qpzhang |
---|---|
date | Mon, 25 Mar 2019 18:48:15 +0800 |
parents | ab373790e0c4 |
children | 9bd019eb90cc |
files | src/cpu/aarch64/vm/templateTable_aarch64.cpp |
diffstat | 1 files changed, 5 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/src/cpu/aarch64/vm/templateTable_aarch64.cpp Fri Apr 12 21:32:29 2019 +0100 +++ b/src/cpu/aarch64/vm/templateTable_aarch64.cpp Mon Mar 25 18:48:15 2019 +0800 @@ -1440,7 +1440,7 @@ { transition(itos, itos); __ negw(r0, r0); - + } void TemplateTable::lneg() @@ -1664,7 +1664,7 @@ __ br(Assembler::HI, done); // install 0 for EQ otherwise ~0 __ csinv(r0, zr, zr, Assembler::EQ); - + } __ bind(done); } @@ -1716,7 +1716,7 @@ } // Normal (non-jsr) branch handling - + // Adjust the bcp by the displacement in r2 __ add(rbcp, rbcp, r2); @@ -2796,7 +2796,7 @@ { Label notVolatile; __ tbz(r5, ConstantPoolCacheEntry::is_volatile_shift, notVolatile); - __ membar(MacroAssembler::StoreLoad); + __ membar(MacroAssembler::StoreLoad | MacroAssembler::StoreStore); __ bind(notVolatile); } } @@ -2934,7 +2934,7 @@ { Label notVolatile; __ tbz(r3, ConstantPoolCacheEntry::is_volatile_shift, notVolatile); - __ membar(MacroAssembler::StoreLoad); + __ membar(MacroAssembler::StoreLoad | MacroAssembler::StoreStore); __ bind(notVolatile); } }