[lworld] RFR: 8326595: [lworld] Bootstrap VM transition to JEP 401 model
Frederic Parain
fparain at openjdk.org
Fri Feb 23 19:06:15 UTC 2024
Bootstrapping transition to JEP 401 model.
A lot of things are broken, but at least the build works on most platforms, the VM can boot and execute some JEP 401 class files in interpreted mode. The ability to run code with value classes is still limited because the VM depends on some JDK core classes that need to be updated too (reflection and substitutability test).
Transition changes include:
- Accepting new class file format (not rejecting correct JEP 401 class files), changes class hierarchy rules, class flags meaning, changes verifier rules
- Update new and putfield bytecodes in interpreter to support new construction sequence
- Runtime tests fixes
Cleanup changes include:
- Removal of support of Q-descriptors (and Q-desc bit in constant pool)
- Removal of support of old class flags (ACC_VALUE)
- Removal of aconst_init and withfield bytecodes from the interpreter and C1
- Removal of support for secondary mirror
- Removal of support for primitive classes
- Removal of support for value factories (<vnew>)
- Partial removal of T_PRIMITIVE_OBJECT
-------------
Commit messages:
- Bootstrap transition to JEP 401 model
Changes: https://git.openjdk.org/valhalla/pull/1017/files
Webrev: https://webrevs.openjdk.org/?repo=valhalla&pr=1017&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8326595
Stats: 2101 lines in 161 files changed: 95 ins; 1647 del; 359 mod
Patch: https://git.openjdk.org/valhalla/pull/1017.diff
Fetch: git fetch https://git.openjdk.org/valhalla.git pull/1017/head:pull/1017
PR: https://git.openjdk.org/valhalla/pull/1017
More information about the valhalla-dev
mailing list