Home
last modified time | relevance | path

Searched refs:CGF (Results 1 – 25 of 74) sorted by relevance

123

/openbsd-src/gnu/llvm/clang/lib/CodeGen/
H A DCGObjCRuntime.cpp54 LValue CGObjCRuntime::EmitValueForIvarAtOffset(CodeGen::CodeGenFunction &CGF, in EmitValueForIvarAtOffset() argument
63 CGF.CGM.getContext().getObjCObjectPointerType(InterfaceTy); in EmitValueForIvarAtOffset()
66 llvm::Type *LTy = CGF.CGM.getTypes().ConvertTypeForMem(IvarTy); in EmitValueForIvarAtOffset()
67 llvm::Value *V = CGF.Builder.CreateBitCast(BaseValue, CGF.Int8PtrTy); in EmitValueForIvarAtOffset()
68 V = CGF.Builder.CreateInBoundsGEP(CGF.Int8Ty, V, Offset, "add.ptr"); in EmitValueForIvarAtOffset()
71 V = CGF.Builder.CreateBitCast(V, llvm::PointerType::getUnqual(LTy)); in EmitValueForIvarAtOffset()
72 LValue LV = CGF.MakeNaturalAlignAddrLValue(V, IvarTy); in EmitValueForIvarAtOffset()
91 CGF.CGM.getContext().lookupFieldBitOffset(OID, nullptr, Ivar); in EmitValueForIvarAtOffset()
92 uint64_t BitOffset = FieldBitOffset % CGF.CGM.getContext().getCharWidth(); in EmitValueForIvarAtOffset()
93 uint64_t AlignmentBits = CGF.CGM.getTarget().getCharAlign(); in EmitValueForIvarAtOffset()
[all …]
H A DCGOpenMPRuntimeGPU.cpp47 void Enter(CodeGenFunction &CGF) override { in Enter() argument
48 llvm::Value *EnterRes = CGF.EmitRuntimeCall(EnterCallee, EnterArgs); in Enter()
50 llvm::Value *CallBool = CGF.Builder.CreateIsNotNull(EnterRes); in Enter()
51 auto *ThenBlock = CGF.createBasicBlock("omp_if.then"); in Enter()
52 ContBlock = CGF.createBasicBlock("omp_if.end"); in Enter()
54 CGF.Builder.CreateCondBr(CallBool, ThenBlock, ContBlock); in Enter()
55 CGF.EmitBlock(ThenBlock); in Enter()
58 void Done(CodeGenFunction &CGF) { in Done() argument
60 CGF.EmitBranch(ContBlock); in Done()
61 CGF.EmitBlock(ContBlock, true); in Done()
[all …]
H A DCGOpenMPRuntime.cpp87 void EmitBody(CodeGenFunction &CGF, const Stmt *S) override;
91 virtual LValue getThreadIDVariableLValue(CodeGenFunction &CGF);
160 void Enter(CodeGenFunction &CGF) override { in Enter() argument
163 LValue PartIdLVal = CGF.EmitLoadOfPointerLValue( in Enter()
164 CGF.GetAddrOfLocalVar(PartIDVar), in Enter()
167 CGF.EmitLoadOfScalar(PartIdLVal, PartIDVar->getLocation()); in Enter()
168 llvm::BasicBlock *DoneBB = CGF.createBasicBlock(".untied.done."); in Enter()
169 UntiedSwitch = CGF.Builder.CreateSwitch(Res, DoneBB); in Enter()
170 CGF.EmitBlock(DoneBB); in Enter()
171 CGF.EmitBranchThroughCleanup(CGF.ReturnBlock); in Enter()
[all …]
H A DCGStmtOpenMP.cpp48 void emitPreInitStmt(CodeGenFunction &CGF, const OMPExecutableDirective &S) { in emitPreInitStmt() argument
55 CGF.EmitVarDecl(cast<VarDecl>(*I)); in emitPreInitStmt()
58 CGF.EmitAutoVarAlloca(cast<VarDecl>(*I)); in emitPreInitStmt()
59 CGF.EmitAutoVarCleanups(Emission); in emitPreInitStmt()
68 static bool isCapturedVar(CodeGenFunction &CGF, const VarDecl *VD) { in isCapturedVar() argument
69 return CGF.LambdaCaptureFields.lookup(VD) || in isCapturedVar()
70 (CGF.CapturedStmtInfo && CGF.CapturedStmtInfo->lookup(VD)) || in isCapturedVar()
71 (CGF.CurCodeDecl && isa<BlockDecl>(CGF.CurCodeDecl) && in isCapturedVar()
72 cast<BlockDecl>(CGF.CurCodeDecl)->capturesVariable(VD)); in isCapturedVar()
77 CodeGenFunction &CGF, const OMPExecutableDirective &S, in OMPLexicalScope() argument
[all …]
H A DCGExprAgg.cpp38 CodeGenFunction &CGF; member in __anond965ffcd0111::AggExprEmitter
45 return CGF.CreateAggTemp(T, "agg.tmp.ensured"); in EnsureSlot()
49 Dest = CGF.CreateAggTemp(T, "agg.tmp.ensured"); in EnsureDest()
63 : CGF(cgf), Builder(CGF.Builder), Dest(Dest), in AggExprEmitter()
95 if (CGF.getLangOpts().getGC() && TypeRequiresGCollection(T)) in needsGC()
107 ApplyDebugLocation DL(CGF, E); in Visit()
112 CGF.ErrorUnsupported(S, "aggregate expression"); in VisitStmt()
119 CGF.EmitCoawaitExpr(*E, Dest, IsResultUnused); in VisitCoawaitExpr()
122 CGF.EmitCoyieldExpr(*E, Dest, IsResultUnused); in VisitCoyieldExpr()
133 if (llvm::Value *Result = ConstantEmitter(CGF).tryEmitConstantExpr(E)) { in VisitConstantExpr()
[all …]
H A DCGCXXABI.cpp23 void CGCXXABI::ErrorUnsupportedABI(CodeGenFunction &CGF, StringRef S) { in ErrorUnsupportedABI() argument
24 DiagnosticsEngine &Diags = CGF.CGM.getDiags(); in ErrorUnsupportedABI()
27 Diags.Report(CGF.getContext().getFullLoc(CGF.CurCodeDecl->getLocation()), in ErrorUnsupportedABI()
42 CodeGenFunction &CGF, const Expr *E, Address This, in EmitLoadOfMemberFunctionPointer() argument
45 ErrorUnsupportedABI(CGF, "calls through member pointers"); in EmitLoadOfMemberFunctionPointer()
58 CGCXXABI::EmitMemberDataPointerAddress(CodeGenFunction &CGF, const Expr *E, in EmitMemberDataPointerAddress() argument
61 ErrorUnsupportedABI(CGF, "loads of member pointers"); in EmitMemberDataPointerAddress()
62 llvm::Type *Ty = CGF.ConvertType(MPT->getPointeeType()) in EmitMemberDataPointerAddress()
67 llvm::Value *CGCXXABI::EmitMemberPointerConversion(CodeGenFunction &CGF, in EmitMemberPointerConversion() argument
70 ErrorUnsupportedABI(CGF, "member function pointer conversions"); in EmitMemberPointerConversion()
[all …]
H A DCGOpenMPRuntime.h61 virtual void Enter(CodeGenFunction &CGF) {} in Enter() argument
62 virtual void Exit(CodeGenFunction &CGF) {} in Exit() argument
75 static void CallbackFn(intptr_t CodeGen, CodeGenFunction &CGF, in CallbackFn() argument
77 return (*reinterpret_cast<Callable *>(CodeGen))(CGF, Action); in CallbackFn()
90 void operator()(CodeGenFunction &CGF) const;
158 LValue emitSharedLValue(CodeGenFunction &CGF, const Expr *E);
160 LValue emitSharedLValueUB(CodeGenFunction &CGF, const Expr *E);
166 void emitAggregateInitialization(CodeGenFunction &CGF, unsigned N,
176 void emitSharedOrigLValue(CodeGenFunction &CGF, unsigned N);
179 void emitAggregateType(CodeGenFunction &CGF, unsigned N);
[all …]
H A DCGExprScalar.cpp217 CodeGenFunction &CGF; member in __anonb4bd95340111::ScalarExprEmitter
224 : CGF(cgf), Builder(CGF.Builder), IgnoreResultAssign(ira), in ScalarExprEmitter()
238 llvm::Type *ConvertType(QualType T) { return CGF.ConvertType(T); } in ConvertType()
239 LValue EmitLValue(const Expr *E) { return CGF.EmitLValue(E); } in EmitLValue()
241 return CGF.EmitCheckedLValue(E, TCK); in EmitCheckedLValue()
248 return CGF.EmitLoadOfLValue(LV, Loc).getScalarVal(); in EmitLoadOfLValue()
266 if (isa<ParmVarDecl>(VD) && !CGF.SanOpts.has(SanitizerKind::Alignment)) in EmitLValueAlignmentAssumption()
280 Value *AlignmentValue = CGF.EmitScalarExpr(AVAttr->getAlignment()); in EmitLValueAlignmentAssumption()
282 CGF.emitAlignmentAssumption(V, E, AVAttr->getLocation(), AlignmentCI); in EmitLValueAlignmentAssumption()
377 Value *Zero = CGF.CGM.getNullPointer(cast<llvm::PointerType>(V->getType()), QT); in EmitPointerToBoolConversion()
[all …]
H A DCGCXXABI.h54 ImplicitParamDecl *getThisDecl(CodeGenFunction &CGF) { in getThisDecl() argument
55 return CGF.CXXABIThisDecl; in getThisDecl()
57 llvm::Value *getThisValue(CodeGenFunction &CGF) { in getThisValue() argument
58 return CGF.CXXABIThisValue; in getThisValue()
60 Address getThisAddress(CodeGenFunction &CGF) { in getThisAddress() argument
62 CGF.CXXABIThisValue, in getThisAddress()
63 CGF.ConvertTypeForMem(CGF.CXXABIThisDecl->getType()->getPointeeType()), in getThisAddress()
64 CGF.CXXABIThisAlignment); in getThisAddress()
68 void ErrorUnsupportedABI(CodeGenFunction &CGF, StringRef S);
73 ImplicitParamDecl *&getStructorImplicitParamDecl(CodeGenFunction &CGF) { in getStructorImplicitParamDecl() argument
[all …]
H A DItaniumCXXABI.cpp121 EmitLoadOfMemberFunctionPointer(CodeGenFunction &CGF,
129 EmitMemberDataPointerAddress(CodeGenFunction &CGF, const Expr *E,
134 llvm::Value *EmitMemberPointerConversion(CodeGenFunction &CGF,
149 llvm::Value *EmitMemberPointerComparison(CodeGenFunction &CGF,
154 llvm::Value *EmitMemberPointerIsNotNull(CodeGenFunction &CGF,
158 void emitVirtualObjectDelete(CodeGenFunction &CGF, const CXXDeleteExpr *DE,
162 void emitRethrow(CodeGenFunction &CGF, bool isNoReturn) override;
163 void emitThrow(CodeGenFunction &CGF, const CXXThrowExpr *E) override;
165 void emitBeginCatch(CodeGenFunction &CGF, const CXXCatchStmt *C) override;
168 emitTerminateForUnexpectedException(CodeGenFunction &CGF,
[all …]
H A DCGAtomic.cpp31 CodeGenFunction &CGF; member in __anonce6b933c0111::AtomicInfo
43 AtomicInfo(CodeGenFunction &CGF, LValue &lvalue) in AtomicInfo() argument
44 : CGF(CGF), AtomicSizeInBits(0), ValueSizeInBits(0), in AtomicInfo()
47 ASTContext &C = CGF.getContext(); in AtomicInfo()
54 EvaluationKind = CGF.getEvaluationKind(ValueTy); in AtomicInfo()
83 auto VoidPtrAddr = CGF.EmitCastToVoidPtr(lvalue.getBitFieldPointer()); in AtomicInfo()
87 VoidPtrAddr = CGF.Builder.CreateConstGEP1_64( in AtomicInfo()
88 CGF.Int8Ty, VoidPtrAddr, OffsetInChars.getQuantity()); in AtomicInfo()
89 llvm::Type *IntTy = CGF.Builder.getIntNTy(AtomicSizeInBits); in AtomicInfo()
90 auto Addr = CGF.Builder.CreatePointerBitCastOrAddrSpaceCast( in AtomicInfo()
[all …]
H A DMicrosoftCXXABI.cpp120 void emitVirtualObjectDelete(CodeGenFunction &CGF, const CXXDeleteExpr *DE,
124 void emitRethrow(CodeGenFunction &CGF, bool isNoReturn) override;
125 void emitThrow(CodeGenFunction &CGF, const CXXThrowExpr *E) override;
127 void emitBeginCatch(CodeGenFunction &CGF, const CXXCatchStmt *C) override;
147 void EmitBadTypeidCall(CodeGenFunction &CGF) override;
148 llvm::Value *EmitTypeid(CodeGenFunction &CGF, QualType SrcRecordTy,
155 llvm::Value *EmitDynamicCastCall(CodeGenFunction &CGF, Address Value,
160 llvm::Value *EmitDynamicCastToVoid(CodeGenFunction &CGF, Address Value,
164 bool EmitBadCastCall(CodeGenFunction &CGF) override;
170 GetVirtualBaseClassOffset(CodeGenFunction &CGF, Address This,
[all …]
H A DCGNonTrivialStruct.cpp327 CodeGenFunction *CGF) { in getParamAddrs() argument
329 {Address(CGF->Builder.CreateLoad(CGF->GetAddrOfLocalVar(Args[Ints])), in getParamAddrs()
330 CGF->VoidPtrTy, Alignments[Ints])...}}; in getParamAddrs()
353 CodeGenFunction &CGF = *this->CGF; in visitArray() local
354 ASTContext &Ctx = CGF.getContext(); in visitArray()
362 llvm::Value *NumElts = CGF.emitArrayLength(AT, BaseEltQT, DstAddr); in visitArray()
367 CGF.Builder.CreateNUWMul(BaseEltSizeVal, NumElts); in visitArray()
368 Address BC = CGF.Builder.CreateElementBitCast(DstAddr, CGF.CGM.Int8Ty); in visitArray()
370 CGF.Builder.CreateInBoundsGEP(CGF.Int8Ty, BC.getPointer(), SizeInBytes); in visitArray()
371 DstArrayEnd = CGF.Builder.CreateBitCast( in visitArray()
[all …]
H A DCGExprComplex.cpp46 CodeGenFunction &CGF; member in __anon838baf360111::ComplexExprEmitter
52 : CGF(cgf), Builder(CGF.Builder), IgnoreReal(ir), IgnoreImag(ii) { in ComplexExprEmitter()
75 return EmitLoadOfLValue(CGF.EmitLValue(E), E->getExprLoc()); in EmitLoadOfLValue()
96 ApplyDebugLocation DL(CGF, E); in Visit()
101 S->dump(llvm::errs(), CGF.getContext()); in VisitStmt()
106 if (llvm::Constant *Result = ConstantEmitter(CGF).tryEmitConstantExpr(E)) in VisitConstantExpr()
121 return CGF.EmitCoawaitExpr(*S).getComplexVal(); in VisitCoawaitExpr()
124 return CGF.EmitCoyieldExpr(*S).getComplexVal(); in VisitCoyieldExpr()
134 return EmitLoadOfLValue(Constant.getReferenceLValue(CGF, E), in emitConstant()
144 if (CodeGenFunction::ConstantEmission Constant = CGF.tryEmitAsConstant(E)) in VisitDeclRefExpr()
[all …]
H A DCGCoroutine.cpp89 static void createCoroData(CodeGenFunction &CGF, in createCoroData() argument
95 CGF.CGM.Error(CoroIdExpr->getBeginLoc(), in createCoroData()
98 CGF.CGM.Error(CoroIdExpr->getBeginLoc(), in createCoroData()
175 static LValueOrRValue emitSuspendExpression(CodeGenFunction &CGF, CGCoroData &Coro, in emitSuspendExpression() argument
182 CodeGenFunction::OpaqueValueMappingData::bind(CGF, S.getOpaqueValue(), E); in emitSuspendExpression()
183 auto UnbindOnExit = llvm::make_scope_exit([&] { Binder.unbind(CGF); }); in emitSuspendExpression()
186 BasicBlock *ReadyBlock = CGF.createBasicBlock(Prefix + Twine(".ready")); in emitSuspendExpression()
187 BasicBlock *SuspendBlock = CGF.createBasicBlock(Prefix + Twine(".suspend")); in emitSuspendExpression()
188 BasicBlock *CleanupBlock = CGF.createBasicBlock(Prefix + Twine(".cleanup")); in emitSuspendExpression()
191 CGF.EmitBranchOnBoolExpr(S.getReadyExpr(), ReadyBlock, SuspendBlock, 0); in emitSuspendExpression()
[all …]
H A DCGOpenMPRuntimeGPU.h46 void syncCTAThreads(CodeGenFunction &CGF);
49 void emitKernelInit(CodeGenFunction &CGF, EntryFunctionState &EST,
53 void emitKernelDeinit(CodeGenFunction &CGF, EntryFunctionState &EST,
57 void emitGenericVarsProlog(CodeGenFunction &CGF, SourceLocation Loc,
61 void emitGenericVarsEpilog(CodeGenFunction &CGF, bool WithSPMDCheck = false);
123 void emitNonSPMDParallelCall(CodeGenFunction &CGF, SourceLocation Loc,
139 void emitSPMDParallelCall(CodeGenFunction &CGF, SourceLocation Loc,
167 llvm::Value *getGPUWarpSize(CodeGenFunction &CGF);
170 llvm::Value *getGPUThreadID(CodeGenFunction &CGF);
173 llvm::Value *getGPUNumThreads(CodeGenFunction &CGF);
[all …]
H A DCGCUDARuntime.cpp26 RValue CGCUDARuntime::EmitCUDAKernelCallExpr(CodeGenFunction &CGF, in EmitCUDAKernelCallExpr() argument
29 llvm::BasicBlock *ConfigOKBlock = CGF.createBasicBlock("kcall.configok"); in EmitCUDAKernelCallExpr()
30 llvm::BasicBlock *ContBlock = CGF.createBasicBlock("kcall.end"); in EmitCUDAKernelCallExpr()
32 CodeGenFunction::ConditionalEvaluation eval(CGF); in EmitCUDAKernelCallExpr()
33 CGF.EmitBranchOnBoolExpr(E->getConfig(), ContBlock, ConfigOKBlock, in EmitCUDAKernelCallExpr()
36 eval.begin(CGF); in EmitCUDAKernelCallExpr()
37 CGF.EmitBlock(ConfigOKBlock); in EmitCUDAKernelCallExpr()
38 CGF.EmitSimpleCallExpr(E, ReturnValue); in EmitCUDAKernelCallExpr()
39 CGF.EmitBranch(ContBlock); in EmitCUDAKernelCallExpr()
41 CGF.EmitBlock(ContBlock); in EmitCUDAKernelCallExpr()
[all …]
H A DCGObjC.cpp38 tryEmitARCRetainScalarExpr(CodeGenFunction &CGF, const Expr *e);
39 static RValue AdjustObjCObjectType(CodeGenFunction &CGF,
273 static RValue AdjustObjCObjectType(CodeGenFunction &CGF, QualType ExpT, in AdjustObjCObjectType() argument
279 llvm::Type *ExpLLVMTy = CGF.ConvertType(ExpT); in AdjustObjCObjectType()
284 return RValue::get(CGF.Builder.CreateBitCast(Result.getScalarVal(), in AdjustObjCObjectType()
378 CodeGenFunction &CGF, QualType ResultType, llvm::Value *Receiver, in tryGenerateSpecializedMessageSend() argument
381 auto &CGM = CGF.CGM; in tryGenerateSpecializedMessageSend()
394 return CGF.EmitObjCAlloc(Receiver, CGF.ConvertType(ResultType)); in tryGenerateSpecializedMessageSend()
402 return CGF.EmitObjCAllocWithZone(Receiver, in tryGenerateSpecializedMessageSend()
403 CGF.ConvertType(ResultType)); in tryGenerateSpecializedMessageSend()
[all …]
H A DCGExprCXX.cpp36 commonEmitCXXMemberOrOperatorCall(CodeGenFunction &CGF, GlobalDecl GD, in commonEmitCXXMemberOrOperatorCall() argument
49 CGF.CGM.getCXXABI().getThisArgumentTypeForMethod(GD); in commonEmitCXXMemberOrOperatorCall()
50 Args.add(RValue::get(This), CGF.getTypes().DeriveThisType(RD, MD)); in commonEmitCXXMemberOrOperatorCall()
70 CGF.EmitCallArgs(Args, FPT, drop_begin(CE->arguments(), ArgsToSkip), in commonEmitCXXMemberOrOperatorCall()
499 static void EmitNullBaseClassInitialization(CodeGenFunction &CGF, in EmitNullBaseClassInitialization() argument
505 DestPtr = CGF.Builder.CreateElementBitCast(DestPtr, CGF.Int8Ty); in EmitNullBaseClassInitialization()
507 const ASTRecordLayout &Layout = CGF.getContext().getASTRecordLayout(Base); in EmitNullBaseClassInitialization()
517 CharUnits VBPtrWidth = CGF.getPointerSize(); in EmitNullBaseClassInitialization()
519 CGF.CGM.getCXXABI().getVBPtrOffsets(Base); in EmitNullBaseClassInitialization()
547 llvm::Constant *NullConstantForBase = CGF.CGM.EmitNullConstantForBase(Base); in EmitNullBaseClassInitialization()
[all …]
H A DCGObjCRuntime.h87 LValue EmitValueForIvarAtOffset(CodeGen::CodeGenFunction &CGF,
100 void EmitTryCatchStmt(CodeGenFunction &CGF, const ObjCAtTryStmt &S,
105 void EmitInitOfCatchParam(CodeGenFunction &CGF, llvm::Value *exn,
112 void EmitAtSynchronizedStmt(CodeGenFunction &CGF,
129 virtual llvm::Value *GetSelector(CodeGenFunction &CGF, Selector Sel) = 0;
136 virtual Address GetAddrOfSelector(CodeGenFunction &CGF, Selector Sel) = 0;
139 virtual llvm::Value *GetSelector(CodeGenFunction &CGF,
168 GenerateMessageSend(CodeGen::CodeGenFunction &CGF,
182 GeneratePossiblySpecializedMessageSend(CodeGenFunction &CGF,
199 GenerateMessageSendSuper(CodeGen::CodeGenFunction &CGF,
[all …]
H A DCGException.cpp247 const EHPersonality &EHPersonality::get(CodeGenFunction &CGF) { in get() argument
248 const auto *FD = CGF.CurCodeDecl; in get()
252 FD = FD ? FD : CGF.CurSEHParent.getDecl(); in get()
253 return get(CGF.CGM, dyn_cast_or_null<FunctionDecl>(FD)); in get()
374 static llvm::Constant *getCatchAllValue(CodeGenFunction &CGF) { in getCatchAllValue() argument
376 return llvm::ConstantPointerNull::get(CGF.Int8PtrTy); in getCatchAllValue()
385 void Emit(CodeGenFunction &CGF, Flags flags) override { in Emit()
386 CGF.EmitNounwindRuntimeCall(getFreeExceptionFn(CGF.CGM), exn); in Emit()
532 static void emitFilterDispatchBlock(CodeGenFunction &CGF, in emitFilterDispatchBlock() argument
541 CGF.EmitBlockAfterUses(dispatchBlock); in emitFilterDispatchBlock()
[all …]
H A DCodeGenFunction.h161 static saved_type save(CodeGenFunction &CGF, llvm::Value *value);
162 static llvm::Value *restore(CodeGenFunction &CGF, saved_type value);
169 static type restore(CodeGenFunction &CGF, saved_type value) {
170 return static_cast<T*>(DominatingLLVMValue::restore(CGF, value));
187 static saved_type save(CodeGenFunction &CGF, type value) {
188 return { DominatingLLVMValue::save(CGF, value.getPointer()),
191 static type restore(CodeGenFunction &CGF, saved_type value) {
192 return Address(DominatingLLVMValue::restore(CGF, value.SavedValue),
213 static saved_type save(CodeGenFunction &CGF, RValue value);
214 RValue restore(CodeGenFunction &CGF);
[all …]
H A DCGClass.cpp248 ApplyNonVirtualAndVirtualOffset(CodeGenFunction &CGF, Address addr, in ApplyNonVirtualAndVirtualOffset() argument
260 (CGF.CGM.getTarget().getCXXABI().isItaniumFamily() && in ApplyNonVirtualAndVirtualOffset()
261 CGF.CGM.getItaniumVTableContext().isRelativeLayout()) in ApplyNonVirtualAndVirtualOffset()
262 ? CGF.Int32Ty in ApplyNonVirtualAndVirtualOffset()
263 : CGF.PtrDiffTy; in ApplyNonVirtualAndVirtualOffset()
267 baseOffset = CGF.Builder.CreateAdd(virtualOffset, baseOffset); in ApplyNonVirtualAndVirtualOffset()
276 ptr = CGF.Builder.CreateBitCast(ptr, CGF.Int8Ty->getPointerTo(AddrSpace)); in ApplyNonVirtualAndVirtualOffset()
277 ptr = CGF.Builder.CreateInBoundsGEP(CGF.Int8Ty, ptr, baseOffset, "add.ptr"); in ApplyNonVirtualAndVirtualOffset()
284 alignment = CGF.CGM.getVBaseAlignment(addr.getAlignment(), in ApplyNonVirtualAndVirtualOffset()
291 return Address(ptr, CGF.Int8Ty, alignment); in ApplyNonVirtualAndVirtualOffset()
[all …]
H A DCGObjCMac.cpp1034 llvm::Value *EmitClassRefViaRuntime(CodeGenFunction &CGF,
1070 CodeGen::RValue EmitMessageSend(CodeGen::CodeGenFunction &CGF,
1103 void GenerateDirectMethodPrologue(CodeGenFunction &CGF, llvm::Function *Fn,
1244 llvm::Value *EmitClassRef(CodeGenFunction &CGF,
1247 llvm::Value *EmitClassRefFromId(CodeGenFunction &CGF,
1250 llvm::Value *EmitNSAutoreleasePoolClassRef(CodeGenFunction &CGF) override;
1312 llvm::Value *EmitSelector(CodeGenFunction &CGF, Selector Sel);
1322 CodeGen::RValue GenerateMessageSend(CodeGen::CodeGenFunction &CGF,
1331 GenerateMessageSendSuper(CodeGen::CodeGenFunction &CGF,
1338 llvm::Value *GetClass(CodeGenFunction &CGF,
[all …]
H A DCGCleanup.cpp35 DominatingValue<RValue>::saved_type::save(CodeGenFunction &CGF, RValue rv) { in save() argument
45 CGF.CreateDefaultAlignTempAlloca(V->getType(), "saved-rvalue"); in save()
46 CGF.Builder.CreateStore(V, addr); in save()
54 Address addr = CGF.CreateDefaultAlignTempAlloca(ComplexTy, "saved-complex"); in save()
55 CGF.Builder.CreateStore(V.first, CGF.Builder.CreateStructGEP(addr, 0)); in save()
56 CGF.Builder.CreateStore(V.second, CGF.Builder.CreateStructGEP(addr, 1)); in save()
67 CGF.CreateTempAlloca(V.getType(), CGF.getPointerAlign(), "saved-rvalue"); in save()
68 CGF.Builder.CreateStore(V.getPointer(), addr); in save()
76 RValue DominatingValue<RValue>::saved_type::restore(CodeGenFunction &CGF) { in restore() argument
86 return RValue::get(CGF.Builder.CreateLoad(getSavingAddress(Value))); in restore()
[all …]

123