[LowerTypeTests] Don't rely on doInitialization().

In preparation for porting this pass to the new PM (which has no
doInitialization()).

Differential Revision:  http://reviews.llvm.org/D22223

llvm-svn: 275074
This commit is contained in:
Davide Italiano 2016-07-11 17:00:31 +00:00
parent 9232f98279
commit 12a115683b
1 changed files with 16 additions and 23 deletions

View File

@ -253,8 +253,6 @@ struct LowerTypeTests : public ModulePass {
void buildBitSetsFromDisjointSet(ArrayRef<Metadata *> TypeIds,
ArrayRef<GlobalObject *> Globals);
bool lower();
bool doInitialization(Module &M) override;
bool runOnModule(Module &M) override;
};
@ -266,27 +264,6 @@ char LowerTypeTests::ID = 0;
ModulePass *llvm::createLowerTypeTestsPass() { return new LowerTypeTests; }
bool LowerTypeTests::doInitialization(Module &Mod) {
M = &Mod;
const DataLayout &DL = Mod.getDataLayout();
Triple TargetTriple(M->getTargetTriple());
LinkerSubsectionsViaSymbols = TargetTriple.isMacOSX();
Arch = TargetTriple.getArch();
ObjectFormat = TargetTriple.getObjectFormat();
Int1Ty = Type::getInt1Ty(M->getContext());
Int8Ty = Type::getInt8Ty(M->getContext());
Int32Ty = Type::getInt32Ty(M->getContext());
Int32PtrTy = PointerType::getUnqual(Int32Ty);
Int64Ty = Type::getInt64Ty(M->getContext());
IntPtrTy = DL.getIntPtrType(M->getContext(), 0);
TypeTestCallSites.clear();
return false;
}
/// Build a bit set for TypeId using the object layouts in
/// GlobalLayout.
BitSetInfo LowerTypeTests::buildBitSet(
@ -1012,5 +989,21 @@ bool LowerTypeTests::runOnModule(Module &M) {
if (skipModule(M))
return false;
this->M = &M;
const DataLayout &DL = M.getDataLayout();
Triple TargetTriple(M.getTargetTriple());
LinkerSubsectionsViaSymbols = TargetTriple.isMacOSX();
Arch = TargetTriple.getArch();
ObjectFormat = TargetTriple.getObjectFormat();
Int1Ty = Type::getInt1Ty(M.getContext());
Int8Ty = Type::getInt8Ty(M.getContext());
Int32Ty = Type::getInt32Ty(M.getContext());
Int32PtrTy = PointerType::getUnqual(Int32Ty);
Int64Ty = Type::getInt64Ty(M.getContext());
IntPtrTy = DL.getIntPtrType(M.getContext(), 0);
TypeTestCallSites.clear();
return lower();
}