For PR1043:

Merge ConstantIntegral and ConstantBool into ConstantInt.
Remove ConstantIntegral and ConstantBool from LLVM.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33073 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Zhou Sheng
2007-01-11 12:24:14 +00:00
parent 057809ac1c
commit 6b6b6ef167
43 changed files with 1974 additions and 1868 deletions

View File

@ -826,22 +826,21 @@ void CWriter::printConstant(Constant *CPV) {
return;
}
if (ConstantBool *CB = dyn_cast<ConstantBool>(CPV)) {
Out << (CB->getValue() ? '1' : '0') ;
return;
}
if (ConstantInt *CI = dyn_cast<ConstantInt>(CPV)) {
const Type* Ty = CI->getType();
Out << "((";
printPrimitiveType(Out, Ty, false) << ')';
if (CI->isMinValue(true))
Out << CI->getZExtValue() << 'u';
else
Out << CI->getSExtValue();
if (Ty->getPrimitiveSizeInBits() > 32)
Out << "ll";
Out << ')';
if (Ty == Type::BoolTy)
Out << (CI->getBoolValue() ? '1' : '0') ;
else {
Out << "((";
printPrimitiveType(Out, Ty, false) << ')';
if (CI->isMinValue(true))
Out << CI->getZExtValue() << 'u';
else
Out << CI->getSExtValue();
if (Ty->getPrimitiveSizeInBits() > 32)
Out << "ll";
Out << ')';
}
return;
}