aboutsummaryrefslogtreecommitdiff
path: root/tools/driver
AgeCommit message (Collapse)Author
2010-04-08Fronted: Kill overly specialized RecordLayoutDumper, just make ↵Daniel Dunbar
-dump-record-layouts a bit that Sema honors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100747 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-07update for api change.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100718 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-06reduce indentation, tidy.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100537 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-05inline in MC assembly parsers. clang -integrated-as nowChris Lattner
works with inline asm! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100493 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-01Driver: Add support for a CLANGXX_IS_PRODUCTION build variable, which enableDaniel Dunbar
Clang++ support, even in "Production" mode (for testing purposes). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100119 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30Teach Clang's -cc1 option -print-stats to print LLVM statistics.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99894 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30make -ftime-report work even in -disable-free mode. Woo, finally.Chris Lattner
rdar://7781603 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99878 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-23Frontend: Don't free the CompilerInstance or FrontendActions when running underDaniel Dunbar
-disable-free. Among other things, this fixes freeing of the LLVM module on exit. - Note that this means we are disable-free'ing of a lot more stuff than we used to -- this should flush out bugs in anything left that is trying to do real work in its destructor. I did a mini-audit but '::~' is not totally uncommon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99258 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-20Driver: Support CC_PRINT_OPTIONS, used for logging the compile commands (in ↵Daniel Dunbar
-v style) to a file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99054 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-19clang -cc1: Kill off -empty-input only, and replace with -init-only which is anDaniel Dunbar
actual action. - This is easier to use, and more reliable for timing the thing this was actually meant to be useful for. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98978 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-12Allow users to set CPPFLAGS and CXXFLAGS on the make command line.Jeffrey Yasskin
Tested: make CPPFLAGS=-m64 CXXFLAGS=-m64 -j8 && (cd tools/clang;make test) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98399 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-08Mark variable as constKovarththanan Rajaratnam
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97951 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-25Frontend: Pull CodeGenAction out more, and eliminate CreateBackendConsumer.Daniel Dunbar
This is the way I would like to move the frontend function towards -- distinct pieces of functionality should be exposed only via FrontendAction implementations which have clean and relatively-stable APIs. This also isolates the surface area in clang which depends on LLVM CodeGen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97110 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-25Driver: Use TextDiagnosticPrinter instead of a custom one.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97102 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-21Remove unused includes.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96760 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-17clang: Add support for s// edit form of QA_OVERRIDE_GCC3_OPTIONS.Daniel Dunbar
- Used to do regex patsubst on arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96512 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-16CompilerInstance: Move LLVMContext member out of constructor.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96314 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-16Switch clang to use its own LLVMContext (not the global one).Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96313 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09Introduce a testbed for merging multiple ASTs into a single ASTDouglas Gregor
context with the AST importer. WIP, still useless but at least it has a test. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95683 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-03clang -cc1: Wire up -emit-obj, for emitting object files.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95182 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-29Bring driver link order in CMake into alignment with the order in the Makefile.Chandler Carruth
This includes the fix in r94797 to reflect the new dependency of Sema on Analysis. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94806 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-29Fix linking problem on Linux.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94797 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-25Split libAnalysis into two libraries: libAnalysis and libChecker.Ted Kremenek
(1) libAnalysis is a generic analysis library that can be used by Sema. It defines the CFG, basic dataflow analysis primitives, and inexpensive flow-sensitive analyses (e.g. LiveVariables). (2) libChecker contains the guts of the static analyzer, incuding the path-sensitive analysis engine and domain-specific checks. Now any clients that want to use the frontend to build their own tools don't need to link in the entire static analyzer. This change exposes various obvious cleanups that can be made to the layout of files and headers in libChecker. More changes pending. :) This change also exposed a layering violation between AnalysisContext and MemRegion. BlockInvocationContext shouldn't explicitly know about BlockDataRegions. For now I've removed the BlockDataRegion* from BlockInvocationContext (removing context-sensitivity; although this wasn't used yet). We need to have a better way to extend BlockInvocationContext (and any LocationContext) to add context-sensitivty. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94406 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-24-fno-rtti is now the default.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94379 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-18Make CMake's clang++ installation respect DESTDIR, based on a patch byDouglas Gregor
Ingmar Vanhassel. Fixes PR6046. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93741 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-18Don't build/install clang++ in CLANG_IS_PRODUCTION build mode yet.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93732 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-13cc1: Factor out CompilerInstance::ExecuteAction which has the majority of theDaniel Dunbar
clang -cc1 logic for running an action against a set of options. - This should make it easier to build tools that have a clang -cc1 like interface, but aren't actually part of clang -cc1. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93282 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-13cc1: Lift creation of the FrontendAction higher.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93281 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-25Driver: Use "g++" as generic gcc name when running in C++ mode, for platformsDaniel Dunbar
that lack real tool definitions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92164 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-23Remove RewriteBlocks. It has been superseded by RewriteObjCKovarththanan Rajaratnam
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92014 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-16Fix pretty stack traces.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91537 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-15Add -resource-dir to clang -cc1, this allows the base directory for compilerDaniel Dunbar
resources (e.g., /usr/lib/clang/1.1) to be passed on the command line instead of computed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91370 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-13CompilerInvocation: Move builtin-include-path logic out of ↵Daniel Dunbar
CompilerInvocation::CreateFromArgs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91237 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-12Un-namespace-qualify llvm_unreachable. It's a macro, so the qualification gaveJeffrey Yasskin
no extra safety anyway. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91207 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-11Implement clang -cc1.Daniel Dunbar
- I apologize for the link time horrors, my goal is to kill off clang-cc in fairly short order. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91170 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-08Remove several .c_str() to be forward-compatible with StringRef.Jeffrey Yasskin
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90822 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-04Add gcc's -no-canonical-prefixes option to clang.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90577 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-30Put CompilerInvocation testing code in clang-cc instead of clang for now, I ↵Daniel Dunbar
can't bear to link all of clang into 'clang' yet. :) - Still triggered by a magic leading -cc1 argument, as before. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90114 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-29Change CompilerInvocation::CreateFromArgs to report errors using a proper ↵Daniel Dunbar
diagnostic engine. - Clients that care about having the diagnostics output honor the user-controllable diagnostic options can buffer the diagnostics and issue them later. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90092 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-29Change CompilerInvocation::CreateFromArgs to take Argv0 and the address of ↵Daniel Dunbar
main (or something in the main executable) so it can find the builtin compiler files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90090 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-20Switch CompilerInvocation::CreateFromArgs to take const char** arguments ↵Daniel Dunbar
until Driver itself switches to StringRef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89503 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-20Add a workaround to silence a bogus g++-4.4 -pedantic warning.Benjamin Kramer
driver.cpp:211: warning: ISO C++ forbids zero-size array 'argv' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89455 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-19Fix some default in the option classes, and some CompilerInvocation argificationDaniel Dunbar
errors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89388 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-19Try yet again to de-bork CMake Windows build w.r.t. clang++Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89361 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-19Try to fix CMake clang++ creation on WindowsDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89336 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-19Sketch some 'clang -cc1' support, for testing parts of CompilerInvocation.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89333 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-19CMake goop to create clang++ symlinkDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89320 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-19Driver: ArgList doesn't depend on Options.h anymore.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89313 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-19Use TOOLALIAS so that clang++ gets 'built'.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89286 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-11Fix unsafe use of StringRef I introduced.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86829 91177308-0d34-0410-b5e6-96231b3b80d8