Stop using getValues().
authorAlkis Evlogimenos <alkis@evlogimenos.com>
Wed, 4 Aug 2004 08:44:43 +0000 (08:44 +0000)
committerAlkis Evlogimenos <alkis@evlogimenos.com>
Wed, 4 Aug 2004 08:44:43 +0000 (08:44 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15487 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Bytecode/Writer/Writer.cpp
lib/ExecutionEngine/ExecutionEngine.cpp
lib/Target/SparcV9/SparcV9AsmPrinter.cpp
lib/Target/X86/X86AsmPrinter.cpp
lib/Transforms/Scalar/InstructionCombining.cpp
lib/Transforms/Scalar/SCCP.cpp
lib/Transforms/Utils/ValueMapper.cpp

index 92811ada5a992e650e9513c79cba249303369684..579041991b9d5dff788e26c7bf048836437a08ab 100644 (file)
@@ -338,7 +338,7 @@ void BytecodeWriter::outputConstant(const Constant *CPV) {
     const ConstantArray *CPA = cast<ConstantArray>(CPV);
     assert(!CPA->isString() && "Constant strings should be handled specially!");
 
-    for (unsigned i = 0; i != CPA->getNumOperands(); ++i) {
+    for (unsigned i = 0, e = CPA->getNumOperands(); i != e; ++i) {
       int Slot = Table.getSlot(CPA->getOperand(i));
       assert(Slot != -1 && "Constant used but not available!!");
       output_vbr((unsigned)Slot);
@@ -348,10 +348,9 @@ void BytecodeWriter::outputConstant(const Constant *CPV) {
 
   case Type::StructTyID: {
     const ConstantStruct *CPS = cast<ConstantStruct>(CPV);
-    const std::vector<Use> &Vals = CPS->getValues();
 
-    for (unsigned i = 0; i < Vals.size(); ++i) {
-      int Slot = Table.getSlot(Vals[i]);
+    for (unsigned i = 0, e = CPS->getNumOperands(); i != e; ++i) {
+      int Slot = Table.getSlot(CPS->getOperand(i));
       assert(Slot != -1 && "Constant used but not available!!");
       output_vbr((unsigned)Slot);
     }
index e6f096f8aad6a309b3b0de40754fd4bcb47aee04..b768930099e5f174b813902b3617419cd78e8f9d 100644 (file)
@@ -446,11 +446,10 @@ void ExecutionEngine::InitializeMemory(const Constant *Init, void *Addr) {
   switch (Init->getType()->getTypeID()) {
   case Type::ArrayTyID: {
     const ConstantArray *CPA = cast<ConstantArray>(Init);
-    const std::vector<Use> &Val = CPA->getValues();
     unsigned ElementSize = 
       getTargetData().getTypeSize(cast<ArrayType>(CPA->getType())->getElementType());
-    for (unsigned i = 0; i < Val.size(); ++i)
-      InitializeMemory(cast<Constant>(Val[i].get()), (char*)Addr+i*ElementSize);
+    for (unsigned i = 0, e = CPA->getNumOperands(); i != e; ++i)
+      InitializeMemory(CPA->getOperand(i), (char*)Addr+i*ElementSize);
     return;
   }
 
@@ -458,10 +457,8 @@ void ExecutionEngine::InitializeMemory(const Constant *Init, void *Addr) {
     const ConstantStruct *CPS = cast<ConstantStruct>(Init);
     const StructLayout *SL =
       getTargetData().getStructLayout(cast<StructType>(CPS->getType()));
-    const std::vector<Use> &Val = CPS->getValues();
-    for (unsigned i = 0; i < Val.size(); ++i)
-      InitializeMemory(cast<Constant>(Val[i].get()),
-                       (char*)Addr+SL->MemberOffsets[i]);
+    for (unsigned i = 0, e = CPS->getNumOperands(); i != e; ++i)
+      InitializeMemory(CPS->getOperand(i), (char*)Addr+SL->MemberOffsets[i]);
     return;
   }
 
index addcbdcc0c192b9b691ff0dfa8c23de927b5b632..0be404d65393876a37bea30b14567e8aab7e882f 100644 (file)
@@ -365,23 +365,21 @@ void AsmPrinter::printConstantValueOnly(const Constant* CV,
       toAsm << "\t" << ".ascii" << "\t" << getAsCString(CVA) << "\n";
     } else {
       // Not a string.  Print the values in successive locations
-      const std::vector<Use> &constValues = CVA->getValues();
-      for (unsigned i=0; i < constValues.size(); i++)
-        printConstantValueOnly(cast<Constant>(constValues[i].get()));
+      for (unsigned i = 0, e = CVA->getNumOperands(); i != e; ++i)
+        printConstantValueOnly(CVA->getOperand(i));
     }
   } else if (const ConstantStruct *CVS = dyn_cast<ConstantStruct>(CV)) {
     // Print the fields in successive locations. Pad to align if needed!
     const StructLayout *cvsLayout =
       Target.getTargetData().getStructLayout(CVS->getType());
-    const std::vector<Use>& constValues = CVS->getValues();
     unsigned sizeSoFar = 0;
-    for (unsigned i=0, N = constValues.size(); i < N; i++) {
-      const Constant* field = cast<Constant>(constValues[i].get());
+    for (unsigned i = 0, e = CVS->getNumOperands(); i != e; ++i) {
+      const Constant* field = CVS->getOperand(i);
 
       // Check if padding is needed and insert one or more 0s.
       unsigned fieldSize =
         Target.getTargetData().getTypeSize(field->getType());
-      int padSize = ((i == N-1? cvsLayout->StructSize
+      int padSize = ((i == e-1? cvsLayout->StructSize
                       : cvsLayout->MemberOffsets[i+1])
                      - cvsLayout->MemberOffsets[i]) - fieldSize;
       sizeSoFar += (fieldSize + padSize);
index 5bc4a488891a42536edc201f592a8b06fcd6aac2..f8c582fe7998f90438f2a11646aed872d763664e 100644 (file)
@@ -270,22 +270,20 @@ void X86AsmPrinter::emitGlobalConstant(const Constant *CV) {
       printAsCString(O, CVA);
       O << "\n";
     } else { // Not a string.  Print the values in successive locations
-      const std::vector<Use> &constValues = CVA->getValues();
-      for (unsigned i=0; i < constValues.size(); i++)
-        emitGlobalConstant(cast<Constant>(constValues[i].get()));
+      for (unsigned i = 0, e = CVA->getNumOperands(); i != e; ++i)
+        emitGlobalConstant(CVA->getOperand(i));
     }
     return;
   } else if (const ConstantStruct *CVS = dyn_cast<ConstantStruct>(CV)) {
     // Print the fields in successive locations. Pad to align if needed!
     const StructLayout *cvsLayout = TD.getStructLayout(CVS->getType());
-    const std::vector<Use>& constValues = CVS->getValues();
     unsigned sizeSoFar = 0;
-    for (unsigned i=0, N = constValues.size(); i < N; i++) {
-      const Constant* field = cast<Constant>(constValues[i].get());
+    for (unsigned i = 0, e = CVS->getNumOperands(); i != e; ++i) {
+      const Constant* field = CVS->getOperand(i);
 
       // Check if padding is needed and insert one or more 0s.
       unsigned fieldSize = TD.getTypeSize(field->getType());
-      unsigned padSize = ((i == N-1? cvsLayout->StructSize
+      unsigned padSize = ((i == e-1? cvsLayout->StructSize
                            : cvsLayout->MemberOffsets[i+1])
                           - cvsLayout->MemberOffsets[i]) - fieldSize;
       sizeSoFar += fieldSize + padSize;
index 747abc2f5bb4a3ee2156708611d8322f3ca8dfd4..eb4f1e31a6a1647e6828cd9b51a4ff3e9e20604c 100644 (file)
@@ -2947,7 +2947,7 @@ static Constant *GetGEPGlobalInitializer(Constant *C, ConstantExpr *CE) {
       assert(CU->getValue() < STy->getNumElements() &&
              "Struct index out of range!");
       if (ConstantStruct *CS = dyn_cast<ConstantStruct>(C)) {
-        C = cast<Constant>(CS->getValues()[CU->getValue()]);
+        C = CS->getOperand(CU->getValue());
       } else if (isa<ConstantAggregateZero>(C)) {
        C = Constant::getNullValue(STy->getElementType(CU->getValue()));
       } else {
@@ -2957,7 +2957,7 @@ static Constant *GetGEPGlobalInitializer(Constant *C, ConstantExpr *CE) {
       const ArrayType *ATy = cast<ArrayType>(*I);
       if ((uint64_t)CI->getRawValue() >= ATy->getNumElements()) return 0;
       if (ConstantArray *CA = dyn_cast<ConstantArray>(C))
-        C = cast<Constant>(CA->getValues()[CI->getRawValue()]);
+        C = CA->getOperand(CI->getRawValue());
       else if (isa<ConstantAggregateZero>(C))
         C = Constant::getNullValue(ATy->getElementType());
       else
index 3557cadd40269121221417e7291a6137c320d5f1..1c39160d9bd8e284ce26c77072eb6a9833d6b815 100644 (file)
@@ -753,13 +753,13 @@ static Constant *GetGEPGlobalInitializer(Constant *C, ConstantExpr *CE) {
     if (ConstantUInt *CU = dyn_cast<ConstantUInt>(CE->getOperand(i))) {
       ConstantStruct *CS = dyn_cast<ConstantStruct>(C);
       if (CS == 0) return 0;
-      if (CU->getValue() >= CS->getValues().size()) return 0;
-      C = cast<Constant>(CS->getValues()[CU->getValue()]);
+      if (CU->getValue() >= CS->getNumOperands()) return 0;
+      C = CS->getOperand(CU->getValue());
     } else if (ConstantSInt *CS = dyn_cast<ConstantSInt>(CE->getOperand(i))) {
       ConstantArray *CA = dyn_cast<ConstantArray>(C);
       if (CA == 0) return 0;
-      if ((uint64_t)CS->getValue() >= CA->getValues().size()) return 0;
-      C = cast<Constant>(CA->getValues()[CS->getValue()]);
+      if ((uint64_t)CS->getValue() >= CA->getNumOperands()) return 0;
+      C = CA->getOperand(CS->getValue());
     } else
       return 0;
   return C;
index 94e56b73a5389b12984d6ec4c59a6260d87f1678..72ce4ae81f33fc2a0989377ea45b4bd55a3bd9ac 100644 (file)
@@ -34,40 +34,38 @@ Value *llvm::MapValue(const Value *V, std::map<const Value*, Value*> &VM) {
         isa<ConstantPointerNull>(C) || isa<ConstantAggregateZero>(C))
       return VMSlot = C;           // Primitive constants map directly
     else if (ConstantArray *CA = dyn_cast<ConstantArray>(C)) {
-      const std::vector<Use> &Vals = CA->getValues();
-      for (unsigned i = 0, e = Vals.size(); i != e; ++i) {
-        Value *MV = MapValue(Vals[i], VM);
-        if (MV != Vals[i]) {
+      for (unsigned i = 0, e = CA->getNumOperands(); i != e; ++i) {
+        Value *MV = MapValue(CA->getOperand(i), VM);
+        if (MV != CA->getOperand(i)) {
           // This array must contain a reference to a global, make a new array
           // and return it.
           //
           std::vector<Constant*> Values;
-          Values.reserve(Vals.size());
+          Values.reserve(CA->getNumOperands());
           for (unsigned j = 0; j != i; ++j)
-            Values.push_back(cast<Constant>(Vals[j]));
+            Values.push_back(CA->getOperand(j));
           Values.push_back(cast<Constant>(MV));
           for (++i; i != e; ++i)
-            Values.push_back(cast<Constant>(MapValue(Vals[i], VM)));
+            Values.push_back(cast<Constant>(MapValue(CA->getOperand(i), VM)));
           return VMSlot = ConstantArray::get(CA->getType(), Values);
         }
       }
       return VMSlot = C;
 
     } else if (ConstantStruct *CS = dyn_cast<ConstantStruct>(C)) {
-      const std::vector<Use> &Vals = CS->getValues();
-      for (unsigned i = 0, e = Vals.size(); i != e; ++i) {
-        Value *MV = MapValue(Vals[i], VM);
-        if (MV != Vals[i]) {
+      for (unsigned i = 0, e = CS->getNumOperands(); i != e; ++i) {
+        Value *MV = MapValue(CS->getOperand(i), VM);
+        if (MV != CS->getOperand(i)) {
           // This struct must contain a reference to a global, make a new struct
           // and return it.
           //
           std::vector<Constant*> Values;
-          Values.reserve(Vals.size());
+          Values.reserve(CS->getNumOperands());
           for (unsigned j = 0; j != i; ++j)
-            Values.push_back(cast<Constant>(Vals[j]));
+            Values.push_back(CS->getOperand(j));
           Values.push_back(cast<Constant>(MV));
           for (++i; i != e; ++i)
-            Values.push_back(cast<Constant>(MapValue(Vals[i], VM)));
+            Values.push_back(cast<Constant>(MapValue(CS->getOperand(i), VM)));
           return VMSlot = ConstantStruct::get(CS->getType(), Values);
         }
       }