RFR: 8257165: C2: Improve box elimination for vector masks and shuffles
Vladimir Ivanov
vlivanov at openjdk.java.net
Thu Nov 26 18:20:07 UTC 2020
Introduce VectorMask/VectorShuffle-specific transformations to reduce reboxing by eliminating `VectorBox`/`VectorUnbox` pairs.
It's a trivial transformation when the types on both ends perfectly match, but when type mismatch occurs there are additional steps needed (see `PhaseVector::expand_vunbox_node()` for more details on vector unboxing) .
Testing:
- `jdk/incubator/vector` tests w/ different flag combinations (no flags, `-Xcomp`, `-XX:+DeoptimizeALot`);
- tier1-4
-------------
Commit messages:
- Improve box elimination for vector masks and vector shuffles.
Changes: https://git.openjdk.java.net/jdk/pull/1457/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1457&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8257165
Stats: 103 lines in 3 files changed: 73 ins; 13 del; 17 mod
Patch: https://git.openjdk.java.net/jdk/pull/1457.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/1457/head:pull/1457
PR: https://git.openjdk.java.net/jdk/pull/1457
More information about the hotspot-compiler-dev
mailing list