Commit Graph

137 Commits

Author SHA1 Message Date
Hans Wennborg b212b34f19 Move Compilation::PrintJob and PrintDiagnosticJob into Job::Print.
This moves the code to Job.cpp, which seems like a more natural fit,
and replaces the "is this a JobList? is this a Command?" logic with
a virtual function call.

It also removes the code duplication between PrintJob and
PrintDiagnosticJob and simplifies the code a little.

There's no functionality change here, except that the Executable is
now always printed within quotes, whereas it would previously not be
quoted in crash reports, which I think was a bug.

Differential Revision: http://llvm-reviews.chandlerc.com/D1653

llvm-svn: 190620
2013-09-12 18:23:34 +00:00
Rafael Espindola e6151cf586 Remove unused header.
llvm-svn: 184945
2013-06-26 13:49:47 +00:00
Rafael Espindola 9678d27140 Use llvm::sys::fs::getMainExecutable.
llvm-svn: 184915
2013-06-26 05:03:40 +00:00
Rafael Espindola 1600a53bc0 Include PathV1.h only where it is used.
llvm-svn: 184090
2013-06-17 17:23:47 +00:00
Reid Kleckner 898229ab4b [Driver] Refactor clang driver to use LLVM's Option library
The big changes are:
- Deleting Driver/(Arg|Opt)*
- Rewriting includes to llvm/Option/ and re-sorting
- 'using namespace llvm::opt' in clang::driver
- Fixing the autoconf build by adding option everywhere

As discussed in the review, this change includes using directives in
header files.  I'll make follow up changes to remove those in favor of
name specifiers.

Reviewers: espindola

Differential Revision: http://llvm-reviews.chandlerc.com/D975

llvm-svn: 183989
2013-06-14 17:17:23 +00:00
Chandler Carruth b45836a231 The IRReader header is now part of its own library. Update the include
line and the library dependencies to reflect this.

llvm-svn: 177972
2013-03-26 02:25:54 +00:00
Sean Silva f1b49e237f Nuke SetUpBuildDumpLog.
Also, it was the only reason that `argc` and `argv` were being passed
into createDiagnostics, so remove those parameters and clean up callers.

llvm-svn: 172945
2013-01-20 01:58:28 +00:00
Peter Collingbourne e8baf33712 Use getProcessTriple in clang-interpreter.
llvm-svn: 172664
2013-01-16 22:37:09 +00:00
Dmitri Gribenko f857950d39 Remove useless 'llvm::' qualifier from names like StringRef and others that are
brought into 'clang' namespace by clang/Basic/LLVM.h

llvm-svn: 172323
2013-01-12 19:30:44 +00:00
Chandler Carruth ffd5551bc7 Rewrite #includes for llvm/Foo.h to llvm/IR/Foo.h as appropriate to
reflect the migration in r171366.

Re-sort the #include lines to reflect the new paths.

llvm-svn: 171369
2013-01-02 11:45:17 +00:00
Douglas Gregor 27c42e66bb Revert r170801, which breaks the mingw build.
llvm-svn: 170804
2012-12-20 23:36:52 +00:00
Douglas Gregor d04592dc81 Eliminate errors when running the 'PrintFunctionNames' plugin, from Li Qun!
llvm-svn: 170801
2012-12-20 23:11:42 +00:00
Chandler Carruth 8675b4af77 Sort the #include lines for examples/...
llvm-svn: 169241
2012-12-04 09:37:22 +00:00
Rafael Espindola e3cfca7aa2 Fix examples.
llvm-svn: 168705
2012-11-27 16:16:02 +00:00
NAKAMURA Takumi 53eefc43f4 analyzer-plugin/MainCallChecker.cpp: Fixup corresponding to r167275.
llvm-svn: 167278
2012-11-02 02:04:01 +00:00
Douglas Gregor cdb4d699a8 Update clang-interpreter example
llvm-svn: 166510
2012-10-23 22:36:49 +00:00
Ted Kremenek cdf814900d Split library clangRewrite into clangRewriteCore and clangRewriteFrontend.
This is similar to how we divide up the StaticAnalyzer libraries to separate
core functionality to what is clearly associated with Frontend actions.

