summaryrefslogtreecommitdiff
path: root/tools/llvmc/example
diff options
context:
space:
mode:
authorMikhail Glushenkov <foldr@codedgers.com>2009-07-07 16:39:33 +0000
committerMikhail Glushenkov <foldr@codedgers.com>2009-07-07 16:39:33 +0000
commit091ca1c9e0327187de2ea612d65c8770be618e1b (patch)
treeb7bd291d5400f96ac67dbb6916d3e162aaff63d4 /tools/llvmc/example
parente277fed6eba2f9efabb5515bce60304fab32c1e0 (diff)
downloadllvm-091ca1c9e0327187de2ea612d65c8770be618e1b.tar.gz
llvm-091ca1c9e0327187de2ea612d65c8770be618e1b.tar.bz2
llvm-091ca1c9e0327187de2ea612d65c8770be618e1b.tar.xz
Show how to modify built-in options.
Sanjiv complained about the need to maintain local changes to lib/CompilerDriver. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74912 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvmc/example')
-rw-r--r--tools/llvmc/example/mcc16/driver/Main.cpp21
1 files changed, 19 insertions, 2 deletions
diff --git a/tools/llvmc/example/mcc16/driver/Main.cpp b/tools/llvmc/example/mcc16/driver/Main.cpp
index b1f5b6798a..5b57d88478 100644
--- a/tools/llvmc/example/mcc16/driver/Main.cpp
+++ b/tools/llvmc/example/mcc16/driver/Main.cpp
@@ -7,8 +7,25 @@
//
//===----------------------------------------------------------------------===//
//
-// Just include CompilerDriver/Main.inc.
+// Usually this file just includes CompilerDriver/Main.inc, but here we apply
+// some trickery to make the built-in '-save-temps' option hidden and enabled
+// by default.
//
//===----------------------------------------------------------------------===//
-#include "llvm/CompilerDriver/Main.inc"
+#include "llvm/CompilerDriver/BuiltinOptions.h"
+#include "llvm/CompilerDriver/ForceLinkage.h"
+
+namespace llvmc {
+ int Main(int argc, char** argv);
+}
+
+int main(int argc, char** argv) {
+
+ // HACK
+ SaveTemps = SaveTempsEnum::Obj;
+ SaveTemps.setHiddenFlag(llvm::cl::Hidden);
+
+ llvmc::ForceLinkage();
+ return llvmc::Main(argc, argv);
+}