Add truncstore i1 patterns.
authorEvan Cheng <evan.cheng@apple.com>
Fri, 13 Jan 2006 21:45:19 +0000 (21:45 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Fri, 13 Jan 2006 21:45:19 +0000 (21:45 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25296 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86InstrInfo.td

index 12d1333c2edc4fbbff466b9da3f10bdf64d4de3a..1e5cd313c8512f79b7d7384c5589fc1e16975781 100644 (file)
@@ -2988,6 +2988,11 @@ def : Pat<(X86subflag R32:$src1, imm:$src2),
 def : Pat<(X86subflag R32:$src1, i32immSExt8:$src2),
           (SUB32ri8 R32:$src1, i32immSExt8:$src2)>;
 
+def : Pat<(truncstore (i8 imm:$src), addr:$dst, i1), 
+          (MOV8mi addr:$dst, imm:$src)>;
+def : Pat<(truncstore R8:$src, addr:$dst, i1), 
+          (MOV8mr addr:$dst, R8:$src)>;
+
 // {s|z}extload bool -> {s|z}extload byte
 def : Pat<(sextloadi16i1 addr:$src), (MOVSX16rm8 addr:$src)>;
 def : Pat<(sextloadi32i1 addr:$src), (MOVSX32rm8 addr:$src)>;