aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2010-05-27 20:12:41 +0000
committerDale Johannesen <dalej@apple.com>2010-05-27 20:12:41 +0000
commit9bb23490cb42b6931d421bfb9762d32c3cf1fb3c (patch)
tree01b7fdedb836b50842ef10fc100cb601edc8d54a
parentd0008f0858d374b1122af8b6d7c52c8e02c7e92c (diff)
downloadexternal_llvm-9bb23490cb42b6931d421bfb9762d32c3cf1fb3c.zip
external_llvm-9bb23490cb42b6931d421bfb9762d32c3cf1fb3c.tar.gz
external_llvm-9bb23490cb42b6931d421bfb9762d32c3cf1fb3c.tar.bz2
Mark some math lib intrinsic nodes Legal on SSE4.1.
No functional effect as these nodes are not generated yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104879 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/X86/X86ISelLowering.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp
index 9d49941..b46fc74 100644
--- a/lib/Target/X86/X86ISelLowering.cpp
+++ b/lib/Target/X86/X86ISelLowering.cpp
@@ -825,6 +825,17 @@ X86TargetLowering::X86TargetLowering(X86TargetMachine &TM)
}
if (Subtarget->hasSSE41()) {
+ setOperationAction(ISD::FFLOOR, MVT::f32, Legal);
+ setOperationAction(ISD::FCEIL, MVT::f32, Legal);
+ setOperationAction(ISD::FTRUNC, MVT::f32, Legal);
+ setOperationAction(ISD::FRINT, MVT::f32, Legal);
+ setOperationAction(ISD::FNEARBYINT, MVT::f32, Legal);
+ setOperationAction(ISD::FFLOOR, MVT::f64, Legal);
+ setOperationAction(ISD::FCEIL, MVT::f64, Legal);
+ setOperationAction(ISD::FTRUNC, MVT::f64, Legal);
+ setOperationAction(ISD::FRINT, MVT::f64, Legal);
+ setOperationAction(ISD::FNEARBYINT, MVT::f64, Legal);
+
// FIXME: Do we need to handle scalar-to-vector here?
setOperationAction(ISD::MUL, MVT::v4i32, Legal);