Hrm, really, all tests passed without this, but it is scary to think how...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16568 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2004-09-29 03:16:24 +00:00
parent f6d1d7d2ba
commit dd763f401e

View File

@ -1766,9 +1766,9 @@ Instruction *InstCombiner::visitSetCondInst(BinaryOperator &I) {
case Instruction::Cast: { // (setcc (cast X to larger), CI)
const Type *SrcTy = LHSI->getOperand(0)->getType();
if (SrcTy->isIntegral() && LHSI->getType()->isIntegral()) {
unsigned SrcBits = SrcTy->getPrimitiveSize();
unsigned SrcBits = SrcTy->getPrimitiveSize()*8;
if (SrcTy == Type::BoolTy) SrcBits = 1;
unsigned DestBits = LHSI->getType()->getPrimitiveSize();
unsigned DestBits = LHSI->getType()->getPrimitiveSize()*8;
if (LHSI->getType() == Type::BoolTy) DestBits = 1;
if (SrcBits < DestBits) {
// Check to see if the comparison is always true or false.