| 
    LLVM 22.0.0git
    
   | 
 
A helper class for emitting the epilogue. More...
#include "Target/AArch64/AArch64PrologueEpilogue.h"
Public Member Functions | |
| AArch64EpilogueEmitter (MachineFunction &MF, MachineBasicBlock &MBB, const AArch64FrameLowering &AFL) | |
| void | emitEpilogue () | 
| Emit the epilogue.   | |
| ~AArch64EpilogueEmitter () | |
| Public Member Functions inherited from llvm::AArch64PrologueEpilogueCommon | |
| AArch64PrologueEpilogueCommon (MachineFunction &MF, MachineBasicBlock &MBB, const AArch64FrameLowering &AFL) | |
A helper class for emitting the epilogue.
Substantial new functionality should be factored into a new method. Where possible "emit*" methods should be const, and any flags that change how the epilogue is emitted should be set in the constructor.
Definition at line 170 of file AArch64PrologueEpilogue.h.
| llvm::AArch64EpilogueEmitter::AArch64EpilogueEmitter | ( | MachineFunction & | MF, | 
| MachineBasicBlock & | MBB, | ||
| const AArch64FrameLowering & | AFL ) | 
Definition at line 1312 of file AArch64PrologueEpilogue.cpp.
References llvm::AArch64PrologueEpilogueCommon::AArch64PrologueEpilogueCommon(), llvm::AArch64PrologueEpilogueCommon::AFI, llvm::AArch64PrologueEpilogueCommon::AFL, llvm::AArch64PrologueEpilogueCommon::EmitCFI, llvm::AArch64PrologueEpilogueCommon::HomPrologEpilog, llvm::AArch64PrologueEpilogueCommon::MBB, and llvm::AArch64PrologueEpilogueCommon::MF.
      
  | 
  inline | 
Definition at line 178 of file AArch64PrologueEpilogue.h.
| void llvm::AArch64EpilogueEmitter::emitEpilogue | ( | ) | 
Emit the epilogue.
Definition at line 1321 of file AArch64PrologueEpilogue.cpp.
References llvm::AArch64PrologueEpilogueCommon::AFI, llvm::AArch64PrologueEpilogueCommon::AFL, llvm::SVEStackAllocations::AfterPPRs, llvm::SVEStackAllocations::AfterZPRs, assert(), llvm::SVEStackAllocations::BeforePPRs, llvm::CFIInstBuilder::buildDefCFA(), llvm::BuildMI(), llvm::AArch64PrologueEpilogueCommon::CalleeSavesAboveFrameRecord, llvm::AArch64PrologueEpilogueCommon::convertCalleeSaveRestoreToSPPrePostIncDec(), llvm::AArch64PrologueEpilogueCommon::EmitCFI, llvm::emitFrameOffset(), llvm::AArch64PrologueEpilogueCommon::fixupCalleeSaveRestoreStackOffset(), llvm::MachineInstr::FrameDestroy, llvm::StackOffset::getFixed(), llvm::StackOffset::getFixed(), llvm::AArch64PrologueEpilogueCommon::getSVEStackAllocations(), llvm::AArch64PrologueEpilogueCommon::getSVEStackFrameSizes(), llvm::CallingConv::GHC, llvm::AArch64PrologueEpilogueCommon::HasFP, llvm::AArch64PrologueEpilogueCommon::HasWinCFI, llvm::AArch64PrologueEpilogueCommon::HomPrologEpilog, llvm::AArch64PrologueEpilogueCommon::IsFunclet, llvm::isFuncletReturnInstr(), llvm::isPartOfSVECalleeSaves(), llvm::AArch64PrologueEpilogueCommon::MBB, llvm::AArch64PrologueEpilogueCommon::MF, llvm::AArch64PrologueEpilogueCommon::MFI, llvm::AArch64PrologueEpilogueCommon::NeedsWinCFI, llvm::partitionSVECS(), llvm::MachineInstrBuilder::setMIFlag(), llvm::AArch64PrologueEpilogueCommon::Split, llvm::AArch64PrologueEpilogueCommon::Subtarget, llvm::AArch64PrologueEpilogueCommon::SVELayout, llvm::AArch64PrologueEpilogueCommon::TII, and llvm::SVEStackAllocations::totalSize().
Referenced by llvm::AArch64FrameLowering::emitEpilogue().