LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Macros | Functions | Variables
PrologEpilogInserter.cpp File Reference
#include "PrologEpilogInserter.h"
#include "llvm/ADT/IndexedMap.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/MachineDominators.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineLoopInfo.h"
#include "llvm/CodeGen/MachineModuleInfo.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/RegisterScavenging.h"
#include "llvm/IR/InlineAsm.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetFrameLowering.h"
#include "llvm/Target/TargetInstrInfo.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetRegisterInfo.h"
#include <climits>
Include dependency graph for PrologEpilogInserter.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "pei"
 

Functions

 INITIALIZE_PASS_BEGIN (PEI,"prologepilog","Prologue/Epilogue Insertion", false, false) INITIALIZE_PASS_END(PEI
 
Prologue Epilogue Insertion
&Frame false 
STATISTIC (NumScavengedRegs,"Number of frame index regs scavenged")
 
 STATISTIC (NumBytesStackSpace,"Number of bytes used for stack in all functions")
 
static void AdjustStackOffset (MachineFrameInfo *MFI, int FrameIdx, bool StackGrowsDown, int64_t &Offset, unsigned &MaxAlign)
 AdjustStackOffset - Helper function used to adjust the stack frame offset. More...
 

Variables

static cl::opt< unsignedWarnStackSize ("warn-stack-size", cl::Hidden, cl::init((unsigned)-1), cl::desc("Warn for stack size bigger than the given"" number"))
 
 prologepilog
 
Prologue Epilogue Insertion &Frame Finalization
 
Prologue Epilogue Insertion &Frame false
 

Macro Definition Documentation

#define DEBUG_TYPE   "pei"

Definition at line 19 of file PrologEpilogInserter.cpp.

Function Documentation

static void AdjustStackOffset ( MachineFrameInfo MFI,
int  FrameIdx,
bool  StackGrowsDown,
int64_t &  Offset,
unsigned MaxAlign 
)
inlinestatic

AdjustStackOffset - Helper function used to adjust the stack frame offset.

Definition at line 386 of file PrologEpilogInserter.cpp.

References llvm::dbgs(), DEBUG, llvm::MachineFrameInfo::getObjectAlignment(), llvm::MachineFrameInfo::getObjectSize(), and llvm::MachineFrameInfo::setObjectOffset().

INITIALIZE_PASS_BEGIN ( PEI  ,
"prologepilog"  ,
"Prologue/Epilogue Insertion"  ,
false  ,
false   
)
Prologue Epilogue Insertion& Frame false STATISTIC ( NumScavengedRegs  ,
"Number of frame index regs scavenged"   
)
STATISTIC ( NumBytesStackSpace  ,
"Number of bytes used for stack in all functions  
)

Variable Documentation

Prologue Epilogue Insertion& Frame false

Definition at line 58 of file PrologEpilogInserter.cpp.

Prologue Epilogue Insertion& Frame Finalization

Definition at line 58 of file PrologEpilogInserter.cpp.

prologepilog

Definition at line 58 of file PrologEpilogInserter.cpp.

cl::opt<unsigned> WarnStackSize("warn-stack-size", cl::Hidden, cl::init((unsigned)-1), cl::desc("Warn for stack size bigger than the given"" number"))
static