| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 85862
|
|
|
|
| |
llvm-svn: 85825
|
|
|
|
|
|
|
|
|
|
|
| |
-code-completion-at=filename:line:column
which performs code completion at the specified location by truncating
the file at that position and enabling code completion. This approach
makes it possible to run multiple tests from a single test file, and
gives a more natural command-line interface.
llvm-svn: 82571
|
|
|
|
| |
llvm-svn: 81346
|
|
|
|
| |
llvm-svn: 79868
|
|
|
|
| |
llvm-svn: 79854
|
|
|
|
| |
llvm-svn: 74194
|
|
|
|
| |
llvm-svn: 74020
|
|
|
|
|
|
| |
source locations and determine which one comes before the other, relative to the translation unit.
llvm-svn: 74014
|
|
|
|
|
|
| |
another place.
llvm-svn: 73931
|
|
|
|
| |
llvm-svn: 73826
|
|
|
|
|
|
| |
"file:line:column" triplet.
llvm-svn: 73823
|
|
|
|
| |
llvm-svn: 73027
|
|
|
|
|
|
| |
- Chris, please see added FIXMEs.
llvm-svn: 72019
|
|
|
|
|
|
| |
ignore a PCH file.
llvm-svn: 70251
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
file. In particular, only eagerly load source location entries for
files and for the predefines buffer. Other buffers and
macro-instantiation source location entries are loaded lazily.
With the Cocoa-prefixed "Hello, World", we only load 815/26555 source
location entities. This halves the amount of user time we spend in
this "Hello, World" program with -fsyntax-only (down to .007s).
This optimization is part 1 of 2 for the source manager. This
eliminates most of the user time in loading a PCH file. We still spend
too much time initialize File structures (especially in the calls to
stat), so we need to either make the loading of source location
entries for files lazy or import the stat cache from the PTH
implementation.
llvm-svn: 70196
|
|
|
|
|
|
|
| |
headers. Future approaches to (de-)serializing ASTs will be based on
the PCH infrastructure.
llvm-svn: 69828
|
|
|
|
|
|
| |
properly cope with #line directives in PCH files.
llvm-svn: 68963
|
|
|
|
|
|
| |
separate Internals header. No functionality change
llvm-svn: 68960
|
|
|
|
| |
llvm-svn: 68346
|
|
|
|
|
|
|
| |
with "clang t.i s.i" where the .i files contain line markers.
rdar://6667812
llvm-svn: 66619
|
|
|
|
| |
llvm-svn: 64760
|
|
|
|
| |
llvm-svn: 64758
|
|
|
|
| |
llvm-svn: 64606
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now instead of just tracking the expansion history, also track the full
range of the macro that got replaced. For object-like macros, this doesn't
change anything. For _Pragma and function-like macros, this means we track
the locations of the ')'.
This is required for PR3579 because apparently GCC uses the line of the ')'
of a function-like macro as the location to expand __LINE__ to.
llvm-svn: 64601
|
|
|
|
| |
llvm-svn: 64556
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
line markers, including maintenance of the virtual include stack.
For something like this:
# 42 "bar.c" 1
# 142 "bar2.c" 1
#warning zappa
# 92 "bar.c" 2
#warning gonzo
# 102 "foo.c" 2
#warning bonkta
we now produce these three warnings:
#1:
In file included from foo.c:3:
In file included from bar.c:42:
bar2.c:143:2: warning: #warning zappa
#warning zappa
^
#2:
In file included from foo.c:3:
bar.c:92:2: warning: #warning gonzo
#warning gonzo
^
#3:
foo.c:102:2: warning: #warning bonkta
#warning bonkta
^
llvm-svn: 63722
|
|
|
|
|
|
| |
play around with the 'is system header' bit now function correctly.
llvm-svn: 63720
|
|
|
|
|
|
| |
ignoring include stack push/pop info though.
llvm-svn: 63719
|
|
|
|
| |
llvm-svn: 63717
|
|
|
|
|
|
| |
more likely to hit.
llvm-svn: 63714
|
|
|
|
| |
llvm-svn: 63712
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
query point to the returned presumed location. We now produce:
foo.h:92:2: warning: #warning blarg!
#warning blarg!
^
foo.h:93:2: warning: #warning blarg!
#warning blarg!
^
foo.h:94:2: warning: #warning blarg!
#warning blarg!
^
for:
#line 92 "foo.h"
#warning blarg!
#warning blarg!
#warning blarg!
blarg indeed!
llvm-svn: 63710
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
location below it report as coming from the #line location. For example,
with:
#line 92 "foo.h"
#warning blarg!
#warning blarg!
we now emit:
foo.h:92:2: warning: #warning blarg!
#warning blarg!
^
foo.h:92:2: warning: #warning blarg!
#warning blarg!
^
llvm-svn: 63709
|
|
|
|
|
|
|
|
| |
getColumnNumber. This fixes a FIXME in
SourceManager::getPresumedLoc because we now just decompose
the sloc once.
llvm-svn: 63701
|
|
|
|
|
|
|
|
| |
makes it clear to clients that they have to pick an instantiation
or spelling location before calling it and allows optimization based
on that.
llvm-svn: 63698
|
|
|
|
| |
llvm-svn: 63694
|
|
|
|
|
|
| |
out of FileInfo :)
llvm-svn: 63672
|
|
|
|
| |
llvm-svn: 63667
|
|
|
|
|
|
| |
are 8-byte aligned.
llvm-svn: 63630
|
|
|
|
|
|
|
|
|
| |
ContentCache objects to using a densemap and list, and allocating
the ContentCache objects from a bump pointer. This does not speed
up or slow down things substantially, but gives us control over
their alignment.
llvm-svn: 63628
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
as reported to the user and as manipulated by #line. This is what __FILE__,
__INCLUDE_LEVEL__, diagnostics and other things should follow (but not
dependency generation!).
This patch also includes several cleanups along the way:
- SourceLocation now has a dump method, and several other places
that did similar things now use it.
- I cleaned up some code in AnalysisConsumer, but it should probably be
simplified further now that NamedDecl is better.
- TextDiagnosticPrinter is now simplified and cleaned up a bit.
This patch is a prerequisite for #line, but does not actually provide
any #line functionality.
llvm-svn: 63098
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
address space we used up. Some interesting data:
For c99-intconst-1.c:
6912762 SLocEntry's allocated, 25592386B of Sloc address space used.
For cocoa.h:
26469 SLocEntry's allocated, 10278752B of Sloc address space used.
For carbon.h:
27364 SLocEntry's allocated, 12398141B of Sloc address space used.
Clearly 2G of sloc address space should be enough for anyone?!
llvm-svn: 63093
|
|
|
|
|
|
|
| |
source locations, allow creation of them. We can now say that
a token was instantiated here, then here, then here.
llvm-svn: 63034
|
|
|
|
|
|
| |
locations, and move the slow case out of line. No perf change on cocoa.h
llvm-svn: 63033
|
|
|
|
|
|
|
| |
which I think is rdar://6527005, and make getDecomposedSpellingLocSlowCase
handle nested spelling locations.
llvm-svn: 63030
|
|
|
|
|
|
| |
unique the Filenames in #line directives, assigning them UIDs.
llvm-svn: 63010
|
|
|
|
|
|
| |
testing code.
llvm-svn: 63006
|
|
|
|
|
|
|
|
|
|
| |
ground work for implementing #line, and fixes the "out of macro ID's"
problem.
There is nothing particularly tricky about the code, other than the
very performance sensitive SourceManager::getFileID() method.
llvm-svn: 62978
|
|
|
|
| |
llvm-svn: 62497
|