In C2, a MemBarVolatile is used for both:
- A full fence
- A volatile store-load fence (a store-load fence but only affects volatile accesses)
We should separate them, allowing accesses to be optimized better around volatile accesses.
In addition, on RISC-V, a MemBarVolatile is incorrectly lowered to a store-load fence, which is weaker than a full fence on this architecture.
- A full fence
- A volatile store-load fence (a store-load fence but only affects volatile accesses)
We should separate them, allowing accesses to be optimized better around volatile accesses.
In addition, on RISC-V, a MemBarVolatile is incorrectly lowered to a store-load fence, which is weaker than a full fence on this architecture.
- relates to
-
JDK-8377994 [Umbrella] C2: Optimize memory accesses
-
- Open
-
-
JDK-8379265 C2: Rename MemBarVolatile to MemBarFull
-
- Open
-
- links to
-
Review(master)
openjdk/jdk/30106