From 9dca7ad78f80328abb95b3bd8a739c02a5496477 Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Wed, 1 Nov 2006 14:13:27 +0000 Subject: [PATCH] implement zextload bool and truncstore bool git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31348 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/ARM/ARMInstrInfo.td | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lib/Target/ARM/ARMInstrInfo.td b/lib/Target/ARM/ARMInstrInfo.td index f2100e11ca4..fce25c9598b 100644 --- a/lib/Target/ARM/ARMInstrInfo.td +++ b/lib/Target/ARM/ARMInstrInfo.td @@ -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)>;