Lines Matching defs:CGF

43   CodeGenFunction &CGF;
49 : CGF(cgf), Builder(CGF.Builder), IgnoreReal(ir), IgnoreImag(ii) {
72 return EmitLoadOfLValue(CGF.EmitLValue(E));
94 S->dump(CGF.getContext().getSourceManager());
110 if (CodeGenFunction::ConstantEmission result = CGF.tryEmitAsConstant(E)) {
112 return EmitLoadOfLValue(result.getReferenceLValue(CGF, E));
124 return CGF.EmitObjCMessageExpr(E).getComplexVal();
130 return EmitLoadOfLValue(CGF.getOpaqueLValueMapping(E));
131 return CGF.getOpaqueRValueMapping(E).getComplexVal();
135 return CGF.EmitPseudoObjectRValue(E).getComplexVal();
155 LValue LV = CGF.EmitLValue(E->getSubExpr());
156 return CGF.EmitComplexPrePostIncDec(E, LV, isInc, isPre);
186 CGF.enterFullExpression(E);
187 CodeGenFunction::RunCleanupsScope Scope(CGF);
193 llvm::Constant *Null = llvm::Constant::getNullValue(CGF.ConvertType(Elem));
200 llvm::Constant::getNullValue(CGF.ConvertType(Elem));
275 return CGF.EmitAtomicExpr(E).getComplexVal();
289 return CGF.EmitAtomicLoad(lvalue).getComplexVal();
316 return CGF.EmitAtomicStore(RValue::getComplex(Val), lvalue, isInit);
334 CGF.ErrorUnsupported(E, "complex expression");
336 CGF.ConvertType(getComplexType(E->getType())->getElementType());
343 llvm::Value *Imag = CGF.EmitScalarExpr(IL->getSubExpr());
352 return CGF.EmitCallExpr(E).getComplexVal();
356 CodeGenFunction::StmtExprEvaluation eval(CGF);
357 return CGF.EmitCompoundStmt(*E->getSubStmt(), true).getComplexVal();
371 Val.first = CGF.EmitScalarConversion(Val.first, SrcType, DestType);
372 Val.second = CGF.EmitScalarConversion(Val.second, SrcType, DestType);
391 LValue origLV = CGF.EmitLValue(Op);
394 CGF.ConvertType(CGF.getContext().getPointerType(DestTy)));
395 return EmitLoadOfLValue(CGF.MakeAddrLValue(V, DestTy,
444 llvm::Value *Elt = CGF.EmitScalarExpr(Op);
448 Elt = CGF.EmitScalarConversion(Elt, Op->getType(), DestTy);
621 assert(CGF.getContext().hasSameUnqualifiedType(OpInfo.Ty,
625 LValue LHS = CGF.EmitLValue(E->getLHS());
653 if (!CGF.getLangOpts().CPlusPlus)
665 assert(CGF.getContext().hasSameUnqualifiedType(E->getLHS()->getType(),
675 LValue LHS = CGF.EmitLValue(E->getLHS());
688 if (!CGF.getLangOpts().CPlusPlus)
699 CGF.EmitIgnoredExpr(E->getLHS());
707 llvm::BasicBlock *LHSBlock = CGF.createBasicBlock("cond.true");
708 llvm::BasicBlock *RHSBlock = CGF.createBasicBlock("cond.false");
709 llvm::BasicBlock *ContBlock = CGF.createBasicBlock("cond.end");
712 CodeGenFunction::OpaqueValueMapping binding(CGF, E);
714 CodeGenFunction::ConditionalEvaluation eval(CGF);
715 CGF.EmitBranchOnBoolExpr(E->getCond(), LHSBlock, RHSBlock);
717 eval.begin(CGF);
718 CGF.EmitBlock(LHSBlock);
721 CGF.EmitBranch(ContBlock);
722 eval.end(CGF);
724 eval.begin(CGF);
725 CGF.EmitBlock(RHSBlock);
728 CGF.EmitBlock(ContBlock);
729 eval.end(CGF);
745 return Visit(E->getChosenSubExpr(CGF.getContext()));
757 llvm::Value *Real = CGF.EmitScalarExpr(E->getInit(0));
758 llvm::Value *Imag = CGF.EmitScalarExpr(E->getInit(1));
767 llvm::Type* LTy = CGF.ConvertType(Ty);
773 llvm::Value *ArgValue = CGF.EmitVAListRef(E->getSubExpr());
774 llvm::Value *ArgPtr = CGF.EmitVAArg(ArgValue, E->getType());
777 CGF.ErrorUnsupported(E, "complex va_arg expression");
779 CGF.ConvertType(E->getType()->castAs<ComplexType>()->getElementType());
785 CGF.MakeNaturalAlignAddrLValue(ArgPtr, E->getType()));