|
LLVM 23.0.0git
|
#include "LoongArchFrameLowering.h"#include "LoongArchMachineFunctionInfo.h"#include "LoongArchSubtarget.h"#include "MCTargetDesc/LoongArchBaseInfo.h"#include "MCTargetDesc/LoongArchMCTargetDesc.h"#include "llvm/CodeGen/CFIInstBuilder.h"#include "llvm/CodeGen/LivePhysRegs.h"#include "llvm/CodeGen/MachineFrameInfo.h"#include "llvm/CodeGen/MachineFunction.h"#include "llvm/CodeGen/MachineInstrBuilder.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/CodeGen/RegisterScavenging.h"#include "llvm/IR/DiagnosticInfo.h"#include "llvm/MC/MCDwarf.h"Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "loongarch-frame-lowering" |
Functions | |
| static uint64_t | estimateFunctionSizeInBytes (const LoongArchInstrInfo *TII, const MachineFunction &MF) |
| static bool | needScavSlotForCFR (MachineFunction &MF) |
| static void | emitStackProbeInline (MachineBasicBlock::iterator MBBI, DebugLoc DL, Register TargetReg) |
| #define DEBUG_TYPE "loongarch-frame-lowering" |
Definition at line 30 of file LoongArchFrameLowering.cpp.
|
static |
Definition at line 463 of file LoongArchFrameLowering.cpp.
References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addMBB(), llvm::MachineInstrBuilder::addReg(), llvm::MachineBasicBlock::addSuccessor(), assert(), llvm::BuildMI(), llvm::MachineFunction::CreateMachineBasicBlock(), DL, llvm::MachineBasicBlock::end(), llvm::MachineInstr::FrameSetup, llvm::fullyRecomputeLiveIns(), llvm::LoongArchSubtarget::getFrameLowering(), llvm::LoongArchSubtarget::getInstrInfo(), llvm::TargetFrameLowering::getStackAlign(), llvm::LoongArchTargetLowering::getStackProbeSize(), llvm::MachineFunction::getSubtarget(), llvm::LoongArchSubtarget::getTargetLowering(), llvm::MachineFunction::insert(), llvm::LoongArchSubtarget::is64Bit(), MBB, MBBI, llvm::MachineInstrBuilder::setMIFlag(), llvm::MachineBasicBlock::splice(), SPReg, TII, and llvm::MachineBasicBlock::transferSuccessorsAndUpdatePHIs().
Referenced by llvm::LoongArchFrameLowering::inlineStackProbe().
|
static |
Definition at line 124 of file LoongArchFrameLowering.cpp.
Referenced by llvm::LoongArchFrameLowering::processFunctionBeforeFrameFinalized(), and llvm::RISCVFrameLowering::processFunctionBeforeFrameFinalized().
|
static |
Definition at line 133 of file LoongArchFrameLowering.cpp.
References llvm::MachineFunction::getSubtarget(), MBB, and MI.
Referenced by llvm::LoongArchFrameLowering::processFunctionBeforeFrameFinalized().