[llvm-commits] [llvm] r162892 - /llvm/trunk/lib/Target/X86/X86ISelLowering.cpp

Craig Topper craig.topper at gmail.com
Wed Aug 29 23:56:15 PDT 2012


Author: ctopper
Date: Thu Aug 30 01:56:15 2012
New Revision: 162892

URL: http://llvm.org/viewvc/llvm-project?rev=162892&view=rev
Log:
Only perform DAG combine on FMAs of legal types.

Modified:
    llvm/trunk/lib/Target/X86/X86ISelLowering.cpp

Modified: llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp?rev=162892&r1=162891&r2=162892&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86ISelLowering.cpp Thu Aug 30 01:56:15 2012
@@ -15601,6 +15601,10 @@
   DebugLoc dl = N->getDebugLoc();
   EVT VT = N->getValueType(0);
 
+  // Let legalize expand this if it isn't a legal type yet.
+  if (!DAG.getTargetLoweringInfo().isTypeLegal(VT))
+    return SDValue();
+
   EVT ScalarVT = VT.getScalarType();
   if ((ScalarVT != MVT::f32 && ScalarVT != MVT::f64) || !Subtarget->hasFMA())
     return SDValue();





More information about the llvm-commits mailing list