Fold init() helpers into constructors. NFC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231486 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Benjamin Kramer 2015-03-06 16:21:15 +00:00
parent 3ad549487e
commit a8c404923a
3 changed files with 19 additions and 40 deletions

View File

@ -510,9 +510,6 @@ private:
bool VerifyModules; bool VerifyModules;
bool UseOrcMCJITReplacement; bool UseOrcMCJITReplacement;
/// InitEngine - Does the common initialization of default options.
void InitEngine();
public: public:
/// Default constructor for EngineBuilder. /// Default constructor for EngineBuilder.
EngineBuilder(); EngineBuilder();

View File

@ -400,33 +400,12 @@ int ExecutionEngine::runFunctionAsMain(Function *Fn,
return runFunction(Fn, GVArgs).IntVal.getZExtValue(); return runFunction(Fn, GVArgs).IntVal.getZExtValue();
} }
EngineBuilder::EngineBuilder() { EngineBuilder::EngineBuilder() : EngineBuilder(nullptr) {}
InitEngine();
}
EngineBuilder::EngineBuilder(std::unique_ptr<Module> M) EngineBuilder::EngineBuilder(std::unique_ptr<Module> M)
: M(std::move(M)), MCJMM(nullptr) { : M(std::move(M)), WhichEngine(EngineKind::Either), ErrorStr(nullptr),
InitEngine(); OptLevel(CodeGenOpt::Default), MCJMM(nullptr), RelocModel(Reloc::Default),
} CMModel(CodeModel::JITDefault), UseOrcMCJITReplacement(false) {
EngineBuilder::~EngineBuilder() {}
EngineBuilder &EngineBuilder::setMCJITMemoryManager(
std::unique_ptr<RTDyldMemoryManager> mcjmm) {
MCJMM = std::move(mcjmm);
return *this;
}
void EngineBuilder::InitEngine() {
WhichEngine = EngineKind::Either;
ErrorStr = nullptr;
OptLevel = CodeGenOpt::Default;
MCJMM = nullptr;
Options = TargetOptions();
RelocModel = Reloc::Default;
CMModel = CodeModel::JITDefault;
UseOrcMCJITReplacement = false;
// IR module verification is enabled by default in debug builds, and disabled // IR module verification is enabled by default in debug builds, and disabled
// by default in release builds. // by default in release builds.
#ifndef NDEBUG #ifndef NDEBUG
@ -436,6 +415,14 @@ void EngineBuilder::InitEngine() {
#endif #endif
} }
EngineBuilder::~EngineBuilder() = default;
EngineBuilder &EngineBuilder::setMCJITMemoryManager(
std::unique_ptr<RTDyldMemoryManager> mcjmm) {
MCJMM = std::move(mcjmm);
return *this;
}
ExecutionEngine *EngineBuilder::create(TargetMachine *TM) { ExecutionEngine *EngineBuilder::create(TargetMachine *TM) {
std::unique_ptr<TargetMachine> TheTM(TM); // Take ownership. std::unique_ptr<TargetMachine> TheTM(TM); // Take ownership.

View File

@ -70,20 +70,10 @@ namespace {
class GCOVProfiler : public ModulePass { class GCOVProfiler : public ModulePass {
public: public:
static char ID; static char ID;
GCOVProfiler() : ModulePass(ID), Options(GCOVOptions::getDefault()) { GCOVProfiler() : GCOVProfiler(GCOVOptions::getDefault()) {}
init(); GCOVProfiler(const GCOVOptions &Opts) : ModulePass(ID), Options(Opts) {
}
GCOVProfiler(const GCOVOptions &Options) : ModulePass(ID), Options(Options){
assert((Options.EmitNotes || Options.EmitData) && assert((Options.EmitNotes || Options.EmitData) &&
"GCOVProfiler asked to do nothing?"); "GCOVProfiler asked to do nothing?");
init();
}
const char *getPassName() const override {
return "GCOV Profiler";
}
private:
void init() {
ReversedVersion[0] = Options.Version[3]; ReversedVersion[0] = Options.Version[3];
ReversedVersion[1] = Options.Version[2]; ReversedVersion[1] = Options.Version[2];
ReversedVersion[2] = Options.Version[1]; ReversedVersion[2] = Options.Version[1];
@ -91,6 +81,11 @@ namespace {
ReversedVersion[4] = '\0'; ReversedVersion[4] = '\0';
initializeGCOVProfilerPass(*PassRegistry::getPassRegistry()); initializeGCOVProfilerPass(*PassRegistry::getPassRegistry());
} }
const char *getPassName() const override {
return "GCOV Profiler";
}
private:
bool runOnModule(Module &M) override; bool runOnModule(Module &M) override;
// Create the .gcno files for the Module based on DebugInfo. // Create the .gcno files for the Module based on DebugInfo.