-
Enhancement
-
Resolution: Unresolved
-
P4
-
21
-
aarch64
-
os_x
https://developer.apple.com/documentation/apple-silicon/porting-just-in-time-compilers-to-apple-silicon
It prevents memory regions to be writable and executable at the same time. Therefore, we need to acquire WXWrite when we want to write to the code cache.
At the moment, the write lock is acquired by
```
MACOS_AARCH64_ONLY(ThreadWXEnable __wx(WXWrite, thread));
```
Acquiring write lock can be expensive and is too coarse grained at the moment.
Check all the write lock if they can be move down in the call hierarchy, especially the ones in `interfaceSupport.inline.hpp`
In https://bugs.openjdk.org/browse/JDK-8302736 WXWrite locks caused a major performance regression and was resolved by moving one of the locks already down.
- relates to
-
JDK-8329748 Change default value of AssertWXAtThreadSync to true
-
- Resolved
-
-
JDK-8253816 Support macOS W^X
-
- Resolved
-
-
JDK-8302736 Major performance regression in Math.log on aarch64
-
- Resolved
-
-
JDK-8316392 compiler/interpreter/TestVerifyStackAfterDeopt.java failed with SIGBUS in PcDescContainer::find_pc_desc_internal
-
- Closed
-
-
JDK-8331978 AARCH64: don't use MAP_JIT for stubs like f2hf and hf2f
-
- Open
-
-
JDK-8328306 Allow VM to run with X memory execute by default
-
- In Progress
-
-
JDK-8263492 [macos_aarch64] Consider moving W^X state to JavaThread
-
- Closed
-
-
JDK-8330171 Lazy W^X switch implementation
-
- Closed
-