llvm-svn: 163050
2012-09-01 05:09:24 +00:00
NAKAMURA Takumi a9a35c67e1 libclang, examples: [CMake] Add dependencies to tblgen'd headers.
llvm-svn: 160849
2012-07-27 06:17:56 +00:00
Chandler Carruth 28969b4139 Remove a goofy CMake hack and use the standard CMake facilities to
express library-level dependencies within Clang.

This is no more verbose really, and plays nicer with the rest of the
CMake facilities. It should also have no change in functionality.

llvm-svn: 158888
2012-06-21 01:30:21 +00:00
Peter Collingbourne 9251b7d873 Honour CLANG_BUILD_EXAMPLES correctly, by setting the directory's
EXCLUDE_FROM_ALL property.

llvm-svn: 156090
2012-05-03 19:11:45 +00:00
Manuel Klimek 34e0f6cba2 Reverted unintentional commit.
llvm-svn: 155629
2012-04-26 08:46:12 +00:00
Manuel Klimek c01d3fbe0f Adds a small tutorial on how to write RAV based ASTFrontendActions.
llvm-svn: 155627
2012-04-26 08:35:39 +00:00
Douglas Gregor 11f91b9fe7 Remove clangIndex reference from clang-interpreter CMake build
llvm-svn: 154674
2012-04-13 17:22:46 +00:00
NAKAMURA Takumi a4917fade7 clang-interpreter/Makefile: [PR12313] Update USEDLIBS to add clangEdit.
llvm-svn: 153167
2012-03-21 06:25:42 +00:00
Douglas Gregor d23e333bf6 Remove clang-wpa example, which has been unmaintained for quite a while.
llvm-svn: 152729
2012-03-14 17:29:44 +00:00
David Blaikie bbafb8a745 Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST).
The member variable is always "LangOpts" and the member function is always "getLangOpts".

Reviewed by Chris Lattner

llvm-svn: 152536
2012-03-11 07:00:24 +00:00
Anna Zaks fc5dfe9f7c [analyzer] Rename clang::CallGraph into clang::idx::CallGraph + rename
the corresponding files to avoid confusion.

This is a preparation to adding an AST-based call graph to Analysis. The
existing call graph works with indexer entries. We might be able to
refactor it to use the AST based graph in the future.

(Minimal testing here as the only example that uses the API has been
completely broken, does not compile.)

llvm-svn: 151950
2012-03-02 22:54:36 +00:00
Dylan Noblesmith c95d81924d Basic: import IntrusiveRefCntPtr<> into clang namespace
The class name is long enough without the llvm:: added.
Also bring in RefCountedBase and RefCountedBaseVPTR.

llvm-svn: 150958
2012-02-20 14:00:23 +00:00
Dylan Noblesmith f1a13f29f2 drop more llvm:: prefixes on SmallString<>
More cleanup after r149799.

llvm-svn: 150380
2012-02-13 12:32:26 +00:00
Dylan Noblesmith 1cd1069b68 drop more llvm:: prefixes on OwningPtr<>
More cleanup after r149798.

llvm-svn: 150379
2012-02-13 12:32:21 +00:00
Dylan Noblesmith 01b2c9e82f examples/analyzer-plugin: hook up to build
This was never being compiled at all and was bitrotting
as a result.

Also compile SampleAnalyzerPlugin as a module, not a library,
and fix a mistake with not passing the source files
to add_clang_library().

llvm-svn: 150378
2012-02-13 12:32:15 +00:00
Dylan Noblesmith aa1a64055b examples/analyzer-plugin/: unbreak build
It was never updated for API changes in r149311/r149336/r149339
and r147688.

