mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-19 10:34:38 +02:00
7120481: storeStore barrier in constructor with final field
Issue storestore barrier before constructor return if the constructor write final field. Reviewed-by: dholmes, jrose, roland, coleenp
This commit is contained in:
parent
a94cb97f4a
commit
3e904497b1
18 changed files with 155 additions and 1 deletions
|
@ -3231,6 +3231,26 @@ void LIR_Assembler::membar_release() {
|
|||
// no-op on TSO
|
||||
}
|
||||
|
||||
void LIR_Assembler::membar_loadload() {
|
||||
// no-op
|
||||
//__ membar(Assembler::Membar_mask_bits(Assembler::loadload));
|
||||
}
|
||||
|
||||
void LIR_Assembler::membar_storestore() {
|
||||
// no-op
|
||||
//__ membar(Assembler::Membar_mask_bits(Assembler::storestore));
|
||||
}
|
||||
|
||||
void LIR_Assembler::membar_loadstore() {
|
||||
// no-op
|
||||
//__ membar(Assembler::Membar_mask_bits(Assembler::loadstore));
|
||||
}
|
||||
|
||||
void LIR_Assembler::membar_storeload() {
|
||||
__ membar(Assembler::Membar_mask_bits(Assembler::StoreLoad));
|
||||
}
|
||||
|
||||
|
||||
// Pack two sequential registers containing 32 bit values
|
||||
// into a single 64 bit register.
|
||||
// src and src->successor() are packed into dst
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue