summaryrefslogtreecommitdiff
path: root/lib/Target/SystemZ/SystemZOperands.td
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-03-08 18:52:55 +0000
committerChris Lattner <sabre@nondot.org>2010-03-08 18:52:55 +0000
commit0273fbbf2223054a140e16f698465d3aeaf90553 (patch)
treedf44c643322754f4355f7d1cfdc7f21507fa87e2 /lib/Target/SystemZ/SystemZOperands.td
parentd10a53d5a1a5f5a729b55638acfb25d3871df70b (diff)
downloadllvm-0273fbbf2223054a140e16f698465d3aeaf90553.tar.gz
llvm-0273fbbf2223054a140e16f698465d3aeaf90553.tar.bz2
llvm-0273fbbf2223054a140e16f698465d3aeaf90553.tar.xz
fix a type compatibility bug. imm is i32 in the input
pattern, not i64. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97956 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/SystemZ/SystemZOperands.td')
-rw-r--r--lib/Target/SystemZ/SystemZOperands.td4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Target/SystemZ/SystemZOperands.td b/lib/Target/SystemZ/SystemZOperands.td
index 156cace9c3..0de50fde58 100644
--- a/lib/Target/SystemZ/SystemZOperands.td
+++ b/lib/Target/SystemZ/SystemZOperands.td
@@ -67,6 +67,10 @@ def HI32 : SDNodeXForm<imm, [{
return getI32Imm(N->getZExtValue() >> 32);
}]>;
+def GetI64FromI32 : SDNodeXForm<imm, [{
+ return CurDAG->getTargetConstant(N->getSExtValue(), MVT::i64);
+}]>;
+
def i32ll16 : PatLeaf<(i32 imm), [{
// i32ll16 predicate - true if the 32-bit immediate has only rightmost 16
// bits set.