[PATCH] D101605: [PowerPC] Remove extra swap for extract+vperm on LE
Qiu Chaofan via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu May 6 22:52:48 PDT 2021
This revision was automatically updated to reflect the committed changes.
Closed by commit rGf7294ac8093a: [PowerPC] Remove extra swap for extract+vperm on LE (authored by qiucf).
Changed prior to commit:
https://reviews.llvm.org/D101605?vs=341800&id=343586#toc
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D101605/new/
https://reviews.llvm.org/D101605
Files:
llvm/lib/Target/PowerPC/PPCInstrVSX.td
llvm/test/CodeGen/PowerPC/vec_extract_p9.ll
Index: llvm/test/CodeGen/PowerPC/vec_extract_p9.ll
===================================================================
--- llvm/test/CodeGen/PowerPC/vec_extract_p9.ll
+++ llvm/test/CodeGen/PowerPC/vec_extract_p9.ll
@@ -182,10 +182,9 @@
; CHECK-LE-NEXT: addi 3, 3, .LCPI9_0 at toc@l
; CHECK-LE-NEXT: lxvx 36, 0, 3
; CHECK-LE-NEXT: addis 3, 2, .LCPI9_1 at toc@ha
-; CHECK-LE-NEXT: lfs 1, .LCPI9_1 at toc@l(3)
-; CHECK-LE-NEXT: vperm 2, 2, 3, 4
-; CHECK-LE-NEXT: xxswapd 0, 34
-; CHECK-LE-NEXT: xsadddp 1, 0, 1
+; CHECK-LE-NEXT: lfs 0, .LCPI9_1 at toc@l(3)
+; CHECK-LE-NEXT: vperm 2, 3, 2, 4
+; CHECK-LE-NEXT: xsadddp 1, 34, 0
; CHECK-LE-NEXT: blr
;
; CHECK-BE-LABEL: test10:
Index: llvm/lib/Target/PowerPC/PPCInstrVSX.td
===================================================================
--- llvm/lib/Target/PowerPC/PPCInstrVSX.td
+++ llvm/lib/Target/PowerPC/PPCInstrVSX.td
@@ -2938,6 +2938,9 @@
(SUBREG_TO_REG (i64 1), $A, sub_64), 0),
(SUBREG_TO_REG (i64 1), $A, sub_64)>;
+def : Pat<(f64 (extractelt (v2f64 (bitconvert (v16i8
+ (PPCvperm v16i8:$A, v16i8:$B, v16i8:$C)))), 0)),
+ (f64 (EXTRACT_SUBREG (VPERM $B, $A, $C), sub_64))>;
def : Pat<(f64 (extractelt v2f64:$S, 0)),
(f64 (EXTRACT_SUBREG (XXPERMDI $S, $S, 2), sub_64))>;
def : Pat<(f64 (extractelt v2f64:$S, 1)),
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D101605.343586.patch
Type: text/x-patch
Size: 1400 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210507/f5e65a8a/attachment.bin>
More information about the llvm-commits
mailing list