RFR: Fix Minimal VM build failures

Aleksey Shipilev shade at openjdk.java.net
Mon Sep 27 11:04:12 UTC 2021


Minimal VM configs have no C2 and no JVMTI. New Loom code fails the Minimal VM builds because of this. See for example GHA runs: https://github.com/shipilev/loom/runs/3717293969?check_suite_focus=true

C2 needs just a little bit of protection when reaching to `DerivedPointersTable`.

JVMTI needs a bit more work. `jvmtiExport` and `jvmtiThreadState` headers are usually included even with JVMTI turned off, but `.cpp` would not be compiled without JVMTI. Therefore, non-trivial implementations should go into `.cpp`. Plus, some of the paths that call the actual methods declared but not implemented without JVMTI should be protected with `INCLUDE_JVMTI`.

Additional testing:
 - [x] Linux x86_64 server, `tier1_loom` still passes (includes JVMTI tests)
 - [x] Linux x86_64 minimal now builds, runs `tier1_loom` (cannot pass JVMTI tests without JVMTI)

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

Commit messages:
 - Fix

Changes: https://git.openjdk.java.net/loom/pull/67/files
 Webrev: https://webrevs.openjdk.java.net/?repo=loom&pr=67&range=00
  Stats: 41 lines in 6 files changed: 33 ins; 3 del; 5 mod
  Patch: https://git.openjdk.java.net/loom/pull/67.diff
  Fetch: git fetch https://git.openjdk.java.net/loom pull/67/head:pull/67

PR: https://git.openjdk.java.net/loom/pull/67


More information about the loom-dev mailing list