[PATCH] D19825: Power9 - Add exploitation of vector load and store that do not require swaps
Chuang-Yu Cheng via llvm-commits
llvm-commits at lists.llvm.org
Thu May 19 20:54:19 PDT 2016
cycheng added inline comments.
================
Comment at: lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp:36
@@ -35,1 +35,3 @@
+// Useful for testing purposes. Prints vs{31-63} as v{0-31} respectively.
+static cl::opt<bool>
----------------
It's good to have this option : )
================
Comment at: test/CodeGen/PowerPC/swaps-le-1.ll:105
@@ -101,1 +104,3 @@
+; CHECK-P9-NOT: xxpermdi
+; CHECK-P9-NOT: xxswapd
----------------
; CHECK-P9-NOT: xxswapd
Looks like it has been covered by "-implicit-check-not xxswapd"?
Or this is intentional?
================
Comment at: test/CodeGen/PowerPC/vsx-p9.ll:103
@@ +102,3 @@
+; CHECK: bl sink
+ %16 = load <1 x i128>, <1 x i128>* @uxa, align 16
+ %17 = load <1 x i128>, <1 x i128>* @uxb, align 16
----------------
I'm curious about that we don't add pattern match of i128 type for lxvs in PPCInstrVSX.td, but why it finally gets matched to lxvx?
================
Comment at: test/CodeGen/PowerPC/vsx_shuffle_le.ll:81
@@ +80,3 @@
+
+; CHECK-P9-LABEL: @test10
+; CHECK-P9: lxvx 0, 0, 3
----------------
So looks like use 'lxvd2x' can be more benefit?
If it is true, then, of course we don't have to handle it in current milestone, just a todo in future.
Repository:
rL LLVM
http://reviews.llvm.org/D19825
More information about the llvm-commits
mailing list