Index: lld/trunk/wasm/Driver.cpp =================================================================== --- lld/trunk/wasm/Driver.cpp +++ lld/trunk/wasm/Driver.cpp @@ -34,14 +34,9 @@ using namespace lld; using namespace lld::wasm; -namespace { +Configuration *lld::wasm::Config; -// Parses command line options. -class WasmOptTable : public llvm::opt::OptTable { -public: - WasmOptTable(); - llvm::opt::InputArgList parse(ArrayRef Argv); -}; +namespace { // Create enum with OPT_xxx values for each option in Options.td enum { @@ -56,17 +51,14 @@ void link(ArrayRef ArgsArr); private: - void createFiles(llvm::opt::InputArgList &Args); + void createFiles(opt::InputArgList &Args); void addFile(StringRef Path); void addLibrary(StringRef Name); std::vector Files; llvm::wasm::WasmGlobal StackPointerGlobal; }; - } // anonymous namespace -Configuration *lld::wasm::Config; - bool lld::wasm::link(ArrayRef Args, bool CanExitEarly, raw_ostream &Error) { errorHandler().LogName = Args[0]; @@ -91,8 +83,6 @@ return !errorCount(); } -// Create OptTable - // Create prefix string literals used in Options.td #define PREFIX(NAME, VALUE) const char *const NAME[] = VALUE; #include "Options.inc" @@ -107,6 +97,12 @@ #undef OPTION }; +class WasmOptTable : public llvm::opt::OptTable { +public: + WasmOptTable() : OptTable(OptInfo) {} + opt::InputArgList parse(ArrayRef Argv); +}; + // Set color diagnostics according to -color-diagnostics={auto,always,never} // or -no-color-diagnostics flags. static void handleColorDiagnostics(opt::InputArgList &Args) { @@ -143,8 +139,6 @@ WasmOptTable().PrintHelp(outs(), Argv0, "LLVM Linker", false); } -WasmOptTable::WasmOptTable() : OptTable(OptInfo) {} - opt::InputArgList WasmOptTable::parse(ArrayRef Argv) { SmallVector Vec(Argv.data(), Argv.data() + Argv.size());