implement zextload bool and truncstore bool

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31348 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola 2006-11-01 14:13:27 +00:00
parent 41349c10cb
commit 9dca7ad78f

View File

@ -347,3 +347,13 @@ def : Pat<(extloadi8 IntRegs:$addr),
(LDRB IntRegs:$addr)>;
def : Pat<(extloadi16 IntRegs:$addr),
(LDRH IntRegs:$addr)>;
// zextload bool -> zextload byte
def : Pat<(i32 (zextloadi1 IntRegs:$addr)), (LDRB IntRegs:$addr)>;
def : Pat<(i32 (zextloadi1 IntRegs:$addr)), (LDRB IntRegs:$addr)>;
// truncstore bool -> truncstore byte.
def : Pat<(truncstorei1 IntRegs:$src, IntRegs:$addr),
(STRB IntRegs:$addr, IntRegs:$src)>;
def : Pat<(truncstorei1 IntRegs:$src, IntRegs:$addr),
(STRB IntRegs:$addr, IntRegs:$src)>;