| /openbsd-src/gnu/llvm/clang/lib/CodeGen/ |
| H A D | CGObjCRuntime.cpp | 54 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 D | CGOpenMPRuntimeGPU.cpp | 47 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 D | CGOpenMPRuntime.cpp | 87 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 D | CGStmtOpenMP.cpp | 48 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 D | CGExprAgg.cpp | 38 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 D | CGCXXABI.cpp | 23 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 D | CGOpenMPRuntime.h | 61 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 D | CGExprScalar.cpp | 217 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 D | CGCXXABI.h | 54 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 D | ItaniumCXXABI.cpp | 121 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 D | CGAtomic.cpp | 31 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 D | MicrosoftCXXABI.cpp | 120 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 D | CGNonTrivialStruct.cpp | 327 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 D | CGExprComplex.cpp | 46 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 D | CGCoroutine.cpp | 89 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 D | CGOpenMPRuntimeGPU.h | 46 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 D | CGCUDARuntime.cpp | 26 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 D | CGObjC.cpp | 38 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 D | CGExprCXX.cpp | 36 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 D | CGObjCRuntime.h | 87 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 D | CGException.cpp | 247 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 D | CodeGenFunction.h | 161 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 D | CGClass.cpp | 248 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 D | CGObjCMac.cpp | 1034 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 D | CGCleanup.cpp | 35 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 …]
|