Following the [JDK-8255796](https://bugs.openjdk.java.net/browse/JDK-8255796) improvement that ditched the inline contiguous alloc use from Zero, we can now rely on GC interface to hook the GCs properly. G1 and Shenandoah are a bit special here, because they require special `Reference.get` handling.
Note that it does not change the default GC for Zero, because Zero is implicitly `NeverActAsServerMachine`, which still selects Serial GC by default. After this change, Zero users can opt-in to G1 or Shenandoah. Additional testing: - [x] Linux x86_64 Zero fastdebug `hotspot_gc_shenandoah` (some lingering failures about non-enabled compressed oops) - [ ] Linux x86_64 Zero fastdebug `tier1` with `-XX:+UseG1GC` ------------- Commit messages: - Remove TODO - 8256497: Zero: enable G1 and Shenandoah GCs Changes: https://git.openjdk.java.net/jdk/pull/1268/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1268&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8256497 Stats: 72 lines in 5 files changed: 54 ins; 16 del; 2 mod Patch: https://git.openjdk.java.net/jdk/pull/1268.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/1268/head:pull/1268 PR: https://git.openjdk.java.net/jdk/pull/1268