RFR: 8309893: Integrate ReplicateB/S/I/L/F/D nodes to Replicate node

Eric Liu eliu at openjdk.org
Tue Jul 11 14:21:37 UTC 2023


This patch creates ReplicateNode to replace ReplicateB/S/I/L/F/DNode, like other vector nodes introduced recently, e.g., PopulateIndexNode and ReverseVNode, etc. This refers from:
https://mail.openjdk.org/pipermail/panama-dev/2020-April/008484.html

After merging these nodes, code will be easier to maintain. E.g., matching rules can be simplified.

Besides AArch64, this patch tries to keep other ad files as the same before, only supplies some necessary predicate. E.g., for matching rules using ReplicateB before, they are now matching Replicate with a new predicate "Matcher::vector_element_basic_type(n) == T_BYTE". This would be easy for review and lower risks.

[TEST]
x86:     Tested with option "-XX:UseAVX=0/1/2/3".
AArch64: Tested on SVE machine and Neon machine.

Full jtreg passed without new issue.

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

Commit messages:
 - 8309893: Integrate ReplicateB/S/I/L/F/D nodes to Replicate node

Changes: https://git.openjdk.org/jdk/pull/14830/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=14830&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8309893
  Stats: 938 lines in 20 files changed: 171 ins; 391 del; 376 mod
  Patch: https://git.openjdk.org/jdk/pull/14830.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/14830/head:pull/14830

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


More information about the hotspot-compiler-dev mailing list