On Jan 11, 2007, at 11:06 PM, Reid Spencer wrote: > @@ -484,12 +488,12 @@ > assert(Slot >= 0 && "No slot number for value!?!?"); > > if (isa<SequentialType>(*TI)) { > - unsigned IdxId; > - switch (I->getOperand(Idx)->getType()->getTypeID()) { > - default: assert(0 && "Unknown index type!"); > - case Type::Int32TyID: IdxId = 0; break; > - case Type::Int64TyID: IdxId = 1; break; > - } > + // These should be either 32-bits or 64-bits, however, > with bit > + // accurate types we just distinguish between less than or > equal to > + // 32-bits or greater than 32-bits. > + const IntegerType *IdxTy = > + cast<IntegerType>(I->getOperand(Idx)->getType()); > + unsigned IdxId = IdxTy->getBitWidth() <= 32 ? 0 : 1; > Slot = (Slot << 1) | IdxId; > } > output_vbr(unsigned(Slot));
This is incorrect. Please revert it back to checking for 32- and 64- bit explicitly. -Chris _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits