LLVM  4.0.0
Macros | Functions | Variables
AArch64FrameLowering.cpp File Reference
#include "AArch64FrameLowering.h"
#include "AArch64InstrInfo.h"
#include "AArch64MachineFunctionInfo.h"
#include "AArch64Subtarget.h"
#include "AArch64TargetMachine.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/LivePhysRegs.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/CodeGen/RegisterScavenging.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/Function.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
Include dependency graph for AArch64FrameLowering.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "frame-info"
 

Functions

 STATISTIC (NumRedZoneFunctions,"Number of functions using red zone")
 
static unsigned findScratchNonCalleeSaveRegister (MachineBasicBlock *MBB)
 
static MachineBasicBlock::iterator convertCalleeSaveRestoreToSPPrePostIncDec (MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, const DebugLoc &DL, const TargetInstrInfo *TII, int CSStackSizeInc)
 
static void fixupCalleeSaveRestoreStackOffset (MachineInstr &MI, unsigned LocalStackSize)
 
static unsigned getPrologueDeath (MachineFunction &MF, unsigned Reg)
 
static bool produceCompactUnwindFrame (MachineFunction &MF)
 
static void computeCalleeSaveRegisterPairs (MachineFunction &MF, const std::vector< CalleeSavedInfo > &CSI, const TargetRegisterInfo *TRI, SmallVectorImpl< RegPairInfo > &RegPairs)
 

Variables

static cl::opt< boolEnableRedZone ("aarch64-redzone", cl::desc("enable use of redzone on AArch64"), cl::init(false), cl::Hidden)
 

Macro Definition Documentation

#define DEBUG_TYPE   "frame-info"

Definition at line 111 of file AArch64FrameLowering.cpp.

Function Documentation

static void computeCalleeSaveRegisterPairs ( MachineFunction MF,
const std::vector< CalleeSavedInfo > &  CSI,
const TargetRegisterInfo TRI,
SmallVectorImpl< RegPairInfo > &  RegPairs 
)
static
static MachineBasicBlock::iterator convertCalleeSaveRestoreToSPPrePostIncDec ( MachineBasicBlock MBB,
MachineBasicBlock::iterator  MBBI,
const DebugLoc DL,
const TargetInstrInfo TII,
int  CSStackSizeInc 
)
static
static unsigned findScratchNonCalleeSaveRegister ( MachineBasicBlock MBB)
static
static void fixupCalleeSaveRestoreStackOffset ( MachineInstr MI,
unsigned  LocalStackSize 
)
static
static unsigned getPrologueDeath ( MachineFunction MF,
unsigned  Reg 
)
static
static bool produceCompactUnwindFrame ( MachineFunction MF)
static
STATISTIC ( NumRedZoneFunctions  ,
"Number of functions using red zone"   
)

Variable Documentation

cl::opt<bool> EnableRedZone("aarch64-redzone", cl::desc("enable use of redzone on AArch64"), cl::init(false), cl::Hidden)
static