RFR: 8256486: Linux/Windows-x86 builds broken after JDK-8254231
Jorn Vernee
jvernee at openjdk.java.net
Mon Nov 23 13:12:08 UTC 2020
JDK-8254231 breaks the Linux and Windows x86 (32-bit) builds. This contains the needed changes to get it working again.
Perhaps the most interesting change is adding the `JNI_ENTRY_CPP_NOENV` macro. Using just JNI_ENTRY was causing a linkage failure, due to the declaration of the function in the class not having the same linkage specifiers. It looks like we can't just specify C linkage for class member functions.
However, in this case C linkage is not required, so I've added the new macro which doesn't have `extern "C"`. I've also dropped the `JNIEnv*` parameter, since it was not being used, but causing extra work for the caller.
Other than that, it's just about adding default definitions for missing functions, and moving around some code in MacroAssembler to be in the correct `#ifdef` blocks.
Testing: `make images` on Linux and Windows x86_32 platforms.
-------------
Commit messages:
- Remove UnsupportedPlatform test
- Remove unneeded cast
- Remove Stuff that makes the jdk_foreign tests pass
- fix test warnings
- - Fix 32-bit build errors and tests
Changes: https://git.openjdk.java.net/jdk/pull/1266/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1266&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8256486
Stats: 95 lines in 11 files changed: 55 ins; 26 del; 14 mod
Patch: https://git.openjdk.java.net/jdk/pull/1266.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/1266/head:pull/1266
PR: https://git.openjdk.java.net/jdk/pull/1266
More information about the core-libs-dev
mailing list