LLVM: lib/Transforms/Utils/SplitModule.cpp File Reference (original) (raw)

Go to the source code of this file.

Functions
static void addNonConstUser (ClusterMapType &GVtoClusterMap, const GlobalValue *GV, const User *U)
static void addAllGlobalValueUsers (ClusterMapType &GVtoClusterMap, const GlobalValue *GV, const Value *V)
static const GlobalObject * getGVPartitioningRoot (const GlobalValue *GV)
static void findPartitions (Module &M, ClusterIDMapType &ClusterIDMap, unsigned N)
static void externalize (GlobalValue *GV)
static bool isInPartition (const GlobalValue *GV, unsigned I, unsigned N)

DEBUG_TYPE

#define DEBUG_TYPE "split-module"

addAllGlobalValueUsers()

addNonConstUser()

externalize()

findPartitions()

static void findPartitions ( Module & M, ClusterIDMapType & ClusterIDMap, unsigned N ) static

Definition at line 114 of file SplitModule.cpp.

References addAllGlobalValueUsers(), llvm::CallingConv::C, llvm::dbgs(), F, llvm::for_each(), getGVPartitioningRoot(), I, llvm::SmallPtrSetImpl< PtrType >::insert(), llvm::Constant::isConstantUsed(), LLVM_DEBUG, llvm::BlockAddress::lookup(), MI, N, llvm::SmallVectorTemplateBase< T, bool >::push_back(), and llvm::sort().

Referenced by llvm::SplitModule().

getGVPartitioningRoot()

isInPartition()