RFR: Test @requires should check what GC is enabled at runtime

Aleksey Shipilev shade at redhat.com
Fri Nov 30 14:58:03 UTC 2018


http://cr.openjdk.java.net/~shade/shenandoah/requires-runtime/webrev.01/

This rewires our @requires handling again! @requires is messy, and new filtering code is based on
understanding that:
 a) "vm.gc.Shenandoah" says "Shenandoah is available in builds, and can be selected"
 b) "vm.gc == null" says "...and we are running with default GC"
 c) "vm.gc = Shenandoah" says "...or user specified -XX:+UseShenandoahGC in jtreg opts"

...which makes all tests that set -XX:+UseShenandoahGC gain the filter like:
 @requires vm.gc.Shenandoah & (vm.gc == "null" | vm.gc == "Shenandoah")

Testing: hotspot_gc_shenandoah with:
  - -shenandoahgc build
  - +shenandoahgc build
  - +shenandoahgc build, TEST_VM_OPTS="-XX:+UseShenandoahGC"
  - +shenandoahgc build, TEST_VM_OPTS="-XX:+UseParallelGC"

Thanks,
-Aleksey



More information about the shenandoah-dev mailing list