RFR: 8282528: AArch64: Incorrect replicate2L_zero rule [v4]

Eric Liu eliu at openjdk.java.net
Tue Apr 12 10:48:27 UTC 2022


> This patch fixes the wrong matching rule of replicate2L_zero. It was
> matched "ReplicateI" by mistake so that long immediates(not only zero)
> had to be moved to register first and matched to replicate2L finally. To
> fix this trivial bug, this patch fixes the typo and extends the rule of
> replicate2L_zero to replicate2L_imm, which now supports all possible
> long immediate values.
> 
> The final code changes are shown as below:
> 
> replicate2L_imm:
> 
>         mov   x13, #0xff
>         movk  x13, #0xff, lsl #16
>         movk  x13, #0xff, lsl #32
>         dup   v16.2d, x13
> 
>         =>
> 
>         movi  v16.2d, #0xff00ff00ff
> 
> [Test]
> test/jdk/jdk/incubator/vector, test/hotspot/jtreg/compiler/vectorapi
> passed without failure.

Eric Liu has updated the pull request incrementally with one additional commit since the last revision:

  remove ifelse which is triggered by empty args
  
  Change-Id: I461e62495c7abc0f84ef1f66443f6bcf7adbeff0

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/7939/files
  - new: https://git.openjdk.java.net/jdk/pull/7939/files/19afc185..fb250776

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=7939&range=03
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=7939&range=02-03

  Stats: 34 lines in 1 file changed: 6 ins; 0 del; 28 mod
  Patch: https://git.openjdk.java.net/jdk/pull/7939.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/7939/head:pull/7939

PR: https://git.openjdk.java.net/jdk/pull/7939


More information about the hotspot-dev mailing list