llvm-svn: 150202
2012-02-09 20:02:49 +00:00
Peter Collingbourne 53860cfeb0 Adjust CLANG_BUILD_EXAMPLES to mean whether the examples are built
by default, rather than whether they may be built at all.

llvm-svn: 149037
2012-01-26 03:33:40 +00:00
Dylan Noblesmith 1ced737ebf remove unneeded config.h includes
llvm-svn: 147195
2011-12-22 22:49:47 +00:00
Dylan Noblesmith 4cde694855 examples: flesh out PFN readme
Show how to actually use the arguments it has.

llvm-svn: 146845
2011-12-18 11:30:53 +00:00
Douglas Gregor 9f39a765e2 Update signature of HandleTopLevelDecl.
llvm-svn: 145001
2011-11-19 19:22:13 +00:00
Sebastian Pop 8188c8a1f3 rename getHostTriple into getDefaultTargetTriple in clang
llvm-svn: 143503
2011-11-01 21:33:06 +00:00
Peter Collingbourne f1d76db466 Add support for lazily linking bitcode files (using a new
-mlink-bitcode-file flag), and more generally llvm::Modules, before
running optimisations.

llvm-svn: 143314
2011-10-30 17:30:44 +00:00
Eli Friedman 4e84e46b7b Add missing include to clang-interpreter example, to make it work on Windows. Patch by Dean Pavlekovic.
llvm-svn: 141324
2011-10-06 22:24:13 +00:00
Bob Wilson 05de0298d2 Rip out flags for controlling C++ "production mode" separately.
This is old leftover cruft from the days when C++ was not yet ready
for prime time.

llvm-svn: 141063
2011-10-04 05:34:14 +00:00
Eli Friedman f42db7ce48 Fix examples for r140478. PR11021.
llvm-svn: 140618
2011-09-27 18:33:47 +00:00
Evan Cheng 494eb062b5 Match LLVM change: TargetRegistry and TargetSelect have been moved to Support.
llvm-svn: 138451
2011-08-24 18:09:14 +00:00
Anna Zaks 3a6bdf8f82 Remove EnhancedBugReport and RangedBugReport - pull all the extra functionality they provided into their parent BugReport. The only functional changes are: made getRanges() non const - it adds default range to Ranges if none are supplied, made getStmt() private, which was another FIXME.
llvm-svn: 137894
2011-08-17 23:00:25 +00:00
Jordy Rose ae55cf2f90 Don't use BuiltinBug in analyzer plugin example.
llvm-svn: 137811
2011-08-17 03:23:51 +00:00
Jordy Rose 93b86e494d [analyzer] Add basic support for pluggable checkers.
llvm-svn: 137802
2011-08-17 01:30:59 +00:00
Manuel Klimek 8a160cc42b Reverts the Tooling changes as requested by Chris.
llvm-svn: 132462
2011-06-02 16:58:33 +00:00
Manuel Klimek 9978c4f730 Fixes Makefile based build for examples/Tooling.
llvm-svn: 132380
2011-06-01 01:21:01 +00:00
Nick Lewycky 15cf577ff9 Put Parse before Sema on the link line since parse depends on sema.
Also reflow these lines to fit in 80-col.

llvm-svn: 132379
2011-06-01 00:59:36 +00:00
Manuel Klimek 0cfc6a045c This patch implements an AST matching framework that allows to write
tools that match on the C++ ASTs. The main interface is in ASTMatchers.h,
an example implementation of a tool that removes redundant .c_str() calls
is in the example RemoveCStrCalls.cpp.

Various contributions:
Zhanyong Wan, Chandler Carruth, Marcin Kowalczyk, Wei Xu, James Dennett.

llvm-svn: 132374
2011-05-31 23:49:32 +00:00
Zhongxing Xu e6a2028fe1 Fix linking of clang-wpa.
llvm-svn: 132329
2011-05-31 07:13:36 +00:00