History log of /external/clang/lib/Tooling/Tooling.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ef8225444452a1486bd721f3285301fe84643b00 21-Jul-2014 Stephen Hines <srhines@google.com> Update Clang for rebase to r212749.

This also fixes a small issue with arm_neon.h not being generated always.

Includes a cherry-pick of:
r213450 - fixes mac-specific header issue
r213126 - removes a default -Bsymbolic on Android

Change-Id: I2a790a0f5d3b2aab11de596fc3a74e7cbc99081d
/external/clang/lib/Tooling/Tooling.cpp
6bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89 29-May-2014 Stephen Hines <srhines@google.com> Update Clang for 3.5 rebase (r209713).

Change-Id: I8c9133b0f8f776dc915f270b60f94962e771bc83
/external/clang/lib/Tooling/Tooling.cpp
651f13cea278ec967336033dd032faef0e9fc2ec 24-Apr-2014 Stephen Hines <srhines@google.com> Updated to Clang 3.5a.

Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
/external/clang/lib/Tooling/Tooling.cpp
fa8e7d344fc6ac9bf464419cc9cc2743b5036047 08-Nov-2013 Manuel Klimek <klimek@google.com> Adds the ability to inject a DiagnosticConsumer into ClangTools.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194226 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
8051db16aa9513333062ab3145f038429f66780f 06-Nov-2013 Peter Collingbourne <peter@pcc.me.uk> Introduce ClangTool::buildASTs, and buildASTFromCode.

These allow clients to retrieve persistent AST objects (ASTUnits) which
can be used in an ad-hoc manner after parsing.

To accommodate this change, the code for processing a CompilerInvocation
using a FrontendAction has been factored out to FrontendActionFactory, and
a new base class, ToolAction, has been introduced, allowing the tool to do
arbitrary things with each CompilerInvocation. This change was necessary
because ASTUnit does not use the FrontendAction interface directly.

