LLVM  4.0.0
Classes | Namespaces | Macros | Functions | Variables
MachineFunction.cpp File Reference
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/Analysis/ConstantFolding.h"
#include "llvm/Analysis/EHPersonalities.h"
#include "llvm/CodeGen/MachineConstantPool.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineFunctionInitializer.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineJumpTableInfo.h"
#include "llvm/CodeGen/MachineModuleInfo.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/CodeGen/PseudoSourceValue.h"
#include "llvm/CodeGen/WinEHFuncInfo.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/DebugInfo.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/ModuleSlotTracker.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCContext.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/GraphWriter.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetFrameLowering.h"
#include "llvm/Target/TargetLowering.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetSubtargetInfo.h"
Include dependency graph for MachineFunction.cpp:

Go to the source code of this file.

Classes

struct  llvm::DOTGraphTraits< const MachineFunction * >
 

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 

Macros

#define DEBUG_TYPE   "codegen"
 

Functions

static const char * getPropertyName (MachineFunctionProperties::Property Prop)
 
static unsigned getFnStackAlignment (const TargetSubtargetInfo *STI, const Function *Fn)
 
static unsigned clampStackAlignment (bool ShouldClamp, unsigned Align, unsigned StackAlign)
 Clamp the alignment if requested and emit a warning. More...
 
static bool CanShareConstantPoolEntry (const Constant *A, const Constant *B, const DataLayout &DL)
 Test whether the given two constants can be allocated the same constant pool entry. More...
 

Variables

static cl::opt< unsignedAlignAllFunctions ("align-all-functions", cl::desc("Force the alignment of all functions."), cl::init(0), cl::Hidden)
 

Macro Definition Documentation

#define DEBUG_TYPE   "codegen"

Definition at line 48 of file MachineFunction.cpp.

Function Documentation

static bool CanShareConstantPoolEntry ( const Constant A,
const Constant B,
const DataLayout DL 
)
static

Test whether the given two constants can be allocated the same constant pool entry.

Definition at line 1116 of file MachineFunction.cpp.

References B, llvm::ConstantFoldCastOperand(), llvm::IntegerType::get(), llvm::Value::getContext(), llvm::Value::getType(), and llvm::DataLayout::getTypeStoreSize().

Referenced by llvm::MachineConstantPool::getConstantPoolIndex().

static unsigned clampStackAlignment ( bool  ShouldClamp,
unsigned  Align,
unsigned  StackAlign 
)
inlinestatic
static unsigned getFnStackAlignment ( const TargetSubtargetInfo STI,
const Function Fn 
)
inlinestatic
static const char* getPropertyName ( MachineFunctionProperties::Property  Prop)
static

Definition at line 57 of file MachineFunction.cpp.

References llvm_unreachable, and P.

Variable Documentation

cl::opt<unsigned> AlignAllFunctions("align-all-functions", cl::desc("Force the alignment of all functions."), cl::init(0), cl::Hidden)
static