Lines Matching refs:CodeGenFunction

38 tryEmitARCRetainScalarExpr(CodeGenFunction &CGF, const Expr *e);
39 static RValue AdjustObjCObjectType(CodeGenFunction &CGF,
51 llvm::Value *CodeGenFunction::EmitObjCStringLiteral(const ObjCStringLiteral *E) in EmitObjCStringLiteral()
65 CodeGenFunction::EmitObjCBoxedExpr(const ObjCBoxedExpr *E) { in EmitObjCBoxedExpr()
124 llvm::Value *CodeGenFunction::EmitObjCCollectionLiteral(const Expr *E, in EmitObjCCollectionLiteral()
247 llvm::Value *CodeGenFunction::EmitObjCArrayLiteral(const ObjCArrayLiteral *E) { in EmitObjCArrayLiteral()
251 llvm::Value *CodeGenFunction::EmitObjCDictionaryLiteral( in EmitObjCDictionaryLiteral()
257 llvm::Value *CodeGenFunction::EmitObjCSelectorExpr(const ObjCSelectorExpr *E) { in EmitObjCSelectorExpr()
265 llvm::Value *CodeGenFunction::EmitObjCProtocolExpr(const ObjCProtocolExpr *E) { in EmitObjCProtocolExpr()
273 static RValue AdjustObjCObjectType(CodeGenFunction &CGF, QualType ExpT, in AdjustObjCObjectType()
378 CodeGenFunction &CGF, QualType ResultType, llvm::Value *Receiver, in tryGenerateSpecializedMessageSend()
439 CodeGenFunction &CGF, ReturnValueSlot Return, QualType ResultType, in GeneratePossiblySpecializedMessageSend()
525 tryEmitSpecializedAllocInit(CodeGenFunction &CGF, const ObjCMessageExpr *OME) { in tryEmitSpecializedAllocInit()
573 RValue CodeGenFunction::EmitObjCMessageExpr(const ObjCMessageExpr *E, in EmitObjCMessageExpr()
723 void Emit(CodeGenFunction &CGF, Flags flags) override { in Emit()
752 void CodeGenFunction::StartObjCMethod(const ObjCMethodDecl *OMD, in StartObjCMethod()
802 static llvm::Value *emitARCRetainLoadOfScalar(CodeGenFunction &CGF,
807 void CodeGenFunction::GenerateObjCMethod(const ObjCMethodDecl *OMD) { in GenerateObjCMethod()
818 static void emitStructGetterCall(CodeGenFunction &CGF, ObjCIvarDecl *ivar, in emitStructGetterCall()
1048 void CodeGenFunction::GenerateObjCGetter(ObjCImplementationDecl *IMP, in GenerateObjCGetter()
1051 CodeGenFunction(CGM).GenerateObjCAtomicGetterCopyHelperFunction(PID); in GenerateObjCGetter()
1086 static void emitCPPObjectAtomicGetterCall(CodeGenFunction &CGF, in emitCPPObjectAtomicGetterCall()
1121 static llvm::Value *emitCmdValueForGetterSetterBody(CodeGenFunction &CGF, in emitCmdValueForGetterSetterBody()
1135 CodeGenFunction::generateObjCGetterBody(const ObjCImplementationDecl *classImpl, in generateObjCGetterBody()
1325 static void emitStructSetterCall(CodeGenFunction &CGF, ObjCMethodDecl *OMD, in emitStructSetterCall()
1369 static void emitCPPObjectAtomicSetterCall(CodeGenFunction &CGF, in emitCPPObjectAtomicSetterCall()
1436 CodeGenFunction::generateObjCSetterBody(const ObjCImplementationDecl *classImpl, in generateObjCSetterBody()
1634 void CodeGenFunction::GenerateObjCSetter(ObjCImplementationDecl *IMP, in GenerateObjCSetter()
1637 CodeGenFunction(CGM).GenerateObjCAtomicSetterCopyHelperFunction(PID); in GenerateObjCSetter()
1652 CodeGenFunction::Destroyer *destroyer;
1656 CodeGenFunction::Destroyer *destroyer, in DestroyIvar()
1661 void Emit(CodeGenFunction &CGF, Flags flags) override { in Emit()
1671 static void destroyARCStrongWithStore(CodeGenFunction &CGF, in destroyARCStrongWithStore()
1678 static void emitCXXDestructMethod(CodeGenFunction &CGF, in emitCXXDestructMethod()
1680 CodeGenFunction::RunCleanupsScope scope(CGF); in emitCXXDestructMethod()
1693 CodeGenFunction::Destroyer *destroyer = nullptr; in emitCXXDestructMethod()
1714 void CodeGenFunction::GenerateObjCCtorDtorMethod(ObjCImplementationDecl *IMP, in GenerateObjCCtorDtorMethod()
1750 llvm::Value *CodeGenFunction::LoadObjCSelf() { in LoadObjCSelf()
1758 QualType CodeGenFunction::TypeOfSelfObject() { in TypeOfSelfObject()
1766 void CodeGenFunction::EmitObjCForCollectionStmt(const ObjCForCollectionStmt &S){ in EmitObjCForCollectionStmt()
2090 void CodeGenFunction::EmitObjCAtTryStmt(const ObjCAtTryStmt &S) { in EmitObjCAtTryStmt()
2094 void CodeGenFunction::EmitObjCAtThrowStmt(const ObjCAtThrowStmt &S) { in EmitObjCAtThrowStmt()
2098 void CodeGenFunction::EmitObjCAtSynchronizedStmt( in EmitObjCAtSynchronizedStmt()
2108 void Emit(CodeGenFunction &CGF, Flags flags) override { in Emit()
2117 llvm::Value *CodeGenFunction::EmitObjCConsumeObject(QualType type, in EmitObjCConsumeObject()
2125 llvm::Value *CodeGenFunction::EmitObjCExtendObjectLifetime(QualType type, in EmitObjCExtendObjectLifetime()
2132 void CodeGenFunction::EmitARCIntrinsicUse(ArrayRef<llvm::Value*> values) { in EmitARCIntrinsicUse()
2144 void CodeGenFunction::EmitARCNoopIntrinsicUse(ArrayRef<llvm::Value *> values) { in EmitARCNoopIntrinsicUse()
2179 CodeGenFunction &CGF, llvm::Value *value, llvm::Type *returnType, in emitARCValueOperation()
2202 static llvm::Value *emitARCLoadOperation(CodeGenFunction &CGF, Address addr, in emitARCLoadOperation()
2224 static llvm::Value *emitARCStoreOperation(CodeGenFunction &CGF, Address addr, in emitARCStoreOperation()
2249 static void emitARCCopyOperation(CodeGenFunction &CGF, Address dst, Address src, in emitARCCopyOperation()
2267 static llvm::Value *emitObjCValueOperation(CodeGenFunction &CGF, in emitObjCValueOperation()
2306 llvm::Value *CodeGenFunction::EmitARCRetain(QualType type, llvm::Value *value) { in EmitARCRetain()
2315 llvm::Value *CodeGenFunction::EmitARCRetainNonBlock(llvm::Value *value) { in EmitARCRetainNonBlock()
2327 llvm::Value *CodeGenFunction::EmitARCRetainBlock(llvm::Value *value, in EmitARCRetainBlock()
2351 static void emitAutoreleasedReturnValueMarker(CodeGenFunction &CGF) { in emitAutoreleasedReturnValueMarker()
2393 CodeGenFunction &CGF) { in emitOptimizedARCReturnCall()
2440 CodeGenFunction::EmitARCRetainAutoreleasedReturnValue(llvm::Value *value) { in EmitARCRetainAutoreleasedReturnValue()
2452 CodeGenFunction::EmitARCUnsafeClaimAutoreleasedReturnValue(llvm::Value *value) { in EmitARCUnsafeClaimAutoreleasedReturnValue()
2458 void CodeGenFunction::EmitARCRelease(llvm::Value *value, in EmitARCRelease()
2487 void CodeGenFunction::EmitARCDestroyStrong(Address addr, in EmitARCDestroyStrong()
2501 llvm::Value *CodeGenFunction::EmitARCStoreStrongCall(Address addr, in EmitARCStoreStrongCall()
2523 llvm::Value *CodeGenFunction::EmitARCStoreStrong(LValue dst, in EmitARCStoreStrong()
2558 llvm::Value *CodeGenFunction::EmitARCAutorelease(llvm::Value *value) { in EmitARCAutorelease()
2567 CodeGenFunction::EmitARCAutoreleaseReturnValue(llvm::Value *value) { in EmitARCAutoreleaseReturnValue()
2577 CodeGenFunction::EmitARCRetainAutoreleaseReturnValue(llvm::Value *value) { in EmitARCRetainAutoreleaseReturnValue()
2589 llvm::Value *CodeGenFunction::EmitARCRetainAutorelease(QualType type, in EmitARCRetainAutorelease()
2606 CodeGenFunction::EmitARCRetainAutoreleaseNonBlock(llvm::Value *value) { in EmitARCRetainAutoreleaseNonBlock()
2614 llvm::Value *CodeGenFunction::EmitARCLoadWeak(Address addr) { in EmitARCLoadWeak()
2621 llvm::Value *CodeGenFunction::EmitARCLoadWeakRetained(Address addr) { in EmitARCLoadWeakRetained()
2629 llvm::Value *CodeGenFunction::EmitARCStoreWeak(Address addr, in EmitARCStoreWeak()
2641 void CodeGenFunction::EmitARCInitWeak(Address addr, llvm::Value *value) { in EmitARCInitWeak()
2659 void CodeGenFunction::EmitARCDestroyWeak(Address addr) { in EmitARCDestroyWeak()
2673 void CodeGenFunction::EmitARCMoveWeak(Address dst, Address src) { in EmitARCMoveWeak()
2682 void CodeGenFunction::EmitARCCopyWeak(Address dst, Address src) { in EmitARCCopyWeak()
2688 void CodeGenFunction::emitARCCopyAssignWeak(QualType Ty, Address DstAddr, in emitARCCopyAssignWeak()
2695 void CodeGenFunction::emitARCMoveAssignWeak(QualType Ty, Address DstAddr, in emitARCMoveAssignWeak()
2705 llvm::Value *CodeGenFunction::EmitObjCAutoreleasePoolPush() { in EmitObjCAutoreleasePoolPush()
2715 void CodeGenFunction::EmitObjCAutoreleasePoolPop(llvm::Value *value) { in EmitObjCAutoreleasePoolPop()
2745 llvm::Value *CodeGenFunction::EmitObjCMRRAutoreleasePoolPush() { in EmitObjCMRRAutoreleasePoolPush()
2770 llvm::Value *CodeGenFunction::EmitObjCAlloc(llvm::Value *value, in EmitObjCAlloc()
2779 llvm::Value *CodeGenFunction::EmitObjCAllocWithZone(llvm::Value *value, in EmitObjCAllocWithZone()
2786 llvm::Value *CodeGenFunction::EmitObjCAllocInit(llvm::Value *value, in EmitObjCAllocInit()
2795 void CodeGenFunction::EmitObjCMRRAutoreleasePoolPop(llvm::Value *Arg) { in EmitObjCMRRAutoreleasePoolPop()
2803 void CodeGenFunction::destroyARCStrongPrecise(CodeGenFunction &CGF, in destroyARCStrongPrecise()
2809 void CodeGenFunction::destroyARCStrongImprecise(CodeGenFunction &CGF, in destroyARCStrongImprecise()
2815 void CodeGenFunction::destroyARCWeak(CodeGenFunction &CGF, in destroyARCWeak()
2821 void CodeGenFunction::emitARCIntrinsicUse(CodeGenFunction &CGF, Address addr, in emitARCIntrinsicUse()
2829 llvm::Value *CodeGenFunction::EmitObjCAutorelease(llvm::Value *value, in EmitObjCAutorelease()
2839 llvm::Value *CodeGenFunction::EmitObjCRetainNonBlock(llvm::Value *value, in EmitObjCRetainNonBlock()
2848 void CodeGenFunction::EmitObjCRelease(llvm::Value *value, in EmitObjCRelease()
2882 void Emit(CodeGenFunction &CGF, Flags flags) override { in Emit()
2891 void Emit(CodeGenFunction &CGF, Flags flags) override { in Emit()
2897 void CodeGenFunction::EmitObjCAutoreleasePoolCleanup(llvm::Value *Ptr) { in EmitObjCAutoreleasePoolCleanup()
2919 static TryEmitResult tryEmitARCRetainLoadOfScalar(CodeGenFunction &CGF, in tryEmitARCRetainLoadOfScalar()
2933 static TryEmitResult tryEmitARCRetainLoadOfScalar(CodeGenFunction &CGF, in tryEmitARCRetainLoadOfScalar()
2972 if (CodeGenFunction::ConstantEmission constant = CGF.tryEmitAsConstant(DRE)) in tryEmitARCRetainLoadOfScalar()
2980 typedef llvm::function_ref<llvm::Value *(CodeGenFunction &CGF,
2988 static llvm::Value *emitARCOperationAfterCall(CodeGenFunction &CGF, in emitARCOperationAfterCall()
3044 static llvm::Value *emitARCRetainCallResult(CodeGenFunction &CGF, in emitARCRetainCallResult()
3048 [](CodeGenFunction &CGF, llvm::Value *value) { in emitARCRetainCallResult()
3051 [](CodeGenFunction &CGF, llvm::Value *value) { in emitARCRetainCallResult()
3058 static llvm::Value *emitARCUnsafeClaimCallResult(CodeGenFunction &CGF, in emitARCUnsafeClaimCallResult()
3062 [](CodeGenFunction &CGF, llvm::Value *value) { in emitARCUnsafeClaimCallResult()
3065 [](CodeGenFunction &CGF, llvm::Value *value) { in emitARCUnsafeClaimCallResult()
3070 llvm::Value *CodeGenFunction::EmitARCReclaimReturnedObject(const Expr *E, in EmitARCReclaimReturnedObject()
3122 CodeGenFunction &CGF;
3125 ARCExprEmitter(CodeGenFunction &CGF) : CGF(CGF) {} in ARCExprEmitter()
3158 SmallVector<CodeGenFunction::OpaqueValueMappingData, 4> opaques; in visitPseudoObjectExpr()
3172 typedef CodeGenFunction::OpaqueValueMappingData OVMA; in visitPseudoObjectExpr()
3297 CGF.EmitCheckedLValue(e->getLHS(), CodeGenFunction::TCK_Store); in visitBinAssignUnsafeUnretained()
3368 ARCRetainExprEmitter(CodeGenFunction &CGF) : ARCExprEmitter(CGF) {} in ARCRetainExprEmitter()
3456 tryEmitARCRetainScalarExpr(CodeGenFunction &CGF, const Expr *e) { in tryEmitARCRetainScalarExpr()
3460 static llvm::Value *emitARCRetainLoadOfScalar(CodeGenFunction &CGF, in emitARCRetainLoadOfScalar()
3474 llvm::Value *CodeGenFunction::EmitARCRetainScalarExpr(const Expr *e) { in EmitARCRetainScalarExpr()
3489 CodeGenFunction::EmitARCRetainAutoreleaseScalarExpr(const Expr *e) { in EmitARCRetainAutoreleaseScalarExpr()
3505 llvm::Value *CodeGenFunction::EmitARCExtendBlockObject(const Expr *e) { in EmitARCExtendBlockObject()
3523 llvm::Value *CodeGenFunction::EmitObjCThrowOperand(const Expr *expr) { in EmitObjCThrowOperand()
3545 ARCUnsafeUnretainedExprEmitter(CodeGenFunction &CGF) : ARCExprEmitter(CGF) {} in ARCUnsafeUnretainedExprEmitter()
3590 static llvm::Value *emitARCUnsafeUnretainedScalarExpr(CodeGenFunction &CGF, in emitARCUnsafeUnretainedScalarExpr()
3599 llvm::Value *CodeGenFunction::EmitARCUnsafeUnretainedScalarExpr(const Expr *e) { in EmitARCUnsafeUnretainedScalarExpr()
3610 CodeGenFunction::EmitARCStoreUnsafeUnretained(const BinaryOperator *e, in EmitARCStoreUnsafeUnretained()
3629 CodeGenFunction::EmitARCStoreStrong(const BinaryOperator *e, in EmitARCStoreStrong()
3660 CodeGenFunction::EmitARCStoreAutoreleasing(const BinaryOperator *e) { in EmitARCStoreAutoreleasing()
3669 void CodeGenFunction::EmitObjCAutoreleasePoolStmt( in EmitObjCAutoreleasePoolStmt()
3697 void CodeGenFunction::EmitExtendGCLifetime(llvm::Value *object) { in EmitExtendGCLifetime()
3715 CodeGenFunction::GenerateObjCAtomicSetterCopyHelperFunction( in GenerateObjCAtomicSetterCopyHelperFunction()
3815 llvm::Constant *CodeGenFunction::GenerateObjCAtomicGetterCopyHelperFunction( in GenerateObjCAtomicGetterCopyHelperFunction()
3935 CodeGenFunction::EmitBlockCopyAndAutorelease(llvm::Value *Block, QualType Ty) { in EmitBlockCopyAndAutorelease()
3977 static llvm::Value *emitIsPlatformVersionAtLeast(CodeGenFunction &CGF, in emitIsPlatformVersionAtLeast()
4013 CodeGenFunction::EmitBuiltinAvailable(const VersionTuple &Version) { in EmitBuiltinAvailable()
4097 CodeGenFunction CGF(*this); in emitAtAvailableLinkGuard()