174

Early support for Java 18.3 via raw builds · Issue #152 · eclipse/openj9 · GitHu...

 6 years ago
source link: https://github.com/eclipse/openj9/issues/152
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Copy link

Member

JasonFengJ9 commented on Sep 26, 2017

edited

Raw builds will be initial approach to adopt OpenJDK Java 18.3 changes to ensure OpenJ9 is ready for Java 18.3 while maintaining Java 8/9 functionalities. For background info, raw build refers SDK composing process to overlay OpenJ9 binaries at top of OpenJDK binaries along with some configuration file changing. Future approach will be same as existing OpenJ9 build process, i.e., building from OpenJDK and OpenJ9 source, which requires Java 18.3 Extensions for OpenJDK like https://github.com/ibmruntimes/openj9-openjdk-jdk9.

Following changes are proposed for Java 18.3 support:

  1. Adding a Java 18.3 pConfig JAVA18.3 (along with JPP flag Java18.3) which is going to depend on SIDECAR19-SE-B175, i.e., it will be a super-set of current Java 9 configuration;
  2. Using flag Java18.3 to decorate Java code only for Java 18.3 so no changes made to Java 8 & 9;
  3. Introducing a vm shape b1803 (will be set in classlib.properties during SDK composing) to denote the native code only applying to Java 18.3 via runtime checking;
  4. For simplicity purpose, no new J2SE version introduced such as J2SE_18.3. There are two reasons for this, one is that currently vm shape b1803 is sufficient to identify the code only for Java 18.3, the other reason also main one is that OpenJ9 build takes latest J2SE (J2SE_19) because classlib.properties file doesn't present during OpenJ9 build process. A newer J2SE value but not for OpenJ9 Java 9 appears confusing. Again this can be fixed when Java 18.3 Extensions for OpenJDK is available;
  5. Adding support for Java 18.3 only native within jdk.internal.misc.Unsafe, i.e., objectFieldOffset1;
  6. No refactoring for Java 9 b136 etc. within the pull request for this issue. (leave the cleanup in a separated pull request/issue);
  7. Update raw build scripts to accommodate both Java 9 & 18.3 raw builds.

fyi @DanHeidinga @pshipton


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK