summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2014-06-18 17:05:22 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2014-06-18 17:05:22 +0000
commitf7aa5f93797df1d5d85fb74771d19e9b0f61f79b (patch)
treea763811153c9ce040dc6831589c3db2fa5b2551f
parent3de1bed8f427a4961b2288cb7db32b6566576c06 (diff)
downloadllvm-f7aa5f93797df1d5d85fb74771d19e9b0f61f79b.tar.gz
llvm-f7aa5f93797df1d5d85fb74771d19e9b0f61f79b.tar.bz2
llvm-f7aa5f93797df1d5d85fb74771d19e9b0f61f79b.tar.xz
R600/SI: Temporary fix for f64 fneg
This should be a source modifier, but this unblocks most of my math patches. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211181 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/R600/SIISelLowering.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Target/R600/SIISelLowering.cpp b/lib/Target/R600/SIISelLowering.cpp
index 846aeb6309..f9b466709a 100644
--- a/lib/Target/R600/SIISelLowering.cpp
+++ b/lib/Target/R600/SIISelLowering.cpp
@@ -212,6 +212,10 @@ SITargetLowering::SITargetLowering(TargetMachine &TM) :
setOperationAction(ISD::FRINT, MVT::f64, Legal);
}
+ // FIXME: This should be removed and handled the same was as f32 fneg. Source
+ // modifiers also work for the double instructions.
+ setOperationAction(ISD::FNEG, MVT::f64, Expand);
+
setTargetDAGCombine(ISD::SELECT_CC);
setTargetDAGCombine(ISD::SETCC);