LLVM  8.0.1
Functions
ValueEnumerator.cpp File Reference
#include "ValueEnumerator.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Config/llvm-config.h"
#include "llvm/IR/Argument.h"
#include "llvm/IR/Attributes.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Constant.h"
#include "llvm/IR/DebugInfoMetadata.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/GlobalAlias.h"
#include "llvm/IR/GlobalIFunc.h"
#include "llvm/IR/GlobalObject.h"
#include "llvm/IR/GlobalValue.h"
#include "llvm/IR/GlobalVariable.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Metadata.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/Use.h"
#include "llvm/IR/UseListOrder.h"
#include "llvm/IR/User.h"
#include "llvm/IR/Value.h"
#include "llvm/IR/ValueSymbolTable.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <cassert>
#include <cstddef>
#include <iterator>
#include <tuple>
#include <utility>
#include <vector>
Include dependency graph for ValueEnumerator.cpp:

Go to the source code of this file.

Functions

static void orderValue (const Value *V, OrderMap &OM)
 
static OrderMap orderModule (const Module &M)
 
static void predictValueUseListOrderImpl (const Value *V, const Function *F, unsigned ID, const OrderMap &OM, UseListOrderStack &Stack)
 
static void predictValueUseListOrder (const Value *V, const Function *F, OrderMap &OM, UseListOrderStack &Stack)
 
static UseListOrderStack predictUseListOrder (const Module &M)
 
static bool isIntOrIntVectorValue (const std::pair< const Value *, unsigned > &V)
 
static unsigned getMetadataTypeOrder (const Metadata *MD)
 
static void IncorporateFunctionInfoGlobalBBIDs (const Function *F, DenseMap< const BasicBlock *, unsigned > &IDMap)
 

Function Documentation

◆ getMetadataTypeOrder()

static unsigned getMetadataTypeOrder ( const Metadata MD)
static

◆ IncorporateFunctionInfoGlobalBBIDs()

static void IncorporateFunctionInfoGlobalBBIDs ( const Function F,
DenseMap< const BasicBlock *, unsigned > &  IDMap 
)
static

Definition at line 1020 of file ValueEnumerator.cpp.

Referenced by llvm::ValueEnumerator::getGlobalBasicBlockID().

◆ isIntOrIntVectorValue()

static bool isIntOrIntVectorValue ( const std::pair< const Value *, unsigned > &  V)
static

Definition at line 317 of file ValueEnumerator.cpp.

Referenced by llvm::ValueEnumerator::print().

◆ orderModule()

static OrderMap orderModule ( const Module M)
static

◆ orderValue()

static void orderValue ( const Value V,
OrderMap &  OM 
)
static

Definition at line 88 of file ValueEnumerator.cpp.

References C, llvm::User::getNumOperands(), and llvm::User::operands().

Referenced by orderModule().

◆ predictUseListOrder()

static UseListOrderStack predictUseListOrder ( const Module M)
static

◆ predictValueUseListOrder()

static void predictValueUseListOrder ( const Value V,
const Function F,
OrderMap &  OM,
UseListOrderStack Stack 
)
static

◆ predictValueUseListOrderImpl()

static void predictValueUseListOrderImpl ( const Value V,
const Function F,
unsigned  ID,
const OrderMap &  OM,
UseListOrderStack Stack 
)
static