LLVM  6.0.0svn
Macros | Functions
SplitModule.cpp File Reference
#include "llvm/Transforms/Utils/SplitModule.h"
#include "llvm/ADT/EquivalenceClasses.h"
#include "llvm/ADT/Hashing.h"
#include "llvm/ADT/MapVector.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/GlobalAlias.h"
#include "llvm/IR/GlobalObject.h"
#include "llvm/IR/GlobalValue.h"
#include "llvm/IR/Module.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/MD5.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Transforms/Utils/Cloning.h"
#include <queue>
Include dependency graph for SplitModule.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "split-module"
 

Functions

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

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "split-module"

Definition at line 16 of file SplitModule.cpp.

Function Documentation

◆ addAllGlobalValueUsers()

static void addAllGlobalValueUsers ( ClusterMapType &  GVtoClusterMap,
const GlobalValue GV,
const Value V 
)
static

◆ addNonConstUser()

static void addNonConstUser ( ClusterMapType &  GVtoClusterMap,
const GlobalValue GV,
const User U 
)
static

Definition at line 43 of file SplitModule.cpp.

References assert(), F(), I, and llvm_unreachable.

Referenced by addAllGlobalValueUsers().

◆ externalize()

static void externalize ( GlobalValue GV)
static

◆ findPartitions()

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

◆ isInPartition()

static bool isInPartition ( const GlobalValue GV,
unsigned  I,
unsigned  N 
)
static