reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
4093 llvm::Value *Exn = CGF.getExceptionFromSlot(); 4096 CGF.CGM.getContext().getCanonicalType(CatchParam.getType()); 4097 llvm::Type *LLVMCatchTy = CGF.ConvertTypeForMem(CatchType); 4106 llvm::Value *AdjustedExn = CallBeginCatch(CGF, Exn, EndCatchMightThrow); 4121 CGF.CGM.getTargetCodeGenInfo().getSizeOfUnwindException(); 4122 AdjustedExn = CGF.Builder.CreateConstGEP1_32(Exn, HeaderSize); 4145 CGF.CreateTempAlloca(PtrTy, CGF.getPointerAlign(), "exn.byref.tmp"); 4145 CGF.CreateTempAlloca(PtrTy, CGF.getPointerAlign(), "exn.byref.tmp"); 4146 llvm::Value *Casted = CGF.Builder.CreateBitCast(AdjustedExn, PtrTy); 4147 CGF.Builder.CreateStore(Casted, ExnPtrTmp); 4155 CGF.Builder.CreateBitCast(AdjustedExn, LLVMCatchTy, "exn.byref"); 4156 CGF.Builder.CreateStore(ExnCast, ParamAddr); 4161 TypeEvaluationKind TEK = CGF.getEvaluationKind(CatchType); 4163 llvm::Value *AdjustedExn = CallBeginCatch(CGF, Exn, false); 4169 CGF.Builder.CreateBitCast(AdjustedExn, LLVMCatchTy, "exn.casted"); 4173 CastExn = CGF.EmitARCRetainNonBlock(CastExn); 4179 CGF.Builder.CreateStore(CastExn, ParamAddr); 4183 CGF.EmitARCInitWeak(ParamAddr, CastExn); 4192 llvm::Value *Cast = CGF.Builder.CreateBitCast(AdjustedExn, PtrTy); 4194 LValue srcLV = CGF.MakeNaturalAlignAddrLValue(Cast, CatchType); 4195 LValue destLV = CGF.MakeAddrLValue(ParamAddr, CatchType); 4198 CGF.EmitStoreOfComplex(CGF.EmitLoadOfComplex(srcLV, Loc), destLV, 4198 CGF.EmitStoreOfComplex(CGF.EmitLoadOfComplex(srcLV, Loc), destLV, 4202 llvm::Value *ExnLoad = CGF.EmitLoadOfScalar(srcLV, Loc); 4203 CGF.EmitStoreOfScalar(ExnLoad, destLV, /*init*/ true); 4214 CharUnits caughtExnAlignment = CGF.CGM.getClassPointerAlignment(catchRD); 4222 llvm::Value *rawAdjustedExn = CallBeginCatch(CGF, Exn, true); 4223 Address adjustedExn(CGF.Builder.CreateBitCast(rawAdjustedExn, PtrTy), 4225 LValue Dest = CGF.MakeAddrLValue(ParamAddr, CatchType); 4226 LValue Src = CGF.MakeAddrLValue(adjustedExn, CatchType); 4227 CGF.EmitAggregateCopy(Dest, Src, CatchType, AggValueSlot::DoesNotOverlap); 4234 CGF.EmitNounwindRuntimeCall(getGetExceptionPtrFn(CGF.CGM), Exn); 4234 CGF.EmitNounwindRuntimeCall(getGetExceptionPtrFn(CGF.CGM), Exn); 4237 Address adjustedExn(CGF.Builder.CreateBitCast(rawAdjustedExn, PtrTy), 4243 opaque(CGF, OpaqueValueExpr::findInCopyConstruct(copyExpr), 4244 CGF.MakeAddrLValue(adjustedExn, CatchParam.getType())); 4247 CGF.EHStack.pushTerminate(); 4250 CGF.EmitAggExpr(copyExpr, 4258 CGF.EHStack.popTerminate(); 4264 CallBeginCatch(CGF, Exn, true);