LLVM 24.0.0git
GVNHoist.cpp File Reference

Go to the source code of this file.

Classes

struct  llvm::CHIArg
class  llvm::InsnInfo
class  llvm::LoadInfo
class  llvm::StoreInfo
class  llvm::CallInfo
class  llvm::GVNHoist

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.

Macros

#define DEBUG_TYPE   "gvn-hoist"

Typedefs

using llvm::BBSideEffectsSet = DenseMap<const BasicBlock *, bool>
using llvm::SmallVecInsn = SmallVector<Instruction *, 4>
using llvm::SmallVecImplInsn = SmallVectorImpl<Instruction *>
using llvm::HoistingPointInfo = std::pair<BasicBlock *, SmallVecInsn>
using llvm::HoistingPointList = SmallVector<HoistingPointInfo, 4>
using llvm::VNType = std::pair<unsigned, uintptr_t>
using llvm::VNtoInsns = DenseMap<VNType, SmallVector<Instruction *, 4>>
using llvm::CHIIt = SmallVectorImpl<CHIArg>::iterator
using llvm::CHIArgs = iterator_range<CHIIt>
using llvm::OutValuesType = DenseMap<BasicBlock *, SmallVector<CHIArg, 2>>
using llvm::InValuesType

Enumerations

enum  : uintptr_t { llvm::InvalidVN = ~(uintptr_t)2 }

Functions

 STATISTIC (NumHoisted, "Number of instructions hoisted")
 STATISTIC (NumRemoved, "Number of instructions removed")
 STATISTIC (NumLoadsHoisted, "Number of loads hoisted")
 STATISTIC (NumLoadsRemoved, "Number of loads removed")
 STATISTIC (NumStoresHoisted, "Number of stores hoisted")
 STATISTIC (NumStoresRemoved, "Number of stores removed")
 STATISTIC (NumCallsHoisted, "Number of calls hoisted")
 STATISTIC (NumCallsRemoved, "Number of calls removed")

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "gvn-hoist"

Definition at line 79 of file GVNHoist.cpp.

Function Documentation

◆ STATISTIC() [1/8]

STATISTIC ( NumCallsHoisted ,
"Number of calls hoisted"  )

◆ STATISTIC() [2/8]

STATISTIC ( NumCallsRemoved ,
"Number of calls removed"  )

◆ STATISTIC() [3/8]

STATISTIC ( NumHoisted ,
"Number of instructions hoisted"  )

◆ STATISTIC() [4/8]

STATISTIC ( NumLoadsHoisted ,
"Number of loads hoisted"  )

◆ STATISTIC() [5/8]

STATISTIC ( NumLoadsRemoved ,
"Number of loads removed"  )

◆ STATISTIC() [6/8]

STATISTIC ( NumRemoved ,
"Number of instructions removed"  )

◆ STATISTIC() [7/8]

STATISTIC ( NumStoresHoisted ,
"Number of stores hoisted"  )

◆ STATISTIC() [8/8]

STATISTIC ( NumStoresRemoved ,
"Number of stores removed"  )