X86: stifle GCC warning
authorSaleem Abdulrasool <compnerd@compnerd.org>
Thu, 12 Jun 2014 17:56:18 +0000 (17:56 +0000)
committerSaleem Abdulrasool <compnerd@compnerd.org>
Thu, 12 Jun 2014 17:56:18 +0000 (17:56 +0000)
lib/Target/X86/X86TargetTransformInfo.cpp: In member function â€˜virtual unsigned int {anonymous}::X86TTI::getIntImmCost(unsigned int, unsigned int, const llvm::APInt&, llvm::Type*) const’:
lib/Target/X86/X86TargetTransformInfo.cpp:920:60: warning: enumeral and non-enumeral type in conditional expression [enabled by default]

This seems like an unhelpful warning, but there doesnt seem to be a controlling
flag, so add an explicit cast to silence the warning.

llvm-svn: 210806

llvm/lib/Target/X86/X86TargetTransformInfo.cpp

index c6f5906..299f9a5 100644 (file)
@@ -917,7 +917,9 @@ unsigned X86TTI::getIntImmCost(unsigned Opcode, unsigned Idx, const APInt &Imm,
   if (Idx == ImmIdx) {
     unsigned NumConstants = (BitSize + 63) / 64;
     unsigned Cost = X86TTI::getIntImmCost(Imm, Ty);
-    return (Cost <= NumConstants * TCC_Basic) ? TCC_Free : Cost;
+    return (Cost <= NumConstants * TCC_Basic)
+      ? static_cast<unsigned>(TCC_Free)
+      : Cost;
   }
 
   return X86TTI::getIntImmCost(Imm, Ty);