[jdk18] RFR: 8279076: C2: Bad AD file when matching SqrtF with UseSSE=0

Aleksey Shipilev shade at openjdk.java.net
Tue Dec 21 19:48:42 UTC 2021


See the reproducer and the analysis in the bug. 

The fix is simple: `Matcher::match_rule_supported` should handle the predicates for current `SqrtF` and `SqrtD` match rules.

Additional testing:
 - [x] Linux x86_32 `-XX:UseAVX=0 -XX:UseSSE=0`, new test now passes
 - [x] Linux x86_32 `-XX:UseAVX=0 -XX:UseSSE=1`, new test passes
 - [x] Linux x86_32 `-XX:UseAVX=0 -XX:UseSSE=2`, new test passes
 - [x] Linux x86_32 `-XX:UseAVX=0 -XX:UseSSE=0`, `jdk/incubator/vector/` now passes
 - [x] Linux x86_32 `-XX:UseAVX=0 -XX:UseSSE=1`, `jdk/incubator/vector/` passes
 - [x] Linux x86_32 `-XX:UseAVX=0 -XX:UseSSE=2`, `jdk/incubator/vector/` passes (some unrelated failures)
 - [x] Linux x86_64, new test passes

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

Commit messages:
 - Minor adjustment in test
 - Fix

Changes: https://git.openjdk.java.net/jdk18/pull/60/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk18&pr=60&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8279076
  Stats: 64 lines in 2 files changed: 64 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk18/pull/60.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk18 pull/60/head:pull/60

PR: https://git.openjdk.java.net/jdk18/pull/60


More information about the hotspot-compiler-dev mailing list