Lines Matching refs:ScalarExprEmitter
215 class ScalarExprEmitter class
216 : public StmtVisitor<ScalarExprEmitter, Value*> {
223 ScalarExprEmitter(CodeGenFunction &cgf, bool ira=false) in ScalarExprEmitter() function in __anon20de44ed0111::ScalarExprEmitter
408 return StmtVisitor<ScalarExprEmitter, Value*>::Visit(E); in Visit()
796 Value *(ScalarExprEmitter::*F)(const BinOpInfo &),
800 Value *(ScalarExprEmitter::*F)(const BinOpInfo &));
808 return EmitCompoundAssign(E, &ScalarExprEmitter::Emit ## OP); \
879 Value *ScalarExprEmitter::EmitConversionToBool(Value *Src, QualType SrcType) { in EmitConversionToBool()
898 void ScalarExprEmitter::EmitFloatConversionCheck( in EmitFloatConversionCheck()
968 static std::pair<ScalarExprEmitter::ImplicitConversionCheckKind,
987 ScalarExprEmitter::ImplicitConversionCheckKind Kind; in EmitIntegerTruncationCheckHelper()
990 Kind = ScalarExprEmitter::ICCK_UnsignedIntegerTruncation; in EmitIntegerTruncationCheckHelper()
993 Kind = ScalarExprEmitter::ICCK_SignedIntegerTruncation; in EmitIntegerTruncationCheckHelper()
1011 void ScalarExprEmitter::EmitIntegerTruncationCheck(Value *Src, QualType SrcType, in EmitIntegerTruncationCheck()
1042 std::pair<ScalarExprEmitter::ImplicitConversionCheckKind, in EmitIntegerTruncationCheck()
1062 static std::pair<ScalarExprEmitter::ImplicitConversionCheckKind,
1116 ScalarExprEmitter::ICCK_IntegerSignChange, in EmitIntegerSignChangeCheckHelper()
1120 void ScalarExprEmitter::EmitIntegerSignChangeCheck(Value *Src, QualType SrcType, in EmitIntegerSignChangeCheck()
1167 std::pair<ScalarExprEmitter::ImplicitConversionCheckKind, in EmitIntegerSignChangeCheck()
1202 Value *ScalarExprEmitter::EmitScalarCast(Value *Src, QualType SrcType, in EmitScalarCast()
1263 Value *ScalarExprEmitter::EmitScalarConversion(Value *Src, QualType SrcType, in EmitScalarConversion()
1481 Value *ScalarExprEmitter::EmitFixedPointConversion(Value *Src, QualType SrcTy, in EmitFixedPointConversion()
1512 Value *ScalarExprEmitter::EmitComplexToScalarConversion( in EmitComplexToScalarConversion()
1533 Value *ScalarExprEmitter::EmitNullValue(QualType Ty) { in EmitNullValue()
1541 void ScalarExprEmitter::EmitBinOpCheck( in EmitBinOpCheck()
1592 Value *ScalarExprEmitter::VisitExpr(Expr *E) { in VisitExpr()
1600 ScalarExprEmitter::VisitSYCLUniqueStableNameExpr(SYCLUniqueStableNameExpr *E) { in VisitSYCLUniqueStableNameExpr()
1619 Value *ScalarExprEmitter::VisitShuffleVectorExpr(ShuffleVectorExpr *E) { in VisitShuffleVectorExpr()
1673 Value *ScalarExprEmitter::VisitConvertVectorExpr(ConvertVectorExpr *E) { in VisitConvertVectorExpr()
1747 Value *ScalarExprEmitter::VisitMemberExpr(MemberExpr *E) { in VisitMemberExpr()
1763 Value *ScalarExprEmitter::VisitArraySubscriptExpr(ArraySubscriptExpr *E) { in VisitArraySubscriptExpr()
1786 Value *ScalarExprEmitter::VisitMatrixSubscriptExpr(MatrixSubscriptExpr *E) { in VisitMatrixSubscriptExpr()
1821 Value *ScalarExprEmitter::VisitInitListExpr(InitListExpr *E) { in VisitInitListExpr()
1998 Value *ScalarExprEmitter::VisitCastExpr(CastExpr *CE) { in VisitCastExpr()
2435 Value *ScalarExprEmitter::VisitStmtExpr(const StmtExpr *E) { in VisitStmtExpr()
2445 Value *ScalarExprEmitter::VisitExprWithCleanups(ExprWithCleanups *E) { in VisitExprWithCleanups()
2471 llvm::Value *ScalarExprEmitter::EmitIncDecConsiderOverflowBehavior( in EmitIncDecConsiderOverflowBehavior()
2512 ScalarExprEmitter::EmitScalarPrePostIncDec(const UnaryOperator *E, LValue LV, in EmitScalarPrePostIncDec()
2822 Value *ScalarExprEmitter::VisitUnaryMinus(const UnaryOperator *E) { in VisitUnaryMinus()
2841 Value *ScalarExprEmitter::VisitUnaryNot(const UnaryOperator *E) { in VisitUnaryNot()
2847 Value *ScalarExprEmitter::VisitUnaryLNot(const UnaryOperator *E) { in VisitUnaryLNot()
2876 Value *ScalarExprEmitter::VisitOffsetOfExpr(OffsetOfExpr *E) { in VisitOffsetOfExpr()
2970 ScalarExprEmitter::VisitUnaryExprOrTypeTraitExpr( in VisitUnaryExprOrTypeTraitExpr()
3009 Value *ScalarExprEmitter::VisitUnaryReal(const UnaryOperator *E) { in VisitUnaryReal()
3026 Value *ScalarExprEmitter::VisitUnaryImag(const UnaryOperator *E) { in VisitUnaryImag()
3053 BinOpInfo ScalarExprEmitter::EmitBinOps(const BinaryOperator *E) { in EmitBinOps()
3065 LValue ScalarExprEmitter::EmitCompoundAssignLValue( in EmitCompoundAssignLValue()
3067 Value *(ScalarExprEmitter::*Func)(const BinOpInfo &), in EmitCompoundAssignLValue()
3196 Value *ScalarExprEmitter::EmitCompoundAssign(const CompoundAssignOperator *E, in EmitCompoundAssign()
3197 Value *(ScalarExprEmitter::*Func)(const BinOpInfo &)) { in EmitCompoundAssign()
3218 void ScalarExprEmitter::EmitUndefinedBehaviorIntegerDivAndRemCheck( in EmitUndefinedBehaviorIntegerDivAndRemCheck()
3249 Value *ScalarExprEmitter::EmitDiv(const BinOpInfo &Ops) { in EmitDiv()
3313 Value *ScalarExprEmitter::EmitRem(const BinOpInfo &Ops) { in EmitRem()
3330 Value *ScalarExprEmitter::EmitOverflowCheckedBinOp(const BinOpInfo &Ops) { in EmitOverflowCheckedBinOp()
3642 Value *ScalarExprEmitter::EmitAdd(const BinOpInfo &op) { in EmitAdd()
3690 Value *ScalarExprEmitter::EmitFixedPointBinOp(const BinOpInfo &op) { in EmitFixedPointBinOp()
3794 Value *ScalarExprEmitter::EmitSub(const BinOpInfo &op) { in EmitSub()
3894 Value *ScalarExprEmitter::GetWidthMinusOneValue(Value* LHS,Value* RHS) { in GetWidthMinusOneValue()
3903 Value *ScalarExprEmitter::ConstrainShiftValue(Value *LHS, Value *RHS, in ConstrainShiftValue()
3918 Value *ScalarExprEmitter::EmitShl(const BinOpInfo &Ops) { in EmitShl()
3996 Value *ScalarExprEmitter::EmitShr(const BinOpInfo &Ops) { in EmitShr()
4072 Value *ScalarExprEmitter::EmitCompare(const BinaryOperator *E, in EmitCompare()
4256 Value *ScalarExprEmitter::VisitBinAssign(const BinaryOperator *E) { in VisitBinAssign()
4315 Value *ScalarExprEmitter::VisitBinLAnd(const BinaryOperator *E) { in VisitBinLAnd()
4431 Value *ScalarExprEmitter::VisitBinLOr(const BinaryOperator *E) { in VisitBinLOr()
4541 Value *ScalarExprEmitter::VisitBinComma(const BinaryOperator *E) { in VisitBinComma()
4569 Value *ScalarExprEmitter::
4719 Value *ScalarExprEmitter::VisitChooseExpr(ChooseExpr *E) { in VisitChooseExpr()
4723 Value *ScalarExprEmitter::VisitVAArgExpr(VAArgExpr *VE) { in VisitVAArgExpr()
4754 Value *ScalarExprEmitter::VisitBlockExpr(const BlockExpr *block) { in VisitBlockExpr()
4812 Value *ScalarExprEmitter::VisitAsTypeExpr(AsTypeExpr *E) { in VisitAsTypeExpr()
4859 Value *ScalarExprEmitter::VisitAtomicExpr(AtomicExpr *E) { in VisitAtomicExpr()
4873 return ScalarExprEmitter(*this, IgnoreResultAssign) in EmitScalarExpr()
4884 return ScalarExprEmitter(*this).EmitScalarConversion(Src, SrcTy, DstTy, Loc); in EmitScalarConversion()
4895 return ScalarExprEmitter(*this) in EmitComplexToScalarConversion()
4903 return ScalarExprEmitter(*this).EmitScalarPrePostIncDec(E, LV, isInc, isPre); in EmitScalarPrePostIncDec()
4928 ScalarExprEmitter Scalar(*this); in EmitCompoundAssignmentLValue()
4933 return Scalar.EmitCompoundAssignLValue(E, &ScalarExprEmitter::Emit##Op, \ in EmitCompoundAssignmentLValue()