From edcf065a29679ffed93d83f94c755679917faf54 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 3 Feb 2010 05:55:08 +0000 Subject: change addPassesToEmitFile to return true on failure instead of its input, add -filetype=null for performance testing and remove -filetype=dynlib, which isn't planned to be implemented. llvm-svn: 95202 --- llvm/tools/llc/llc.cpp | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) (limited to 'llvm/tools/llc/llc.cpp') diff --git a/llvm/tools/llc/llc.cpp b/llvm/tools/llc/llc.cpp index c7bd1c67067..fe34bd128ea 100644 --- a/llvm/tools/llc/llc.cpp +++ b/llvm/tools/llc/llc.cpp @@ -91,9 +91,8 @@ FileType("filetype", cl::init(TargetMachine::CGFT_AssemblyFile), "Emit an assembly ('.s') file"), clEnumValN(TargetMachine::CGFT_ObjectFile, "obj", "Emit a native object ('.o') file [experimental]"), - clEnumValN(TargetMachine::CGFT_DynamicLibrary, "dynlib", - "Emit a native dynamic library ('.so') file" - " [experimental]"), + clEnumValN(TargetMachine::CGFT_Null, "null", + "Emit nothing, for performance testing"), clEnumValEnd)); cl::opt NoVerify("disable-verify", cl::Hidden, @@ -177,8 +176,8 @@ static formatted_raw_ostream *GetOutputStream(const char *TargetName, OutputFilename += ".o"; Binary = true; break; - case TargetMachine::CGFT_DynamicLibrary: - OutputFilename += LTDL_SHLIB_EXT; + case TargetMachine::CGFT_Null: + OutputFilename += ".null"; Binary = true; break; } @@ -348,20 +347,13 @@ int main(int argc, char **argv) { // Override default to generate verbose assembly. Target.setAsmVerbosityDefault(true); - switch (Target.addPassesToEmitFile(Passes, *Out, FileType, OLvl)) { - default: - assert(0 && "Invalid file model!"); - return 1; - case TargetMachine::CGFT_ErrorOccurred: + if (Target.addPassesToEmitFile(Passes, *Out, FileType, OLvl)) { errs() << argv[0] << ": target does not support generation of this" << " file type!\n"; if (Out != &fouts()) delete Out; // And the Out file is empty and useless, so remove it now. sys::Path(OutputFilename).eraseFromDisk(); return 1; - case TargetMachine::CGFT_AssemblyFile: - case TargetMachine::CGFT_ObjectFile: - break; } Passes.doInitialization(); -- cgit v1.2.3