This change also causes the FileManager in ClangTool to use shared ownership.
This will become necessary because ASTUnit takes shared ownership of
FileManager (ClangTool's FileManager is currently unused by ASTUnit; this
is a FIXME). As shown in the tests, any client of ToolInvocation will
need to be modified to use shared ownership for FileManager.

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194164 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
fc3389701ead32709ba84825e4c06651065da2c0 12-Sep-2013 Hans Wennborg <hans@hanshq.net> 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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190620 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
0f599acfd685437d1344f82ce363f994b0729a2f 11-Sep-2013 Benjamin Kramer <benny.kra@googlemail.com> Simplify code with the in place path::native. No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190515 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
bcb2500463e898e96656025c7742ae13eba7647e 10-Aug-2013 Rafael Espindola <rafael.espindola@gmail.com> Fix warning in builds without asserts.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188132 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
a2148240bd94ef659a9195b87e9cd0023536c01f 10-Aug-2013 Rafael Espindola <rafael.espindola@gmail.com> Simplify now that llvm::sys::current_path checks $PWD.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188128 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
b94000bffb8d50ae08e91dc2d944599d8997f84e 26-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove unused include.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184936 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
ac1db6b2bde50e9a0f3846243f654f6c13682725 26-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Use llvm::sys::fs::getMainExecutable.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184915 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
fe7ed9ec307ed6bcb962b6780bf3a156420662b3 25-Jun-2013 Nick Lewycky <nicholas@mxc.ca> In tooling, reenable freeing of datastructures in codegen, just as we do for
the frontend. We don't want to respect the -disable-free flag here.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184861 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
a372f40dac73b69936f6a713df0808c740bb326c 17-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Include PathV1.h only where it is used.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184090 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
b1e25a1bc03292dc538d336573e0be1490223171 14-Jun-2013 Reid Kleckner <reid@kleckner.net> [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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183989 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
63d5335aea916584b76790af1f1ed7caeaf8efeb 06-Jun-2013 Pavel Labath <labath@google.com> ClangTool: strip -o from the command line

Summary:
This patch creates a new ArgumentsAdjuster, which removes all -o parameters from
the command line. This adjuster is inserted by default into the ClangTool pipeline.

Reviewers: klimek

CC: cfe-commits, revane

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183398 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
48b3f0f74da575a66802dc5019b7440914983885 04-Jun-2013 Manuel Klimek <klimek@google.com> Enables chaining of argument adjusters in clang tools.

This enables changing clang-check to get extra arguments.

Patch by Pavel Labath.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183227 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
ad7e160e36a5010358ef33c4c81904297d62b9b2 15-Mar-2013 Edwin Vane <edwin.vane@intel.com> ClangTool output cleanup

Information messages sent to stdout by ClangTool now only happen when the
-debug flag is set.

Error messages that used to go to stdout now go to stderr.

Author: Ariel J Bernal <ariel.j.bernal@intel.com>


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177177 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
c45df068ee49f4b40802820b22d3cc4ba43ea627 13-Mar-2013 Edwin Vane <edwin.vane@intel.com> Reverting r176944 until Author fixes test failure.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176945 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
eea6a13b8eb8c446f1803720cc5d3ce79b643404 13-Mar-2013 Edwin Vane <edwin.vane@intel.com> ClangTool output cleanup

Information messages sent to stdout by ClangTool now only happen when the -debug
flag is set.

Error messages that used to go to stdout now go to stderr.

Author: Ariel J Bernal <ariel.j.bernal@intel.com>


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176944 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
d47afb96a3f988e6d21a92fe4dfe875ab227c7c0 20-Jan-2013 Sean Silva <silvas@purdue.edu> 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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172945 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
cfa88f893915ceb8ae4ce2f17c46c24a4d67502f 12-Jan-2013 Dmitri Gribenko <gribozavr@gmail.com> Remove useless 'llvm::' qualifier from names like StringRef and others that are
brought into 'clang' namespace by clang/Basic/LLVM.h


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172323 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
55fc873017f10f6f566b182b70f6fc22aefa3464 04-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Sort all of Clang's files under 'lib', and fix up the broken headers
uncovered.

This required manually correcting all of the incorrect main-module
headers I could find, and running the new llvm/utils/sort_includes.py
script over the files.

I also manually added quite a few missing headers that were uncovered by
shuffling the order or moving headers up to be main-module-headers.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169237 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
17c874a944090a74aa890d7b5ef361be6e4a0184 27-Nov-2012 Rafael Espindola <rafael.espindola@gmail.com> Remove some dead code. CLANG_IS_PRODUCTION is now just a build flag and
is not used in any #ifdef.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168703 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
02c23ebf41ae2f70da0ba7337e05c51fbfe35f7f 24-Oct-2012 Douglas Gregor <dgregor@apple.com> Make DiagnosticOptions intrusively reference-counted, and make sure
the various stakeholders bump up the reference count. In particular,
the diagnostics engine now keeps the DiagnosticOptions object alive.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166508 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
566698851d76416129cd20ceea02bdd697934c5c 30-Aug-2012 Nico Weber <nicolasweber@gmx.de> Tooling: Add a runToolOnCodeWithArgs() function that allows
passing additional parameters to a tool.

Use this to fix a FIXME in testing code.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162889 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
98be86038b1e891a05583061c55dfa974150eb2c 31-Jul-2012 Manuel Klimek <klimek@google.com> Fixes a segfault in Tooling when using pch's:
Clear the FileManager's stat cache in between running
translation units, as the stat cache loaded from a pch
is only valid for one compiler invocation.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161047 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
8fa2fb859a4cb8e67d9763225281d9b0aa9cb59f 10-Jul-2012 Manuel Klimek <klimek@google.com> Adds support for auto-detection of compilation databases
from a source file and changes clang-check to make use of this.

This makes clang-check just work on in-tree builds, and allows
easy setup via a symlink per source directory to make clang-check
work without any extra configuration.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
e6df0ce08fcdf9f906556d98cca96d38ab440bba 05-Jul-2012 Manuel Klimek <klimek@google.com> Adapts the FrontendAction convenience functions so that it can be
used with classes that generate ASTConsumers; this allows decoupling
the ASTConsumer generation from the Frontend library (like, for example,
the MatchFinder in the upcoming ASTMatcher patch).



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159760 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
30c009b5fa4d22ddabfe6ad6ba4158a664a4bd83 04-Jun-2012 Alexander Kornienko <alexfh@google.com> Fixed a problem related to resolution of built-in headers in case a path of tool's binary contains sym-links.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157944 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
0ef8db20b32aaa027c2fbd230c46c22b4b47079d 02-Jun-2012 NAKAMURA Takumi <geek4civic@gmail.com> ToolInvocation::mapVirtualFile(): Tweak for Win32. Handle the key as native path.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157889 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
14a192435425af39e7f32b6e71613f9357e995f7 31-May-2012 Alexander Kornienko <alexfh@google.com> Fix an object lifetime issue in clang/Tooling.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157759 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
240193b3e7e6b852134ea94353bbaf42f1495fdd 30-May-2012 Alexander Kornienko <alexfh@google.com> Fixed a memory leak in clang/Tooling.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157687 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
62d198c5b1174279174eb35d222b5cee46f3ef6f 24-May-2012 NAKAMURA Takumi <geek4civic@gmail.com> Tooling: Canonicalize Key in IndexByFile[]. llvm::sys::path::native() may be used here.

It fixes test/Tooling on Win32 hosts.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157350 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
a01ddc787b5c8b1cf11e975d3586908d3629954c 09-May-2012 Simon Atanasyan <satanasyan@mips.com> Declare abstract class ArgumentsAdjuster. This abstract interface describes
a command line argument adjuster, which is responsible for command line
arguments modification before the arguments are used to run a frontend action.

Define class ClangSyntaxOnlyAdjuster implements ArgumentsAdjuster interface.
This class converts input command line arguments to the "syntax check only"
variant.

Reviewed by Manuel Klimek.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156478 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
ed5ee48872118ba3e8f747c7133d7adcacb73850 07-May-2012 Manuel Klimek <klimek@google.com> Fix includes for unices that don't have chdir declared transitively.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156302 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
3b6e319c05a3f9858cbc1ceb68fd1b1895b6d2dc 07-May-2012 Manuel Klimek <klimek@google.com> Includes direct.h for windows compilation.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156301 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
00f3c4f499cc27c88005176226bb424f6db4a31b 07-May-2012 Manuel Klimek <klimek@google.com> Fixes resolution of relative paths when running clang tools.

The chdir is not the perfect fix, as it is thread hostile. The
real fix will be to make -working-dir work correctly, which will
take time to implement. Before that, the tooling library cannot
be used concurrently.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156299 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
3e8479d97f59594ac90799f3ff831ac3b2b81c48 25-Apr-2012 Manuel Klimek <klimek@google.com> Fixes the header search logic for tools:
The driver needs to get the correct path to the executable to deduce
the header search path.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155542 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
4f5b3ac46402e4e0ad8b4faceb1c071d53cd07b3 09-Apr-2012 Manuel Klimek <klimek@google.com> Fixes a fix to finding the current directory:
We currently want to look whether PWD is available - if PWD is available it will
get us the non-resolved current path, while fs::current_path will resolve
symlinks. The long term fix is to not rely on that behavior any more.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154330 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
01b8ca52fe94f53461de34e191935b74cecd02db 04-Apr-2012 NAKAMURA Takumi <geek4civic@gmail.com> Tooling.cpp: Reorder inclusions according to the conding standards.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154016 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
b175d0f054e2173d51eba046434410c90b4a5c61 04-Apr-2012 NAKAMURA Takumi <geek4civic@gmail.com> Tooling.cpp: Don't refer to $ENV{PWD}. Use llvm::sys::fs instead.

$ENV{PWD} is not expected to be set on all hosts.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154015 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
cb971c6726d16e12ecd2a340941d7f5c06698332 04-Apr-2012 Manuel Klimek <klimek@google.com> Adds a tooling library.

Provides an API to run clang tools (FrontendActions) as standalone tools,
or repeatedly in-memory in a process. This is useful for unit-testing,
map-reduce style applications, source transformation daemons or command line
tools.

The ability to run over multiple translation units with different command
line arguments enables building up refactoring tools that need to apply
transformations across translation unit boundaries.

See tools/clang-check/ClangCheck.cpp for an example.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154008 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
16f213142f8f8f5410672205a19f79ed3c232929 02-Jun-2011 Manuel Klimek <klimek@google.com> Reverts the Tooling changes as requested by Chris.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132462 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
64cbdf370984783911bb6d3bc25ec35a8b59e998 01-Jun-2011 Manuel Klimek <klimek@google.com> 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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132374 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
81e557b1ded0e3249f784172c54728469baad1db 16-May-2011 Manuel Klimek <klimek@google.com> Pulls the common part of the clang-check example into Tooling, to allow new tools to be implemented without duplicating the boilerplate.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131425 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
0ddd364aa2c836e4014c85bc379f45465b97d450 30-Apr-2011 Benjamin Kramer <benny.kra@googlemail.com> Remove noisy semicolons.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130621 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
9a05fa97df4d5e64f740848a7759ecae5e1ed162 27-Apr-2011 Manuel Klimek <klimek@google.com> This is the next step in building the standalone tools infrastructure:
This patch simplifies writing of standalone Clang tools. As an
example, we add clang-check, a tool that runs a syntax only frontend
action over a .cc file. When you integrate this into your favorite
editor, you get much faster feedback on your compilation errors, thus
reducing your feedback cycle especially when writing new code.

The tool depends on integration of an outstanding patch to CMake to
work which allows you to always have a current compile command
database in your cmake output directory when you set
CMAKE_EXPORT_COMPILE_COMMANDS.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130306 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp
cf3ce5d89628b3955c638fb102c8dc4c24e1986d 21-Apr-2011 Manuel Klimek <klimek@google.com> Adds a function to run FrontendActions over in-memory code. This is
the first step towards a standalone Clang tool infrastructure.
The plan is to make it easy to build command line tools that run over
the AST of source files in a project outside of the build system.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129924 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Tooling/Tooling.cpp