Remove the experimental Java-based ahead-of-time (AOT) and just-in-time (JIT) compiler. This compiler has seen little use since its introduction and the effort required to maintain it is significant. Retain the experimental Java-level JVM compiler interface (JVMCI) so that developers can continue to use externally-built versions of the compiler for JIT compilation.
Ahead-of-time compilation (the jaotc tool) was incorporated into JDK 9 as an experimental feature via JEP 295. The jaotc tool uses the Graal compiler, which is itself written in Java, for AOT compilation.
We have seen little use of these experimental features since they were introduced, and the effort required to maintain and enhance them is significant. These features were not included in the JDK 16 builds published by Oracle, and no one complained.