RFR: 8302518: Add missing Op_RoundDoubleMode in VectorNode::vector_operands()

Pengfei Li pli at openjdk.org
Thu Feb 16 08:29:13 UTC 2023


This is a one-line fix.

`VectorNode::vector_operands()` is a C2 function used to get a half-open range of `[start, end)` defining which operands are vectors to process. `Op_RoundDoubleMode` has two operands but only the 1st one is a vector. Its 2nd operand is the rounding mode. Missing this op results in its 2nd operand treated as a vector. It is fortunate that it hasn't caused any issue yet as the code follows just treated the 2nd input as an immediate to replicate later. If we add some check like `n->is_Vector()` for the vectorized node then, there will be issues. We should fix this potential problem.

Tested tier1.

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

Commit messages:
 - 8302518: Add missing Op_RoundDoubleMode in VectorNode::vector_operands()

Changes: https://git.openjdk.org/jdk/pull/12584/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=12584&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8302518
  Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/12584.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/12584/head:pull/12584

PR: https://git.openjdk.org/jdk/pull/12584


More information about the hotspot-compiler-dev mailing list