aboutsummaryrefslogtreecommitdiff
path: root/tools/gccas/gccas.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-12-03 05:45:58 +0000
committerChris Lattner <sabre@nondot.org>2004-12-03 05:45:58 +0000
commit40add594ebb8701fc43f0eb77d296f9b7ea0a5d4 (patch)
treee0b93d9a090a6172d607eded3770cd809f0916d4 /tools/gccas/gccas.cpp
parentf3fa55f9795c82feef7049f176c0267096f0ffc9 (diff)
Add -strip-debug option
remove the temporary -disable-dse option git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18451 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/gccas/gccas.cpp')
-rw-r--r--tools/gccas/gccas.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/tools/gccas/gccas.cpp b/tools/gccas/gccas.cpp
index dd8b8e0698..ef1d8d6376 100644
--- a/tools/gccas/gccas.cpp
+++ b/tools/gccas/gccas.cpp
@@ -48,7 +48,9 @@ namespace {
cl::desc("Do not run any optimization passes"));
cl::opt<bool>
- DisableDSE("disable-dse", cl::desc("Do not run dead store elimination"));
+ StripDebug("strip-debug",
+ cl::desc("Strip debugger symbol info from translation unit"));
+
cl::opt<bool>
NoCompress("disable-compression", cl::init(false),
cl::desc("Don't ompress the generated bytecode"));
@@ -66,9 +68,14 @@ static inline void addPass(PassManager &PM, Pass *P) {
void AddConfiguredTransformationPasses(PassManager &PM) {
PM.add(createVerifierPass()); // Verify that input is correct
+
addPass(PM, createLowerSetJmpPass()); // Lower llvm.setjmp/.longjmp
addPass(PM, createFunctionResolvingPass()); // Resolve (...) functions
+ // If the -strip-debug command line option was specified, do it.
+ if (StripDebug)
+ addPass(PM, createStripSymbolsPass(true));
+
if (DisableOptimizations) return;
addPass(PM, createRaiseAllocationsPass()); // call %malloc -> malloc inst
@@ -109,8 +116,7 @@ void AddConfiguredTransformationPasses(PassManager &PM) {
// Run instcombine after redundancy elimination to exploit opportunities
// opened up by them.
addPass(PM, createInstructionCombiningPass());
- if (!DisableDSE)
- addPass(PM, createDeadStoreEliminationPass()); // Delete dead stores
+ addPass(PM, createDeadStoreEliminationPass()); // Delete dead stores
addPass(PM, createAggressiveDCEPass()); // SSA based 'Aggressive DCE'
addPass(PM, createCFGSimplificationPass()); // Merge & remove BBs
addPass(PM, createDeadTypeEliminationPass()); // Eliminate dead types