Lines Matching refs:SrcTy
151 Value *EmitScalarConversion(Value *Src, QualType SrcTy, QualType DstTy,
154 Value *EmitScalarConversion(Value *Src, QualType SrcTy, QualType DstTy,
160 QualType SrcTy, QualType DstTy,
604 llvm::Type *SrcTy = Src->getType();
607 if (llvm::IntegerType *IntTy = dyn_cast<llvm::IntegerType>(SrcTy)) {
750 llvm::Type *SrcTy = Src->getType();
779 SrcTy = CGF.FloatTy;
784 if (SrcTy == DstTy)
792 if (isa<llvm::PointerType>(SrcTy))
806 if (isa<llvm::PointerType>(SrcTy)) {
825 if (isa<llvm::VectorType>(SrcTy) ||
843 if (SrcTy->isFloatingPointTy()) {
848 CGF.CGM.getIntrinsic(llvm::Intrinsic::convert_to_fp16, SrcTy), Src);
855 if (isa<llvm::IntegerType>(SrcTy)) {
867 assert(SrcTy->isFloatingPointTy() && "Unknown real conversion");
873 assert(SrcTy->isFloatingPointTy() && DstTy->isFloatingPointTy() &&
875 if (DstTy->getTypeID() < SrcTy->getTypeID())
898 CodeGenFunction::ComplexPairTy Src, QualType SrcTy, QualType DstTy,
901 SrcTy = SrcTy->castAs<ComplexType>()->getElementType();
906 Src.first = EmitScalarConversion(Src.first, SrcTy, DstTy, Loc);
907 Src.second = EmitScalarConversion(Src.second, SrcTy, DstTy, Loc);
915 return EmitScalarConversion(Src.first, SrcTy, DstTy, Loc);
1070 llvm::Type *SrcTy = Src->getType();
1074 if (SrcTy == DstTy)
1080 assert(SrcTy->isVectorTy() &&
1085 llvm::Type *SrcEltTy = SrcTy->getVectorElementType(),
1092 llvm::Value *Zero = llvm::Constant::getNullValue(SrcTy);
1392 llvm::Type *SrcTy = Src->getType();
1394 if (SrcTy->isPtrOrPtrVectorTy() && DstTy->isPtrOrPtrVectorTy() &&
1395 SrcTy->getPointerAddressSpace() != DstTy->getPointerAddressSpace()) {
3400 llvm::Type *SrcTy = Src->getType();
3401 if (isa<llvm::VectorType>(DstTy) && isa<llvm::VectorType>(SrcTy)) {
3403 unsigned numElementsSrc = cast<llvm::VectorType>(SrcTy)->getNumElements();
3411 cast<llvm::VectorType>(SrcTy)->getElementType();
3463 Value *CodeGenFunction::EmitScalarConversion(Value *Src, QualType SrcTy,
3466 assert(hasScalarEvaluationKind(SrcTy) && hasScalarEvaluationKind(DstTy) &&
3468 return ScalarExprEmitter(*this).EmitScalarConversion(Src, SrcTy, DstTy, Loc);
3474 QualType SrcTy,
3477 assert(SrcTy->isAnyComplexType() && hasScalarEvaluationKind(DstTy) &&
3480 .EmitComplexToScalarConversion(Src, SrcTy, DstTy, Loc);