summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDuraid Madina <duraid@octopus.com.au>2006-01-20 03:40:25 +0000
committerDuraid Madina <duraid@octopus.com.au>2006-01-20 03:40:25 +0000
commita7fb5bef552c958073d5b1e3ec5f2fb1397459e9 (patch)
treeb01e13265015db7500d77437bd67c82f59d67d5e
parentf20bf3e629255a6ced5c0e90adce06fd3cc368c9 (diff)
downloadllvm-a7fb5bef552c958073d5b1e3ec5f2fb1397459e9.tar.gz
llvm-a7fb5bef552c958073d5b1e3ec5f2fb1397459e9.tar.bz2
llvm-a7fb5bef552c958073d5b1e3ec5f2fb1397459e9.tar.xz
fix storing bools! eek!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25476 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/IA64/IA64ISelDAGToDAG.cpp4
-rw-r--r--lib/Target/IA64/IA64InstrInfo.td9
2 files changed, 5 insertions, 8 deletions
diff --git a/lib/Target/IA64/IA64ISelDAGToDAG.cpp b/lib/Target/IA64/IA64ISelDAGToDAG.cpp
index de3c1775cd..18637c26ea 100644
--- a/lib/Target/IA64/IA64ISelDAGToDAG.cpp
+++ b/lib/Target/IA64/IA64ISelDAGToDAG.cpp
@@ -542,9 +542,9 @@ SDOperand IA64DAGToDAGISel::Select(SDOperand Op) {
// first load zero!
SDOperand Initial = CurDAG->getCopyFromReg(Chain, IA64::r0, MVT::i64);
Chain = Initial.getValue(1);
- // then load 1 iff the predicate to store is 1
+ // then load 1 into the same reg iff the predicate to store is 1
SDOperand Tmp =
- CurDAG->getTargetNode(IA64::PADDS, MVT::i64, Initial,
+ CurDAG->getTargetNode(IA64::TPCADDS, MVT::i64, Initial,
CurDAG->getConstant(1, MVT::i64),
Select(N->getOperand(1)));
return CurDAG->SelectNodeTo(N, Opc, MVT::Other, Address, Tmp, Chain);
diff --git a/lib/Target/IA64/IA64InstrInfo.td b/lib/Target/IA64/IA64InstrInfo.td
index 0eacfafbb4..315cd97aa3 100644
--- a/lib/Target/IA64/IA64InstrInfo.td
+++ b/lib/Target/IA64/IA64InstrInfo.td
@@ -113,10 +113,6 @@ def ADDS : AForm_DAG<0x03, 0x0b, (ops GR:$dst, GR:$src1, s14imm:$imm),
"adds $dst = $imm, $src1;;",
[(set GR:$dst, (add GR:$src1, immSExt14:$imm))]>;
-def PADDS: AForm_DAG<0x03, 0x0b, (ops GR:$dst, GR:$src1, s14imm:$imm, PR:$qp),
- "($qp) adds $dst = $imm, $src1;;",
- []>;
-
def MOVL : AForm_DAG<0x03, 0x0b, (ops GR:$dst, s64imm:$imm),
"movl $dst = $imm;;",
[(set GR:$dst, imm64:$imm)]>;
@@ -142,9 +138,10 @@ let isTwoAddress = 1 in {
def TPCADDIMM22 : AForm<0x03, 0x0b,
(ops GR:$dst, GR:$src1, s22imm:$imm, PR:$qp),
"($qp) add $dst = $imm, $dst;;">;
-def TPCADDS : AForm<0x03, 0x0b,
+def TPCADDS : AForm_DAG<0x03, 0x0b,
(ops GR:$dst, GR:$src1, s14imm:$imm, PR:$qp),
- "($qp) adds $dst = $imm, $dst;;">;
+ "($qp) adds $dst = $imm, $dst;;",
+ []>;
def TPCMPIMM8NE : AForm<0x03, 0x0b,
(ops PR:$dst, PR:$src1, s22imm:$imm, GR:$src2, PR:$qp),
"($qp) cmp.ne $dst , p0 = $imm, $src2;;">;