Hi Igor,

On 8/01/2021 6:36 am, Igor Veresov wrote:
This change removes the legacy compilation policy and an emulation mode to the 
tiered policy to simulate the old behavior with ```-XX:-TieredCompilation```. 
The change removed a bunch of interpreter code, devirtualizes the compilation 
policy API, adds a consistent way to query compiler configuration with the new 
```CompilerConfig``` API.

Can you clarify, for non-compiler folk, what all the alternative configs actually mean now. I'm a bit confused by this definition:

define_pd_global(bool, TieredCompilation, COMPILER1_PRESENT(true) NOT_COMPILER1(false));

as I expected tiered compilation to require COMPILER1 and COMPILER2.

Also I see interpreter code that used to be guarded by TieredCompilation now being executed unconditionally, which seems to assume C1 or C2 must be present?

Overall it is a big change to digest, but after skimming it looks like a few of the refactorings could have been applied in a layered fashion using multiple commits to make it easier to review.

Thanks,
David
-----

I've tested this with hs-tier{1,2,3,4,5}. And also made sure it builds and 
works with C1/C2-Graal/AOT being enabled/disabled.

Since there are platform-specific changes I would greatly appreciate some help 
from the maintainers of the specific ports to verify the build and run basic 
smoke tests. I've already tested x64 and aarch64. Thanks!

-------------

Commit messages:
  - Fix copyright years
  - Remove legacy compilation policy.

Changes: https://git.openjdk.java.net/jdk/pull/1985/files
  Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1985&range=00
   Issue: https://bugs.openjdk.java.net/browse/JDK-8251462
   Stats: 5285 lines in 95 files changed: 1481 ins; 2979 del; 825 mod
   Patch: https://git.openjdk.java.net/jdk/pull/1985.diff
   Fetch: git fetch https://git.openjdk.java.net/jdk pull/1985/head:pull/1985

PR: https://git.openjdk.java.net/jdk/pull/1985

Reply via email to