diff options
| author | Arnold Schwaighofer <aschwaighofer@apple.com> | 2013-07-05 18:57:49 +0000 |
|---|---|---|
| committer | Arnold Schwaighofer <aschwaighofer@apple.com> | 2013-07-05 18:57:49 +0000 |
| commit | fe3b2995aa38b25bada9fa2e850590b3988668b5 (patch) | |
| tree | c911753ad5f9be8212b139e980975c602593cf5c /lib/Target/ARM | |
| parent | ffd3bb8f0d875f4aae3097660f973b1e7512ee05 (diff) | |
| download | external_llvm-fe3b2995aa38b25bada9fa2e850590b3988668b5.zip external_llvm-fe3b2995aa38b25bada9fa2e850590b3988668b5.tar.gz external_llvm-fe3b2995aa38b25bada9fa2e850590b3988668b5.tar.bz2 | |
ARM: Add a pack pattern for matching arithmetic shift right
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185714 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM')
| -rw-r--r-- | lib/Target/ARM/ARMInstrInfo.td | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMInstrInfo.td b/lib/Target/ARM/ARMInstrInfo.td index 75d3de9..9eba553 100644 --- a/lib/Target/ARM/ARMInstrInfo.td +++ b/lib/Target/ARM/ARMInstrInfo.td @@ -4017,6 +4017,9 @@ def : ARMV6Pat<(or (and GPRnopc:$src1, 0xFFFF0000), (srl GPRnopc:$src2, imm16:$sh)), (PKHTB GPRnopc:$src1, GPRnopc:$src2, imm16:$sh)>; def : ARMV6Pat<(or (and GPRnopc:$src1, 0xFFFF0000), + (sra GPRnopc:$src2, imm16_31:$sh)), + (PKHTB GPRnopc:$src1, GPRnopc:$src2, imm16_31:$sh)>; +def : ARMV6Pat<(or (and GPRnopc:$src1, 0xFFFF0000), (and (srl GPRnopc:$src2, imm1_15:$sh), 0xFFFF)), (PKHTB GPRnopc:$src1, GPRnopc:$src2, imm1_15:$sh)>; |
