V_SETALLONES is an integer instruction.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Tue, 30 Mar 2010 22:46:55 +0000 (22:46 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Tue, 30 Mar 2010 22:46:55 +0000 (22:46 +0000)
Since it is just a pxor in disguise, we should probably expand it to a full
polymorphic triple.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99953 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86InstrSSE.td

index e207598144140100c177a3628bb768ac5c976a65..f74ca9dd7bf3cef9f547a11a7048958d0c1e47a1 100644 (file)
@@ -2424,7 +2424,7 @@ def : Pat<(membarrier (i8 imm), (i8 imm), (i8 imm), (i8 imm),
 // We set canFoldAsLoad because this can be converted to a constant-pool
 // load of an all-ones value if folding it would be beneficial.
 let isReMaterializable = 1, isAsCheapAsAMove = 1, canFoldAsLoad = 1,
-    isCodeGenOnly = 1 in
+    isCodeGenOnly = 1, ExeDomain = SSEPackedInt in
   // FIXME: Change encoding to pseudo.
   def V_SETALLONES : PDI<0x76, MRMInitReg, (outs VR128:$dst), (ins), "",
                          [(set VR128:$dst, (v4i32 immAllOnesV))]>;