LLVM  8.0.1
Macros | Functions | Variables
Mem2Reg.cpp File Reference
#include "llvm/Transforms/Utils/Mem2Reg.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Analysis/AssumptionCache.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/PassManager.h"
#include "llvm/Pass.h"
#include "llvm/Support/Casting.h"
#include "llvm/Transforms/Utils.h"
#include "llvm/Transforms/Utils/PromoteMemToReg.h"
#include <vector>
Include dependency graph for Mem2Reg.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "mem2reg"
 

Functions

 STATISTIC (NumPromoted, "Number of alloca's promoted")
 
static bool promoteMemoryToRegister (Function &F, DominatorTree &DT, AssumptionCache &AC)
 
 INITIALIZE_PASS_BEGIN (PromoteLegacyPass, "mem2reg", "Promote Memory to " "Register", false, false) INITIALIZE_PASS_END(PromoteLegacyPass
 

Variables

 mem2reg
 
Promote Memory to Register
 
Promote Memory to false
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "mem2reg"

Definition at line 31 of file Mem2Reg.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( PromoteLegacyPass  ,
"mem2reg"  ,
"Promote Memory to " "Register ,
false  ,
false   
)

Referenced by llvm::PromotePass::run().

◆ promoteMemoryToRegister()

static bool promoteMemoryToRegister ( Function F,
DominatorTree DT,
AssumptionCache AC 
)
static

◆ STATISTIC()

STATISTIC ( NumPromoted  ,
"Number of alloca's promoted"   
)

Variable Documentation

◆ false

Promote Memory to false

Definition at line 110 of file Mem2Reg.cpp.

◆ mem2reg

mem2reg

Definition at line 110 of file Mem2Reg.cpp.

◆ Register

Promote Memory to Register

Definition at line 110 of file Mem2Reg.cpp.

Referenced by adjustDuplex(), createBBSelectReg(), DecodeCtrRegs64RegisterClass(), DecodeCtrRegsRegisterClass(), DecodeDDDDRegisterClass(), DecodeDDDRegisterClass(), DecodeDDRegisterClass(), DecodeDPairRegisterClass(), DecodeDPairSpacedRegisterClass(), DecodeDPRRegisterClass(), DecodeFPR128RegisterClass(), DecodeFPR16RegisterClass(), DecodeFPR32RegisterClass(), DecodeFPR64RegisterClass(), DecodeFPR8RegisterClass(), DecodeGPR32RegisterClass(), DecodeGPR32spRegisterClass(), DecodeGPR64commonRegisterClass(), DecodeGPR64RegisterClass(), DecodeGPR64spRegisterClass(), DecodeGPRRegisterClass(), DecodeGuestRegs64RegisterClass(), DecodeGuestRegsRegisterClass(), decodeMemoryOpValue(), DecodeModRegsRegisterClass(), DecodePPRRegisterClass(), DecodeQPRRegisterClass(), DecodeQQQQRegisterClass(), DecodeQQQRegisterClass(), DecodeQQRegisterClass(), decodeRiMemoryValue(), decodeRrMemoryValue(), decodeSplsValue(), DecodeSPRRegisterClass(), DecodetcGPRRegisterClass(), DecodeVectorRegisterClass(), DecodeZPR2RegisterClass(), DecodeZPR3RegisterClass(), DecodeZPR4RegisterClass(), DecodeZPRRegisterClass(), llvm::MCStreamer::EmitCFIDefCfa(), llvm::MCStreamer::EmitCFIDefCfaRegister(), llvm::MCStreamer::EmitCFIReturnColumn(), llvm::MCStreamer::EmitCVFPOData(), FindMatchingEpilog(), llvm::LatticeKeyInfo< CVPLatticeKey >::getLatticeKeyFromValue(), getPHIDestReg(), llvm::MCCFIInstruction::getRegister(), getSymbolKindName(), INITIALIZE_PASS(), llvm::R600TargetLowering::LowerFormalArguments(), MarkBlocksLiveIn(), parseHexOcta(), previousIsLoop(), PrintCFIEscape(), printDwarfFileDirective(), printMCExpr(), llvm::HexagonMCChecker::reportBranchErrors(), runCVP(), and llvm::codeview::SymbolRecordMapping::visitSymbolEnd().