• Home
  • Raw
  • Download

Lines Matching refs:Thunk

36                                               const ThunkInfo &Thunk) {  in GetAddrOfThunk()  argument
44 Thunk.This, Out); in GetAddrOfThunk()
46 getCXXABI().getMangleContext().mangleThunk(MD, Thunk, Out); in GetAddrOfThunk()
54 const ThunkInfo &Thunk, llvm::Function *Fn) { in setThunkVisibility() argument
58 static void setThunkProperties(CodeGenModule &CGM, const ThunkInfo &Thunk, in setThunkProperties() argument
63 !Thunk.Return.isEmpty()); in setThunkProperties()
67 setThunkVisibility(CGM, MD, Thunk, ThunkFn); in setThunkProperties()
85 const ThunkInfo &Thunk) { in PerformReturnAdjustment() argument
109 Thunk.Return); in PerformReturnAdjustment()
146 GlobalDecl GD, const ThunkInfo &Thunk) { in GenerateVarArgsThunk() argument
187 CGM.getCXXABI().performThisAdjustment(*this, ThisPtr, Thunk.This); in GenerateVarArgsThunk()
190 if (!Thunk.Return.isEmpty()) { in GenerateVarArgsThunk()
198 RV = PerformReturnAdjustment(*this, ResultType, RV, Thunk); in GenerateVarArgsThunk()
255 const ThunkInfo *Thunk) { in EmitCallAndReturnForThunk() argument
262 Thunk ? CGM.getCXXABI().performThisAdjustment( in EmitCallAndReturnForThunk()
263 *this, LoadCXXThisAddress(), Thunk->This) in EmitCallAndReturnForThunk()
270 if (Thunk && !Thunk->Return.isEmpty()) { in EmitCallAndReturnForThunk()
326 if (Thunk && !Thunk->Return.isEmpty()) in EmitCallAndReturnForThunk()
327 RV = PerformReturnAdjustment(*this, ResultType, RV, *Thunk); in EmitCallAndReturnForThunk()
398 GlobalDecl GD, const ThunkInfo &Thunk) { in generateThunk() argument
407 EmitCallAndReturnForThunk(Callee, &Thunk); in generateThunk()
410 void CodeGenVTables::emitThunk(GlobalDecl GD, const ThunkInfo &Thunk, in emitThunk() argument
415 llvm::Constant *C = CGM.GetAddrOfThunk(GD, Thunk); in emitThunk()
438 Entry = cast<llvm::GlobalValue>(CGM.GetAddrOfThunk(GD, Thunk)); in emitThunk()
461 setThunkProperties(CGM, Thunk, ThunkFn, ForVTable, GD); in emitThunk()
476 CodeGenFunction(CGM).GenerateVarArgsThunk(ThunkFn, FnInfo, GD, Thunk); in emitThunk()
479 CodeGenFunction(CGM).generateThunk(ThunkFn, FnInfo, GD, Thunk); in emitThunk()
482 setThunkProperties(CGM, Thunk, ThunkFn, ForVTable, GD); in emitThunk()
486 const ThunkInfo &Thunk) { in maybeEmitThunkForVTable() argument
501 emitThunk(GD, Thunk, /*ForVTable=*/true); in maybeEmitThunkForVTable()
519 for (const ThunkInfo& Thunk : *ThunkInfoVector) in EmitThunks()
520 emitThunk(GD, Thunk, /*ForVTable=*/false); in EmitThunks()
630 const ThunkInfo &Thunk = VTableThunks[NextVTableThunkIndex].second; in CreateVTableInitializer() local
632 maybeEmitThunkForVTable(GD, Thunk); in CreateVTableInitializer()
633 Init = CGM.GetAddrOfThunk(GD, Thunk); in CreateVTableInitializer()