aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorJoel Jones <joel_k_jones@apple.com>2012-06-05 00:47:21 +0000
committerJoel Jones <joel_k_jones@apple.com>2012-06-05 00:47:21 +0000
commite061053051a8eaafe020b2d0a81f9e4ee910c1d0 (patch)
treebf8244882f68b73ee999a02bbc9b6978211d4841 /lib
parentdd52bf2ed806229732115400b2a060204f24dea3 (diff)
downloadexternal_llvm-e061053051a8eaafe020b2d0a81f9e4ee910c1d0.zip
external_llvm-e061053051a8eaafe020b2d0a81f9e4ee910c1d0.tar.gz
external_llvm-e061053051a8eaafe020b2d0a81f9e4ee910c1d0.tar.bz2
Revert commit r157966
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157972 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Target/ARM/ARMInstrThumb2.td24
1 files changed, 0 insertions, 24 deletions
diff --git a/lib/Target/ARM/ARMInstrThumb2.td b/lib/Target/ARM/ARMInstrThumb2.td
index f7b8a83..c309f84 100644
--- a/lib/Target/ARM/ARMInstrThumb2.td
+++ b/lib/Target/ARM/ARMInstrThumb2.td
@@ -62,14 +62,6 @@ def t2_so_imm_neg_XFORM : SDNodeXForm<imm, [{
return CurDAG->getTargetConstant(-((int)N->getZExtValue()), MVT::i32);
}]>;
-// so_imm_not_sext_XFORM - Return a so_imm value packed into the format
-// described for so_imm_not_sext def below.
-def t2_so_imm_not_sext_XFORM : SDNodeXForm<imm, [{
- APInt apIntN = N->getAPIntValue();
- unsigned N16bitSignExt = apIntN.trunc(16).sext(32).getZExtValue();
- return CurDAG->getTargetConstant(~N16bitSignExt, MVT::i32);
-}]>;
-
// t2_so_imm - Match a 32-bit immediate operand, which is an
// 8-bit immediate rotated by an arbitrary number of bits, or an 8-bit
// immediate splatted into multiple bytes of the word.
@@ -94,17 +86,6 @@ def t2_so_imm_not : Operand<i32>, PatLeaf<(imm), [{
let ParserMatchClass = t2_so_imm_not_asmoperand;
}
-// t2_so_imm_not_sext - Match an immediate that when zero-extended
-// from 16-bits to 32-bits is a complement of a t2_so_imm.
-def t2_so_imm_not_sext : Operand<i32>, PatLeaf<(imm), [{
- APInt apIntN = N->getAPIntValue();
- if (!apIntN.isIntN(16)) return false;
- unsigned N16bitSignExt = apIntN.trunc(16).sext(32).getZExtValue();
- return ARM_AM::getT2SOImmVal(~N16bitSignExt) != -1;
- }], t2_so_imm_not_sext_XFORM> {
- let ParserMatchClass = t2_so_imm_not_asmoperand;
-}
-
// t2_so_imm_neg - Match an immediate that is a negation of a t2_so_imm.
def t2_so_imm_neg_asmoperand : AsmOperandClass { let Name = "T2SOImmNeg"; }
def t2_so_imm_neg : Operand<i32>, PatLeaf<(imm), [{
@@ -2351,11 +2332,6 @@ let AddedComplexity = 1 in
def : T2Pat<(and rGPR:$src, t2_so_imm_not:$imm),
(t2BICri rGPR:$src, t2_so_imm_not:$imm)>;
-// so_imm_not_sext is needed instead of so_imm_not, as the value of imm
-// will match the original bitWidth for $src.
-def : T2Pat<(and rGPR:$src, t2_so_imm_not_sext:$imm),
- (t2BICri rGPR:$src, t2_so_imm_not_sext:$imm)>;
-
// FIXME: Disable this pattern on Darwin to workaround an assembler bug.
def : T2Pat<(or rGPR:$src, t2_so_imm_not:$imm),
(t2ORNri rGPR:$src, t2_so_imm_not:$imm)>,