[PATCH] [PPC64LE] Remove unnecessary swaps from lane-insensitive vector computations
hfinkel at anl.gov
hfinkel at anl.gov
Thu Apr 16 14:07:47 PDT 2015
REPOSITORY
rL LLVM
================
Comment at: lib/Target/PowerPC/PPC.td:196
@@ +195,3 @@
+// KillVSXSwapRem - Filter class used to identify instructions that kill the
+// VSX swap removal optimization.
+class KillVSXSwapRem {
----------------
It would be nice to keep this as an intrinsic instruction property. Something that means that the instruction operates on all vector lanes independently. Then special cases that are handled in the code can be handled there without involving the instruction definitions.
================
Comment at: lib/Target/PowerPC/PPCInstrAltivec.td:381
@@ -372,2 +380,3 @@
+let BaseName = "LVSL", SwapFlag = 1 in
def LVSL : XForm_1<31, 6, (outs vrrc:$vD), (ins memrr:$src),
----------------
Why are you setting SwapFlag to 1 only to set it to 0? You can add the flag to the base instruction class if it just needs to be defined first.
http://reviews.llvm.org/D8565
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
More information about the llvm-commits
mailing list