LLVM 20.0.0git
Classes | Namespaces | Typedefs
ConstantHoisting.h File Reference
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/MapVector.h"
#include "llvm/ADT/PointerUnion.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/PassManager.h"
#include <algorithm>
#include <vector>

Go to the source code of this file.

Classes

struct  llvm::consthoist::ConstantUser
 Keeps track of the user of a constant and the operand index where the constant is used. More...
 
struct  llvm::consthoist::ConstantCandidate
 Keeps track of a constant candidate and its uses. More...
 
struct  llvm::consthoist::RebasedConstantInfo
 This represents a constant that has been rebased with respect to a base constant. More...
 
struct  llvm::consthoist::ConstantInfo
 A base constant and all its rebased constants. More...
 
class  llvm::ConstantHoistingPass
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 
namespace  llvm::consthoist
 A private "module" namespace for types and utilities used by ConstantHoisting.
 

Typedefs

using llvm::consthoist::ConstantUseListType = SmallVector< ConstantUser, 8 >
 
using llvm::consthoist::RebasedConstantListType = SmallVector< RebasedConstantInfo, 4 >