Lines Matching refs:DestTy

71 static Constant *foldConstVectorToAPInt(APInt &Result, Type *DestTy,  in foldConstVectorToAPInt()  argument
92 return ConstantExpr::getBitCast(C, DestTy); in foldConstVectorToAPInt()
104 Constant *FoldBitCast(Constant *C, Type *DestTy, const DataLayout &DL) { in FoldBitCast() argument
105 assert(CastInst::castIsValid(Instruction::BitCast, C, DestTy) && in FoldBitCast()
109 if (Constant *Res = ConstantFoldLoadFromUniformValue(C, DestTy, DL)) in FoldBitCast()
114 if (isa<IntegerType>(DestTy) || DestTy->isFloatingPointTy()) { in FoldBitCast()
128 APInt Result(DL.getTypeSizeInBits(DestTy), 0); in FoldBitCast()
129 if (Constant *CE = foldConstVectorToAPInt(Result, DestTy, C, in FoldBitCast()
133 if (isa<IntegerType>(DestTy)) in FoldBitCast()
134 return ConstantInt::get(DestTy, Result); in FoldBitCast()
136 APFloat FP(DestTy->getFltSemantics(), Result); in FoldBitCast()
137 return ConstantFP::get(DestTy->getContext(), FP); in FoldBitCast()
142 auto *DestVTy = dyn_cast<VectorType>(DestTy); in FoldBitCast()
144 return ConstantExpr::getBitCast(C, DestTy); in FoldBitCast()
150 return FoldBitCast(ConstantVector::get(Ops), DestTy, DL); in FoldBitCast()
155 return ConstantExpr::getBitCast(C, DestTy); in FoldBitCast()
161 return ConstantExpr::getBitCast(C, DestTy); in FoldBitCast()
185 return ConstantExpr::getBitCast(C, DestTy); in FoldBitCast()
227 return ConstantExpr::getBitCast(C, DestTy); in FoldBitCast()
260 return ConstantExpr::getBitCast(C, DestTy); in FoldBitCast()
270 return ConstantExpr::getBitCast(C, DestTy); in FoldBitCast()
344 Constant *llvm::ConstantFoldLoadThroughBitcast(Constant *C, Type *DestTy, in ConstantFoldLoadThroughBitcast() argument
348 if (SrcTy == DestTy) in ConstantFoldLoadThroughBitcast()
351 TypeSize DestSize = DL.getTypeSizeInBits(DestTy); in ConstantFoldLoadThroughBitcast()
358 if (Constant *Res = ConstantFoldLoadFromUniformValue(C, DestTy, DL)) in ConstantFoldLoadThroughBitcast()
366 DL.isNonIntegralPointerType(DestTy->getScalarType())) { in ConstantFoldLoadThroughBitcast()
370 if (SrcTy->isIntegerTy() && DestTy->isPointerTy()) in ConstantFoldLoadThroughBitcast()
372 else if (SrcTy->isPointerTy() && DestTy->isIntegerTy()) in ConstantFoldLoadThroughBitcast()
375 if (CastInst::castIsValid(Cast, C, DestTy)) in ConstantFoldLoadThroughBitcast()
376 return ConstantFoldCastOperand(Cast, C, DestTy, DL); in ConstantFoldLoadThroughBitcast()
980 Type *DestTy = InstOrCE->getType(); in ConstantFoldInstOperandsImpl() local
1006 return ConstantFoldCastOperand(Opcode, Ops[0], DestTy, DL); in ConstantFoldInstOperandsImpl()
1387 Type *DestTy, const DataLayout &DL) { in ConstantFoldCastOperand() argument
1429 return ConstantFoldIntegerCast(FoldedValue, DestTy, /*IsSigned=*/false, in ConstantFoldCastOperand()
1447 if (SrcAS == DestTy->getPointerAddressSpace()) in ConstantFoldCastOperand()
1448 return FoldBitCast(CE->getOperand(0), DestTy, DL); in ConstantFoldCastOperand()
1465 return FoldBitCast(C, DestTy, DL); in ConstantFoldCastOperand()
1469 return ConstantExpr::getCast(Opcode, C, DestTy); in ConstantFoldCastOperand()
1470 return ConstantFoldCastInstruction(Opcode, C, DestTy); in ConstantFoldCastOperand()
1473 Constant *llvm::ConstantFoldIntegerCast(Constant *C, Type *DestTy, in ConstantFoldIntegerCast() argument
1476 if (SrcTy == DestTy) in ConstantFoldIntegerCast()
1478 if (SrcTy->getScalarSizeInBits() > DestTy->getScalarSizeInBits()) in ConstantFoldIntegerCast()
1479 return ConstantFoldCastOperand(Instruction::Trunc, C, DestTy, DL); in ConstantFoldIntegerCast()
1481 return ConstantFoldCastOperand(Instruction::SExt, C, DestTy, DL); in ConstantFoldIntegerCast()
1482 return ConstantFoldCastOperand(Instruction::ZExt, C, DestTy, DL); in ConstantFoldIntegerCast()