[llvm-commits] [llvm] r166911 - /llvm/trunk/lib/Target/TargetTransformImpl.cpp

Nadav Rotem nrotem at apple.com
Sun Oct 28 22:28:35 PDT 2012


Author: nadav
Date: Mon Oct 29 00:28:35 2012
New Revision: 166911

URL: http://llvm.org/viewvc/llvm-project?rev=166911&view=rev
Log:
Calling TLI->getNumRegisters creates a circular dependency when building LLVM using cmake.

Get the number of registers by calling getTypeLegalizationCost.

PR14199.


Modified:
    llvm/trunk/lib/Target/TargetTransformImpl.cpp

Modified: llvm/trunk/lib/Target/TargetTransformImpl.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/TargetTransformImpl.cpp?rev=166911&r1=166910&r2=166911&view=diff
==============================================================================
--- llvm/trunk/lib/Target/TargetTransformImpl.cpp (original)
+++ llvm/trunk/lib/Target/TargetTransformImpl.cpp Mon Oct 29 00:28:35 2012
@@ -270,7 +270,7 @@
     return getScalarizationOverhead(ValTy, true, false) + Num * Cost;
   }
 
-  // Unknown scalar opcode. 
+  // Unknown scalar opcode.
   return 1;
 }
 
@@ -300,6 +300,8 @@
 
 unsigned
 VectorTargetTransformImpl::getNumberOfParts(Type *Tp) const {
-  return TLI->getNumRegisters(Tp->getContext(), TLI->getValueType(Tp));
+  std::pair<unsigned, EVT> LT =
+    getTypeLegalizationCost(Tp->getContext(), TLI->getValueType(Tp));
+  return LT.first;
 }
 





More information about the llvm-commits mailing list