summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PowerPC/PPCISelLowering.cpp
diff options
context:
space:
mode:
authorHal Finkel <hfinkel@anl.gov>2014-03-26 19:13:54 +0000
committerHal Finkel <hfinkel@anl.gov>2014-03-26 19:13:54 +0000
commit7279f4b00d06238fa2faa378a526eae4704560c0 (patch)
tree50c612451294aab97293732957f1ab11748fb4cf /llvm/lib/Target/PowerPC/PPCISelLowering.cpp
parent6fc2ec96b83925dc9cf87100aed179d7548792fe (diff)
downloadbcm5719-llvm-7279f4b00d06238fa2faa378a526eae4704560c0.tar.gz
bcm5719-llvm-7279f4b00d06238fa2faa378a526eae4704560c0.zip
[PowerPC] Use v2f64 <-> v2i64 VSX conversion instructions
llvm-svn: 204843
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCISelLowering.cpp')
-rw-r--r--llvm/lib/Target/PowerPC/PPCISelLowering.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCISelLowering.cpp b/llvm/lib/Target/PowerPC/PPCISelLowering.cpp
index 0aa76774c6d..e09725d59d2 100644
--- a/llvm/lib/Target/PowerPC/PPCISelLowering.cpp
+++ b/llvm/lib/Target/PowerPC/PPCISelLowering.cpp
@@ -584,6 +584,11 @@ PPCTargetLowering::PPCTargetLowering(PPCTargetMachine &TM)
setOperationAction(ISD::STORE, MVT::v2i64, Promote);
AddPromotedToType (ISD::STORE, MVT::v2i64, MVT::v2f64);
+ setOperationAction(ISD::SINT_TO_FP, MVT::v2i64, Legal);
+ setOperationAction(ISD::UINT_TO_FP, MVT::v2i64, Legal);
+ setOperationAction(ISD::FP_TO_SINT, MVT::v2i64, Legal);
+ setOperationAction(ISD::FP_TO_UINT, MVT::v2i64, Legal);
+
addRegisterClass(MVT::v2i64, &PPC::VSRCRegClass);
}
}
OpenPOWER on IntegriCloud