|
LLVM
3.7.0
|
#include "llvm/Transforms/IPO.h"#include "llvm/ADT/DenseMap.h"#include "llvm/ADT/PointerIntPair.h"#include "llvm/ADT/SmallPtrSet.h"#include "llvm/ADT/Statistic.h"#include "llvm/IR/Constants.h"#include "llvm/IR/DataLayout.h"#include "llvm/IR/DerivedTypes.h"#include "llvm/IR/Module.h"#include "llvm/IR/Operator.h"#include "llvm/Pass.h"Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "constmerge" |
Functions | |
| STATISTIC (NumMerged,"Number of global constants merged") | |
| INITIALIZE_PASS (ConstantMerge,"constmerge","Merge Duplicate Global Constants", false, false) ModulePass *llvm | |
| static void | FindUsedValues (GlobalVariable *LLVMUsed, SmallPtrSetImpl< const GlobalValue * > &UsedValues) |
| Find values that are marked as llvm.used. More... | |
| static bool | IsBetterCanonical (const GlobalVariable &A, const GlobalVariable &B) |
| #define DEBUG_TYPE "constmerge" |
Definition at line 33 of file ConstantMerge.cpp.
|
static |
Find values that are marked as llvm.used.
Definition at line 67 of file ConstantMerge.cpp.
References llvm::GlobalVariable::getInitializer(), llvm::User::getNumOperands(), llvm::User::getOperand(), llvm::SmallPtrSetImpl< PtrType >::insert(), and llvm::Value::stripPointerCastsNoFollowAliases().
| INITIALIZE_PASS | ( | ConstantMerge | , |
| "constmerge" | , | ||
| "Merge Duplicate Global Constants" | , | ||
| false | , | ||
| false | |||
| ) |
Definition at line 59 of file ConstantMerge.cpp.
|
static |
Definition at line 80 of file ConstantMerge.cpp.
References llvm::GlobalValue::hasLocalLinkage(), and llvm::GlobalValue::hasUnnamedAddr().
| STATISTIC | ( | NumMerged | , |
| "Number of global constants merged" | |||
| ) |
1.8.6