-
Bug
-
Resolution: Unresolved
-
P3
-
21
Currently, Long/Integer.compareUnsigned return wrong value in SLP, and seems no existing tests cover the issue.
check https://github.com/openjdk/jdk/pull/27942#discussion_r2454610981 for more information.
====== following copied fromJDK-8370454 ======
Currently, in SLP if we support transformation from (Bool + CmpU + CMove) to (VectorMaskCmp + VectorBlend), the unsigned comparison information is lost, it's in CmpU, but current code only check Bool for the information. For details please check code at `SuperWordVTransformBuilder::make_vector_vtnode_for_pack` and `PackSet::get_bool_test`.
This loss of unsigned comparison information blocks the optimization proposed in https://github.com/openjdk/jdk/pull/25336 and https://github.com/openjdk/jdk/pull/25341.
check https://github.com/openjdk/jdk/pull/27942#discussion_r2454610981 for more information.
====== following copied from
Currently, in SLP if we support transformation from (Bool + CmpU + CMove) to (VectorMaskCmp + VectorBlend), the unsigned comparison information is lost, it's in CmpU, but current code only check Bool for the information. For details please check code at `SuperWordVTransformBuilder::make_vector_vtnode_for_pack` and `PackSet::get_bool_test`.
This loss of unsigned comparison information blocks the optimization proposed in https://github.com/openjdk/jdk/pull/25336 and https://github.com/openjdk/jdk/pull/25341.
- caused by
-
JDK-8306302 C2 Superword fix: use VectorMaskCmp and VectorBlend instead of CMoveVF/D
-
- Resolved
-
- duplicates
-
JDK-8370454 C2 SuperWord: unsigned comparison information is lost for VectorMaskCmp
-
- Closed
-
- links to
-
Review(master) openjdk/jdk/27942