summaryrefslogtreecommitdiff
path: root/tools/llc
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-02-03 05:55:08 +0000
committerChris Lattner <sabre@nondot.org>2010-02-03 05:55:08 +0000
commit5669e3009761dff20b67e18a382c334041887928 (patch)
tree1627a6f9aa094e2aba6b96e3e258b7e47de42a14 /tools/llc
parentfebc81680c80a53f15f85b1812cba07fc179b9fd (diff)
downloadllvm-5669e3009761dff20b67e18a382c334041887928.tar.gz
llvm-5669e3009761dff20b67e18a382c334041887928.tar.bz2
llvm-5669e3009761dff20b67e18a382c334041887928.tar.xz
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95202 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llc')
-rw-r--r--tools/llc/llc.cpp18
1 files changed, 5 insertions, 13 deletions
diff --git a/tools/llc/llc.cpp b/tools/llc/llc.cpp
index c7bd1c6706..fe34bd128e 100644
--- a/tools/llc/llc.cpp
+++ b/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<bool> 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();