mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-26 12:20:42 +00:00
Change inferred cast creation calls to more specific cast creations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32460 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -446,7 +446,11 @@ void AsmPrinter::EmitConstantValueOnly(const Constant *CV) {
|
||||
// integer type. This promotes constant folding and simplifies this code.
|
||||
if (isa<PointerType>(Ty)) {
|
||||
const Type *IntPtrTy = TD->getIntPtrType();
|
||||
Op = ConstantExpr::getCast(Op, IntPtrTy);
|
||||
Instruction::CastOps opcode = Instruction::CastOps(CE->getOpcode());
|
||||
if (opcode == Instruction::IntToPtr)
|
||||
Op = ConstantExpr::getIntegerCast(Op, IntPtrTy, false /*ZExt*/);
|
||||
else
|
||||
Op = ConstantExpr::getCast(Instruction::PtrToInt, Op, IntPtrTy);
|
||||
return EmitConstantValueOnly(Op);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user