summaryrefslogtreecommitdiff
path: root/lib/Target/SystemZ/SystemZISelLowering.cpp
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2009-08-21 18:52:42 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2009-08-21 18:52:42 +0000
commitfc9489a4c6a7ecb8ac4b8567a7d7876b83379b78 (patch)
tree1e02ea30371eeaa2dc2db35a48ed87ae06d8e5db /lib/Target/SystemZ/SystemZISelLowering.cpp
parent2a5b155ba82ec52d0bab72b6a4cb191d89713104 (diff)
downloadllvm-fc9489a4c6a7ecb8ac4b8567a7d7876b83379b78.tar.gz
llvm-fc9489a4c6a7ecb8ac4b8567a7d7876b83379b78.tar.bz2
llvm-fc9489a4c6a7ecb8ac4b8567a7d7876b83379b78.tar.xz
Expand few nodes until someone will be crazy enough to implement them natively :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79659 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/SystemZ/SystemZISelLowering.cpp')
-rw-r--r--lib/Target/SystemZ/SystemZISelLowering.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/Target/SystemZ/SystemZISelLowering.cpp b/lib/Target/SystemZ/SystemZISelLowering.cpp
index 2022ec04ce..ef60536286 100644
--- a/lib/Target/SystemZ/SystemZISelLowering.cpp
+++ b/lib/Target/SystemZ/SystemZISelLowering.cpp
@@ -126,11 +126,15 @@ SystemZTargetLowering::SystemZTargetLowering(SystemZTargetMachine &tm) :
setOperationAction(ISD::SELECT_CC, MVT::f32, Custom);
setOperationAction(ISD::SELECT_CC, MVT::f64, Custom);
- // Funny enough: we don't have 64-bit signed versions of these stuff, but have
- // unsigned.
setOperationAction(ISD::MULHS, MVT::i64, Expand);
setOperationAction(ISD::SMUL_LOHI, MVT::i64, Expand);
+ // FIXME: Can we support these natively?
+ setOperationAction(ISD::UMUL_LOHI, MVT::i64, Expand);
+ setOperationAction(ISD::SRL_PARTS, MVT::i64, Expand);
+ setOperationAction(ISD::SHL_PARTS, MVT::i64, Expand);
+ setOperationAction(ISD::SRA_PARTS, MVT::i64, Expand);
+
// Lower some FP stuff
setOperationAction(ISD::FSIN, MVT::f32, Expand);
setOperationAction(ISD::FSIN, MVT::f64, Expand);