LLVM 20.0.0git
|
This file contains the M68k implementation of TargetFrameLowering class. More...
#include "M68kFrameLowering.h"
#include "M68kInstrBuilder.h"
#include "M68kInstrInfo.h"
#include "M68kMachineFunction.h"
#include "M68kSubtarget.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineModuleInfo.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/Function.h"
#include "llvm/Support/Alignment.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetOptions.h"
Go to the source code of this file.
Functions | |
static unsigned | findDeadCallerSavedReg (MachineBasicBlock &MBB, MachineBasicBlock::iterator &MBBI, const M68kRegisterInfo *TRI) |
Return a caller-saved register that isn't live when it reaches the "return" instruction. | |
static bool | isRegLiveIn (MachineBasicBlock &MBB, unsigned Reg) |
static bool | isTailCallOpcode (unsigned Opc) |
This file contains the M68k implementation of TargetFrameLowering class.
Definition in file M68kFrameLowering.cpp.
|
static |
Return a caller-saved register that isn't live when it reaches the "return" instruction.
We can then pop a stack object to this register without worry about clobbering it.
Definition at line 137 of file M68kFrameLowering.cpp.
References llvm::MachineFunction::callsEHReturn(), llvm::MachineBasicBlock::end(), llvm::MachineBasicBlock::getParent(), llvm::MachineOperand::getReg(), llvm::MachineOperand::isDef(), llvm::MachineOperand::isReg(), llvm::MCRegAliasIterator::isValid(), MBB, MBBI, TRI, and Uses.
Referenced by llvm::M68kFrameLowering::emitSPUpdate().
|
static |
Definition at line 176 of file M68kFrameLowering.cpp.
References llvm::any_of(), llvm::MachineBasicBlock::liveins(), and MBB.
Referenced by llvm::M68kFrameLowering::emitSPUpdate().
Definition at line 662 of file M68kFrameLowering.cpp.
Referenced by llvm::M68kFrameLowering::emitEpilogue(), and llvm::X86FrameLowering::emitEpilogue().