Lines Matching refs:ComplexExprEmitter
44 class ComplexExprEmitter class
45 : public StmtVisitor<ComplexExprEmitter, ComplexPairTy> {
51 ComplexExprEmitter(CodeGenFunction &cgf, bool ir=false, bool ii=false) in ComplexExprEmitter() function in __anonfcbe76150111::ComplexExprEmitter
97 return StmtVisitor<ComplexExprEmitter, ComplexPairTy>::Visit(E); in Visit()
267 ComplexPairTy (ComplexExprEmitter::*Func)
271 ComplexPairTy (ComplexExprEmitter::*Func)
319 return EmitCompoundAssign(E, &ComplexExprEmitter::EmitBinAdd); in VisitBinAddAssign()
322 return EmitCompoundAssign(E, &ComplexExprEmitter::EmitBinSub); in VisitBinSubAssign()
325 return EmitCompoundAssign(E, &ComplexExprEmitter::EmitBinMul); in VisitBinMulAssign()
328 return EmitCompoundAssign(E, &ComplexExprEmitter::EmitBinDiv); in VisitBinDivAssign()
376 ComplexPairTy ComplexExprEmitter::EmitLoadOfLValue(LValue lvalue, in EmitLoadOfLValue()
402 void ComplexExprEmitter::EmitStoreOfComplex(ComplexPairTy Val, LValue lvalue, in EmitStoreOfComplex()
422 ComplexPairTy ComplexExprEmitter::VisitExpr(Expr *E) { in VisitExpr()
430 ComplexPairTy ComplexExprEmitter::
437 ComplexPairTy ComplexExprEmitter::VisitCallExpr(const CallExpr *E) { in VisitCallExpr()
444 ComplexPairTy ComplexExprEmitter::VisitStmtExpr(const StmtExpr *E) { in VisitStmtExpr()
453 ComplexPairTy ComplexExprEmitter::EmitComplexToComplexCast(ComplexPairTy Val, in EmitComplexToComplexCast()
471 ComplexPairTy ComplexExprEmitter::EmitScalarToComplexCast(llvm::Value *Val, in EmitScalarToComplexCast()
483 ComplexPairTy ComplexExprEmitter::EmitCast(CastKind CK, Expr *Op, in EmitCast()
585 ComplexPairTy ComplexExprEmitter::VisitUnaryPlus(const UnaryOperator *E, in VisitUnaryPlus()
596 ComplexPairTy ComplexExprEmitter::VisitPlus(const UnaryOperator *E, in VisitPlus()
605 ComplexPairTy ComplexExprEmitter::VisitUnaryMinus(const UnaryOperator *E, in VisitUnaryMinus()
615 ComplexPairTy ComplexExprEmitter::VisitMinus(const UnaryOperator *E, in VisitMinus()
636 ComplexPairTy ComplexExprEmitter::VisitUnaryNot(const UnaryOperator *E) { in VisitUnaryNot()
650 ComplexPairTy ComplexExprEmitter::EmitBinAdd(const BinOpInfo &Op) { in EmitBinAdd()
670 ComplexPairTy ComplexExprEmitter::EmitBinSub(const BinOpInfo &Op) { in EmitBinSub()
691 ComplexPairTy ComplexExprEmitter::EmitComplexBinOpLibCall(StringRef LibCallName, in EmitComplexBinOpLibCall()
752 ComplexPairTy ComplexExprEmitter::EmitBinMul(const BinOpInfo &Op) { in EmitBinMul()
857 ComplexPairTy ComplexExprEmitter::EmitAlgebraicDiv(llvm::Value *LHSr, in EmitAlgebraicDiv()
891 ComplexPairTy ComplexExprEmitter::EmitRangeReductionDiv(llvm::Value *LHSr, in EmitRangeReductionDiv()
964 ComplexPairTy ComplexExprEmitter::EmitBinDiv(const BinOpInfo &Op) { in EmitBinDiv()
1073 ComplexPairTy ComplexExprEmitter::EmitPromoted(const Expr *E, in EmitPromoted()
1108 return ComplexExprEmitter(*this).EmitPromoted(E, DstTy); in EmitPromotedComplexExpr()
1112 ComplexExprEmitter::EmitPromotedComplexOperand(const Expr *E, in EmitPromotedComplexOperand()
1131 ComplexExprEmitter::BinOpInfo
1132 ComplexExprEmitter::EmitBinOps(const BinaryOperator *E, in EmitBinOps()
1149 LValue ComplexExprEmitter::
1151 ComplexPairTy (ComplexExprEmitter::*Func)(const BinOpInfo&), in EmitCompoundAssignLValue()
1253 ComplexPairTy ComplexExprEmitter::
1255 ComplexPairTy (ComplexExprEmitter::*Func)(const BinOpInfo&)){ in EmitCompoundAssign()
1270 LValue ComplexExprEmitter::EmitBinAssignLValue(const BinaryOperator *E, in EmitBinAssignLValue()
1290 ComplexPairTy ComplexExprEmitter::VisitBinAssign(const BinaryOperator *E) { in VisitBinAssign()
1305 ComplexPairTy ComplexExprEmitter::VisitBinComma(const BinaryOperator *E) { in VisitBinComma()
1310 ComplexPairTy ComplexExprEmitter::
1354 ComplexPairTy ComplexExprEmitter::VisitChooseExpr(ChooseExpr *E) { in VisitChooseExpr()
1358 ComplexPairTy ComplexExprEmitter::VisitInitListExpr(InitListExpr *E) { in VisitInitListExpr()
1382 ComplexPairTy ComplexExprEmitter::VisitVAArgExpr(VAArgExpr *E) { in VisitVAArgExpr()
1409 return ComplexExprEmitter(*this, IgnoreReal, IgnoreImag) in EmitComplexExpr()
1417 ComplexExprEmitter Emitter(*this); in EmitComplexExprIntoLValue()
1425 ComplexExprEmitter(*this).EmitStoreOfComplex(V, dest, isInit); in EmitStoreOfComplex()
1431 return ComplexExprEmitter(*this).EmitLoadOfLValue(src, loc); in EmitLoadOfComplex()
1437 LValue LVal = ComplexExprEmitter(*this).EmitBinAssignLValue(E, Val); in EmitComplexAssignmentLValue()
1444 typedef ComplexPairTy (ComplexExprEmitter::*CompoundFunc)(
1445 const ComplexExprEmitter::BinOpInfo &);
1449 case BO_MulAssign: return &ComplexExprEmitter::EmitBinMul; in getComplexOp()
1450 case BO_DivAssign: return &ComplexExprEmitter::EmitBinDiv; in getComplexOp()
1451 case BO_SubAssign: return &ComplexExprEmitter::EmitBinSub; in getComplexOp()
1452 case BO_AddAssign: return &ComplexExprEmitter::EmitBinAdd; in getComplexOp()
1462 return ComplexExprEmitter(*this).EmitCompoundAssignLValue(E, Op, Val); in EmitComplexCompoundAssignmentLValue()
1470 LValue Ret = ComplexExprEmitter(*this).EmitCompoundAssignLValue(E, Op, Val); in EmitScalarCompoundAssignWithComplex()