• 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
189 CGM.getCXXABI().performThisAdjustment(*this, ThisPtr, Thunk.This); in GenerateVarArgsThunk()
192 if (!Thunk.Return.isEmpty()) { in GenerateVarArgsThunk()
200 RV = PerformReturnAdjustment(*this, ResultType, RV, Thunk); in GenerateVarArgsThunk()
257 const ThunkInfo *Thunk) { in EmitCallAndReturnForThunk() argument
264 Thunk ? CGM.getCXXABI().performThisAdjustment( in EmitCallAndReturnForThunk()
265 *this, LoadCXXThisAddress(), Thunk->This) in EmitCallAndReturnForThunk()
272 if (Thunk && !Thunk->Return.isEmpty()) { in EmitCallAndReturnForThunk()
329 if (Thunk && !Thunk->Return.isEmpty()) in EmitCallAndReturnForThunk()
330 RV = PerformReturnAdjustment(*this, ResultType, RV, *Thunk); in EmitCallAndReturnForThunk()
401 GlobalDecl GD, const ThunkInfo &Thunk) { in generateThunk() argument
410 EmitCallAndReturnForThunk(Callee, &Thunk); in generateThunk()
413 void CodeGenVTables::emitThunk(GlobalDecl GD, const ThunkInfo &Thunk, in emitThunk() argument
418 llvm::Constant *C = CGM.GetAddrOfThunk(GD, Thunk); in emitThunk()
441 Entry = cast<llvm::GlobalValue>(CGM.GetAddrOfThunk(GD, Thunk)); in emitThunk()
464 setThunkProperties(CGM, Thunk, ThunkFn, ForVTable, GD); in emitThunk()
479 CodeGenFunction(CGM).GenerateVarArgsThunk(ThunkFn, FnInfo, GD, Thunk); in emitThunk()
482 CodeGenFunction(CGM).generateThunk(ThunkFn, FnInfo, GD, Thunk); in emitThunk()
485 setThunkProperties(CGM, Thunk, ThunkFn, ForVTable, GD); in emitThunk()
489 const ThunkInfo &Thunk) { in maybeEmitThunkForVTable() argument
504 emitThunk(GD, Thunk, /*ForVTable=*/true); in maybeEmitThunkForVTable()
522 for (const ThunkInfo& Thunk : *ThunkInfoVector) in EmitThunks()
523 emitThunk(GD, Thunk, /*ForVTable=*/false); in EmitThunks()
629 const ThunkInfo &Thunk = VTableThunks[NextVTableThunkIndex].second; in CreateVTableInitializer() local
631 maybeEmitThunkForVTable(GD, Thunk); in CreateVTableInitializer()
632 Init = CGM.GetAddrOfThunk(GD, Thunk); in CreateVTableInitializer()