This was the only user of TargetInstrInfo::ConstantTypeMustBeLoaded().
authorBrian Gaeke <gaeke@uiuc.edu>
Tue, 27 Jul 2004 21:11:20 +0000 (21:11 +0000)
committerBrian Gaeke <gaeke@uiuc.edu>
Tue, 27 Jul 2004 21:11:20 +0000 (21:11 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15293 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/SparcV9/SparcV9PreSelection.cpp

index f6ab34aa1e4a35a63b61ff3b7c2549a04f50a2fe..97fa212e954783f37375e98ca7aad8acf39f47fe 100644 (file)
@@ -154,6 +154,10 @@ static Instruction* DecomposeConstantExpr(ConstantExpr* CE,
     }
 }
 
+static inline bool ConstantTypeMustBeLoaded(const Type* CVT) {
+  assert(CVT->isPrimitiveType() || isa<PointerType>(CVT));
+  return !(CVT->isIntegral() || isa<PointerType>(CVT));
+}
 
 //------------------------------------------------------------------------------
 // Instruction visitor methods to perform instruction-specific operations
@@ -177,7 +181,7 @@ PreSelection::visitOneOperand(Instruction &I, Value* Op, unsigned opNum,
     // load-time constant: factor it out so we optimize as best we can
     Instruction* computeConst = DecomposeConstantExpr(CE, insertBefore);
     I.setOperand(opNum, computeConst); // replace expr operand with result
-  } else if (instrInfo.ConstantTypeMustBeLoaded(CV)) {
+  } else if (ConstantTypeMustBeLoaded(CV->getType())) {
     // load address of constant into a register, then load the constant
     // this is now done during instruction selection
     // the constant will live in the MachineConstantPool later on