[llvm] r211181 - R600/SI: Temporary fix for f64 fneg

Matt Arsenault Matthew.Arsenault at amd.com
Wed Jun 18 10:05:23 PDT 2014


Author: arsenm
Date: Wed Jun 18 12:05:22 2014
New Revision: 211181

URL: http://llvm.org/viewvc/llvm-project?rev=211181&view=rev
Log:
R600/SI: Temporary fix for f64 fneg

This should be a source modifier, but this unblocks
most of my math patches.

Modified:
    llvm/trunk/lib/Target/R600/SIISelLowering.cpp

Modified: llvm/trunk/lib/Target/R600/SIISelLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/R600/SIISelLowering.cpp?rev=211181&r1=211180&r2=211181&view=diff
==============================================================================
--- llvm/trunk/lib/Target/R600/SIISelLowering.cpp (original)
+++ llvm/trunk/lib/Target/R600/SIISelLowering.cpp Wed Jun 18 12:05:22 2014
@@ -212,6 +212,10 @@ SITargetLowering::SITargetLowering(Targe
     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);
 





More information about the llvm-commits mailing list