reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/CodeGen/ItaniumCXXABI.cpp
 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);