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