RFR: 8309697: [TESTBUG] Remove "@requires vm.flagless" from jtreg vectorization tests [v5]
Pengfei Li
pli at openjdk.org
Mon Aug 28 08:30:07 UTC 2023
> This patch removes `@require vm.flagless` annotations from HotSpot jtreg tests in `compiler/vectorization/runner`. All jtreg cases in this folder are invoked by test driver `VectorizationTestRunner.java` which checks both correctness and vectorizability (IR) for each test method. We added flagless requirement before because extra flags may mess with compiler control in the test driver for correctness check. But `flagless` has a side effect that it makes tests with extra flags skipped. So we propose to get rid of it now.
>
> To adapt the removal of `@require vm.flagless`, a few checks are added in the test driver to skip the correctness check if extra flags make the compiler control not work. This patch also moves previously hard-coded flag `-XX:-OptimizeFill` in the test driver to conditions in IR checks.
>
> Tested various of compiler control related VM flags on x86 and AArch64.
Pengfei Li has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains five additional commits since the last revision:
- Merge branch 'master' into flagless
- Remove useless conditions and imports
- Revert to the 1st commit and re-address comments
- Re-work correctness check to allow "-Xbatch"
- 8309697: [TESTBUG] Remove "@requires vm.flagless" from jtreg vectorization tests
This patch removes `@require vm.flagless` annotations from HotSpot jtreg
tests in `compiler/vectorization/runner`. All jtreg cases in this folder
are invoked by test driver `VectorizationTestRunner.java` which checks
both correctness and vectorizability (IR) for each test method. We added
flagless requirement before because extra flags may mess with compiler
control in the test driver for correctness check. But `flagless` has a
side effect that it makes tests with extra flags skipped. So we propose
to get rid of it now.
To adapt the removal of `@require vm.flagless`, a few checks are added
in the test driver to skip the correctness check if extra flags make the
compiler control not work. This patch also moves previously hard-coded
flag `-XX:-OptimizeFill` in the test driver to conditions in IR checks.
Tested various of compiler control related VM flags on x86 and AArch64.
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/15011/files
- new: https://git.openjdk.org/jdk/pull/15011/files/00d48cc8..42de3da5
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=15011&range=04
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=15011&range=03-04
Stats: 41171 lines in 1597 files changed: 22101 ins; 8029 del; 11041 mod
Patch: https://git.openjdk.org/jdk/pull/15011.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/15011/head:pull/15011
PR: https://git.openjdk.org/jdk/pull/15011
More information about the hotspot-compiler-dev
mailing list