4967a710c84587c654b56c828382219c3937dacb |
|
20-Sep-2016 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master Clang for rebase to r275480 Bug: http://b/31320715 This merges commit ac9cc4764cf47a6c3f031687d8592e080c9f5001 from aosp/dev. Test: Build AOSP and run RenderScript tests (host tests for slang and libbcc, RsTest, CTS) Change-Id: Ic2875e5c3673c83448cd7d1013861e42947b1b55
/external/clang/include/clang/Basic/SourceManager.h
|
87d948ecccffea9e9e37d0d053b246e2d6d6c47b |
|
04-Mar-2016 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r256229 http://b/26987366 Change-Id: I5d349c9843ea5c24d6e455956f8a446393b6873d
/external/clang/include/clang/Basic/SourceManager.h
|
58878f85ab89b13e9eea4af3ccf055e42c557bc8 |
|
06-May-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r235153 Change-Id: Ia94bbcb6da7c75b6e7c2afedd1001094d62a7324
/external/clang/include/clang/Basic/SourceManager.h
|
0e2c34f92f00628d48968dfea096d36381f494cb |
|
23-Mar-2015 |
Stephen Hines <srhines@google.com> |
Update aosp/master clang for rebase to r230699. Change-Id: I6a546ab3d4ae37119eebb735e102cca4f80ab520
/external/clang/include/clang/Basic/SourceManager.h
|
176edba5311f6eff0cad2631449885ddf4fbc9ea |
|
01-Dec-2014 |
Stephen Hines <srhines@google.com> |
Update aosp/master Clang for rebase to r222490. Change-Id: Ic557ac55e97fbf6ee08771c7b7c3594777b0aefd
/external/clang/include/clang/Basic/SourceManager.h
|
c568f1e98938584c0ef0b12ae5018ff7d90a4072 |
|
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/include/clang/Basic/SourceManager.h
|
6bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89 |
|
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for 3.5 rebase (r209713). Change-Id: I8c9133b0f8f776dc915f270b60f94962e771bc83
/external/clang/include/clang/Basic/SourceManager.h
|
651f13cea278ec967336033dd032faef0e9fc2ec |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Updated to Clang 3.5a. Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
/external/clang/include/clang/Basic/SourceManager.h
|
1b9c5374a3cd33b0e281f494f0e322aef035abca |
|
27-Sep-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
SourceManager: Open code isInMainFile. - We really shouldn't compute line numbers for every file that is asked if it's the main file, it destroys the lazy computation. - Invalid locations are no longer accounted to the main file, no other functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191535 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
24146975f1af8c1b4b14e8545f218129d0e7dfeb |
|
22-Aug-2013 |
Eli Friedman <eli.friedman@gmail.com> |
Split isFromMainFile into two functions. Basically, isInMainFile considers line markers, and isWrittenInMainFile doesn't. Distinguishing between the two is useful when dealing with files which are preprocessed files or rewritten with -frewrite-includes (so we don't, for example, print useless warnings). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188968 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
4ff3225c1f343c3e0d461a0e387c7c6012cff5ba |
|
07-Jun-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Thread the 'Invalid' out parameter through SourceManager::getSLocEntry() and callees of SourceManager::getSLocEntryByID(). Also add an 'Invalid' check in SourceManager::computeMacroArgsCache(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183538 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
c50c6ff49aa3648ae031349de6f09439f52425f0 |
|
16-May-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[Lexer] Improve Lexer::getSourceText() when the given range deals with function macro arguments. This is a modified version of a patch by Manuel Klimek. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182055 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b18840ddd6aa472bbf78ab9de59159eb128fb6a9 |
|
07-May-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Have SourceManager::getLocForEndOfFile() point at the "EOF" location of the FileID. This fixes a crash due to SourceManager::getLocForEndOfFile() returning an off-by-one location when the the FileID is for an empty file. rdar://13803893 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181285 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
ecc65238c98ba21d08763da7b7972d617677e908 |
|
13-Apr-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::getDecomposedIncludedLoc, that returns the "included/expanded in" decomposed location of the given FileID. The main benefit is to speed-up SourceManager::isBeforeInTranslationUnit which is common to query the included/expanded location of the same FileID multiple times. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179435 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
2564f811ba107cb314a594d730aa3357b6181b62 |
|
27-Feb-2013 |
Ted Kremenek <kremenek@apple.com> |
Refine SourceManager's isBeforeInTranslationUnit() cache to have more entries. isBeforeInTranslationUnit() uses a cache to reduce the expensive work to compute a common ancestor for two FileIDs. This work is very expensive, so even caching the latest used FileIDs was a big win. A closer analysis of the cache before, however, shows that the cache access pattern would oscillate between a working set of FileIDs, and thus caching more pairs would be profitable. This patch adds a side table for extending caching. This side table is bounded in size (experimentally determined in this case from a simple Objective-C project), and when the table gets too large we fall back to the single entry caching before as before. On Sketch (a small example Objective-C project), this optimization reduces -fsyntax-only time on SKTGraphicView.m by 5%. This is for a project that is already using PCH. Fixes <rdar://problem/13299847> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176142 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f512acee01617c9da8079ed88ded3bb9f2418349 |
|
22-Feb-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Replace some typically large vectors with SmallVector. This may seem counter-intuitive but the POD-like optimization helps when the vectors grow into multimegabyte buffers. SmallVector calls realloc which knows how to twiddle virtual memory bits and avoids large copies. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175906 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
49d7111bd42e38fb5f1d7ec5474b9f119e0d7b56 |
|
17-Feb-2013 |
James Dennett <jdennett@google.com> |
Documentation cleanup: fix a typo ("////" for "///") and suppress Doxygen's automatic link generation for "file:", as it's not used as a URL here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175390 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
531b47c22e58146b2720677518bdd459eb0e907d |
|
28-Jan-2013 |
Douglas Gregor <dgregor@apple.com> |
Back out r173689. It doesn't matter when we're building with Clang anyway. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173693 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b7551f71a4c5a901bbae72b0a80af3745b7a0c0d |
|
28-Jan-2013 |
Douglas Gregor <dgregor@apple.com> |
Note that SrcMgr::SLocEntry's are POD-like, so SmallVector can do a better job with them. Shaves off 0.7% of -fparse-only time for a modules test case. Sure makes you wonder... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173689 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
a5bec298d96f7eb5309df5aab9d19eb7f8b75a81 |
|
13-Jan-2013 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Fix LLP64 build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172357 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
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/include/clang/Basic/SourceManager.h
|
c3cd6f7a5d33ad44f6c9cf4faa7046c77baa128e |
|
12-Jan-2013 |
Matt Beaumont-Gay <matthewbg@google.com> |
Fix -Wunused-comparison for comparisons in arguments to function-like macros. Previously, -Wunused-comparison ignored comparisons in both macro bodies and macro arguments, but we would still emit a -Wunused-value warning for either. Now we correctly emit -Wunused-comparison for expressions in macro arguments. Also, add isMacroBodyExpansion to SourceManager, to go along with isMacroArgExpansion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
ac31c8346f1ce3628b5a7fb862fefab5b94f8e82 |
|
05-Dec-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Simplify slightly by seperating out the responsibility for emission of a caret diagnostic from the emission of macro backtraces. Incidentally, we now get the displayed source location for a diagnostic and the location for the caret from the same place, rather than computing them separately. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169357 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
678839297204002df215e0be12bcd10b20a9a4a4 |
|
05-Dec-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Simplify diagnostic emission. No functionality change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169351 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
30a2e16f6c27f888dd11eba6bbbae1e980078fcb |
|
04-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Sort #include lines for all files under include/... This is a simpler sort, entirely automatic with the help of llvm/utils/sort_includes.py -- no manual edits here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169238 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
4565e487531c7bf6d348dbe9f5529784966fc7ae |
|
30-Nov-2012 |
Douglas Gregor <dgregor@apple.com> |
Rename ModuleBuildPath -> ModuleBuildStack. Thanks, Dmitri! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169045 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
6c3254316de2d0d554b19702f4b10117ae46b77b |
|
30-Nov-2012 |
Douglas Gregor <dgregor@apple.com> |
When we're emitting a diagnostic with a source location in an imported module, provide a module import stack similar to what we would get for an include stack, e.g., In module 'DependsOnModule' imported from build-fail-notes.m:4: In module 'Module' imported from DependsOnModule.framework/Headers/DependsOnModule.h:1: Inputs/Module.framework/Headers/Module.h:15:12: note: previous definition is here @interface Module <rdar://problem/12696425> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169042 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
830ea5b7c75413526c19531f0180fa6e45b98919 |
|
30-Nov-2012 |
Douglas Gregor <dgregor@apple.com> |
When an error occurs while building a module on demand, provide "While building module 'Foo' imported from..." notes (the same we we provide "In file included from..." notes) in the diagnostic, so that we know how this module got included in the first place. This is part of <rdar://problem/12696425>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169021 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
62221b17c90457df9ca0ff20bb54d634e8951def |
|
15-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add -cc1 option -fno-diagnostics-use-presumed-location, a handy mode for working with preprocessed testcases. This causes source locations in diagnostics to point at the spelling location instead of the presumed location, while still keeping the semantic effects of the line directives (entering and leaving system-header mode, primarily). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168004 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
ecd27bf256c92f56c7c7ede6f40ec5d31a40b35e |
|
09-Nov-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add a FileCharacteristic parameter to SourceManager::createFileIDForMemBuffer for completeness and use it in CompilerInstance::InitializeSourceManager if the input is a memory buffer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167628 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
0872a06d1ee1a3b62ef833f955051418d18006a1 |
|
20-Oct-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
When associating file ranges of macro arguments with their macro expansion ranges, make sure to check all the FileID entries that are contained in the spelling range of the expansion for the macro argument. Fixes rdar://12537982 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166359 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
4bc38d69a2cf391555644900d78d074634973aa5 |
|
22-Sep-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Remove superfluous \namespace command. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164466 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
be2fa7ebf01259b63dc52fe46c8d101c18e72269 |
|
18-Sep-2012 |
Craig Topper <craig.topper@gmail.com> |
Mark unimplemented copy constructors and copy assignment operators with LLVM_DELETED_FUNCTION. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164102 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b2efdf3e92f986956f0a755ba815f3870838583b |
|
29-Jul-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Microoptimize isOffsetInFileID a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160928 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
bed28ac1d1463adca3ecf24fca5c30646fa9dbb2 |
|
23-Jul-2012 |
Sylvestre Ledru <sylvestre@debian.org> |
Fix a typo (the the => the) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160622 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
ff398965a5abfaf5bc47bc022876f56a28e5b9a7 |
|
11-Jul-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce a flag in SourceManager to treat non-system source files as "volatile", meaning there's a high enough chance that they may change while we are trying to use them. This flag is only enabled by libclang. Currently "volatile" source files will be stat'ed immediately before opening them, because the file size stat info may not be accurate since when we got it (e.g. from the PCH). This avoids crashes when trying to reference mmap'ed memory from a file whose size is not what we expect. Note that there's still a window for a racing issue to occur but the window for it should be way smaller than before. We can consider later on to avoid mmap completely on such files. rdar://11612916 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160074 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
aa48fe80a1b2000809900a437f0819d929793002 |
|
10-Jul-2012 |
Jordan Rose <jordan_rose@apple.com> |
Allow line numbers on -verify directives. // expected-warning@10 {{some text}} The line number may be absolute (as above), or relative to the current line by prefixing the number with either '+' or '-'. Patch by Andy Gibbs! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159978 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
af50aab0c317462129d73ae8000c6394c718598d |
|
03-Jul-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: * Primarily, added \brief to most of include/clang/Basic, instead of prefixing the comments with "DeclaredName - "; * Made some brief summaries significantly briefer; * Fixed up some erroneous uses of \see and \arg; * Fixed up some extraneous backslashes in \code...\endcode blocks; * Fixed up some typos/spelling errors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159616 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
2f7f5b1f5ff023cb8c4008ae53a12b09e3ea2622 |
|
02-Jul-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: reformatting/fixing up file comments so that they have \file and \brief markup and appear in Doxygen's summaries (and eventually at http://clang.llvm.org/doxygen/files.html). Fixed up another couple of minor glitches in the docs at the same time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159517 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
12a4ced3dc30adcf2e1532c6323d517e9949a61e |
|
20-Jun-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: * Many fixes for \brief summaries (adding some, and making others shorter); * Don't try to explicit tell Doxygen a namespace name (and particularly don't get it wrong); * Typo fix: instantitions -> instantiations; * Slightly more use of \pre for documenting preconditions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158852 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
aa0cd85838f2a024e589ea4e8c2094130065af21 |
|
20-Jun-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Structured comment parsing, first step. * Retain comments in the AST * Serialize/deserialize comments * Find comments attached to a certain Decl * Expose raw comment text and SourceRange via libclang git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158771 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
9416d42468eacaae0ea85ab8ed134f5df1a1d142 |
|
19-Jun-2012 |
Meador Inge <meadori@codesourcery.com> |
Revert predefined decl tracking. r158085 added some logic to track predefined declarations. The main reason we had predefined declarations in the input was because the __builtin_va_list declarations were injected into the preprocessor input. As of r158592 we explicitly build the __builtin_va_list declarations. Therefore the predefined decl tracking is no longer needed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158732 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
29271fbcef645117df05d5b60e593acb6562422c |
|
18-Jun-2012 |
Matt Beaumont-Gay <matthewbg@google.com> |
Move a few static functions from DiagnosticRenderer.cpp into SourceManager. This simplifies the code a little bit, since these functions all took a SourceManager parameter and called a bunch of methods on it, and makes the functions available to other users. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158676 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
c351d9837ea1d0b04842497e76c76125426a982c |
|
15-Jun-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: * Escaped # characters in Doxygen comments; * Added Doxygen markup (\brief, \code, \file, \namespace). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158557 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
809d1be9820039b4cf6efa48246a0d70ffa13394 |
|
14-Jun-2012 |
James Dennett <jdennett@google.com> |
More doxygen/documentation cleanups. This reduces the number of warnings generated by Doxygen by about 100 (roughly 10%). Issues addressed: (1) Primarily, backslash-escaped "@foo" and "#bah" in Doxygen comments when they're not supposed to be Doxygen commands or links, and similarly for "<baz>" when it's not intended as as HTML tag; (2) Changed some \t commands (which don't exist) to \c ("to refer to a word of code", as the Doxygen manual says); (3) \precondition becomes \pre; (4) When touching comments, deleted a couple of spurious spaces in them; (5) Changed some \n and \r to \\n and \\r; (6) Fixed one tiny typo: #pragms -> #pragma. This patch touches documentation/comments only. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158422 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
d73ef135ba029db59c0b5649e6117845d9e39600 |
|
06-Jun-2012 |
Jordan Rose <jordan_rose@apple.com> |
Add pedantic warning -Wempty-translation-unit (C11 6.9p1). In standard C since C89, a 'translation-unit' is syntactically defined to have at least one "external-declaration", which is either a decl or a function definition. In Clang the latter gives us a declaration as well. The tricky bit about this warning is that our predefines can contain external declarations (__builtin_va_list and the 128-bit integer types). Therefore our AST parser now makes sure we have at least one declaration that doesn't come from the predefines buffer. Also, remove bogus warning about empty source files. This doesn't catch source files that only contain comments, and never fired anyway because of our predefines. PR12665 and <rdar://problem/9165548> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158085 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
d54dff026b02303a35147224de72bb44cbb53c79 |
|
03-May-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[PCH] When validating that the files coming from PCH did not change, also validate that we didn't override the contents of any of such files. If this is detected, emit a diagnostic error and recover gracefully by using the contents of the original file that the PCH was built from. Part of rdar://11305263 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156107 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
a4c29b6e55c9d4ef44a51c45c6785e8b4fe9deed |
|
21-Feb-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[PCH] Recover gracefully if the ASTReader detects that a file is different from the one stored in the PCH/AST, while trying to load a SLocEntry. We verify that all files of the PCH did not change before loading it but this is not enough because: - The AST may have been 1) kept around, 2) to do queries on it. - We may have 1) verified the PCH and 2) started parsing. Between 1) and 2) files may change and we are going to have crashes because the rest of clang cannot deal with the ASTReader failing to read a SLocEntry. Handle this by recovering gracefully in such a case, by initializing the SLocEntry with the info from the PCH/AST as well as reporting failure by the ASTReader. rdar://10888929 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151004 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
c93dc7889644293e318e19d82830ea2acc45b678 |
|
20-Feb-2012 |
Dylan Noblesmith <nobled@dreamwidth.org> |
Basic: import IntrusiveRefCntPtr<> into clang namespace The class name is long enough without the llvm:: added. Also bring in RefCountedBase and RefCountedBaseVPTR. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150958 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
a1f1fad8b60e1cb9d21a40a37f2e03150bcbeb6f |
|
27-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Introduce module attributes into the module map grammar, along with a single attribute ("system") that allows us to mark a module as being a "system" module. Each of the headers that makes up a system module is considered to be a system header, so that we (for example) suppress warnings there. If a module is being inferred for a framework, and that framework directory is within a system frameworks directory, infer it as a system framework. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149143 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
d87a0cd2b3e1c9e9f01212875f4cbe5b7bb7ab57 |
|
06-Jan-2012 |
Matt Beaumont-Gay <matthewbg@google.com> |
Suppress -Wunused-value within macros from system headers. Along the way, move a helper function from SemaChecking.cpp to a more accessible home in SourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147692 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b8c879a5363f36bdae8831112b563333e3c05acb |
|
05-Jan-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
When loading an AST file, set SourceManager::MainFileID to the main file of the AST file, as suggested by Tom Honermann. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147612 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
39afcafe1c0f66db67648b5230b700659448432c |
|
05-Jan-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Sanity checks in SourceManager::getFileEntryForID() and SourceManager::getFileEntryForSLocEntry() to make sure we do not crash. rdar://10594186 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147576 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
cee5ec9df479994e4ba27fb65b7ded5bb5a980eb |
|
21-Dec-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Fix bugs in SourceManager::computeMacroArgsCache() and add a unit test for it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147057 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
d7711ec430fde5706f85ba6c4b85283a8e743ff7 |
|
21-Dec-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
For SourceManager::isBeforeInTranslationUnit(), have it consider macro arg expanded token locations as coming before the closing ')' of a function macro expansion. Include a unit test for SourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147056 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
2c3c7675b4c01b9d555c47232597a000fbb93c26 |
|
10-Dec-2011 |
Matt Beaumont-Gay <matthewbg@google.com> |
Fix up doxyments (\arg vs \p). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146292 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
7955a25c65b3c3213a5e9375f51a02a765a3c880 |
|
19-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
Add missing initialization in the ContentCache. Seriously, when do constructors go below public member functions? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144991 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
a081da5e44600d02983d6562bed1b4fd61e410fd |
|
16-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement (de-)serialization of the buffer contents for an overridden file in the source manager. This allows us to properly create and use modules described by module map files without umbrella headers (or with incompletely umbrella headers). More generally, we can actually build a PCH file that makes use of file -> buffer remappings, which could be useful in libclang in the future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144830 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
a246d270156a55999ecfa4099a0967ec4c9a254e |
|
05-Nov-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Check for invalid after calling getSLocEntry, for safety. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143748 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f453cb9f677e16c00b358ec91eccf5f003765dc6 |
|
31-Oct-2011 |
Axel Naumann <Axel.Naumann@cern.ch> |
Add possibility to specify an include location for createFileIDForMemBuffer(). Useful to set up a virtual include hierarchy, e.g. to order diagnostics for ambiguous overloads from MemoryBuffers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143347 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
718699169a7ccaf623e375031789efeed82f869b |
|
31-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::isLocalFileID/isLoadedFileID functions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143339 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f226ff9fe8c8db6c5b74a61ce649eda1491c3502 |
|
25-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[PCH] When visiting preprocessed entities, make it possible to avoid deserializing preprocessed entities that are #included in the range that we are interested. This is useful when we are interested in preprocessed entities of a specific file, e.g when we are annotating tokens. There is also an optimization where we cache the last result of PreprocessingRecord::getPreprocessedEntitiesInRange and we re-use it if there is a call with the same range as before. rdar://10313365 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142887 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
70042f5d1ca378138f90b7b9384023701f5d03d8 |
|
20-Oct-2011 |
David Blaikie <dblaikie@gmail.com> |
Fix all 80 col violations in include/clang/Basic, plus any trailing whitespace in the files I'm touching anyway. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142564 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
c705d2520a51de1dc38d36efada8e9bc2d8b0d1f |
|
18-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[libclang] Make sure we do a correct invalid check in clang_getExpansionLocation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142430 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
796dbfb6c43336f58c026137c438e53eadc381f7 |
|
12-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::getFileLoc which returns a file location taking into account macro arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141771 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b201e16e0c331b0bdeae7b30f9f79aae32beb1b2 |
|
27-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Break SourceManager::translateFileLineCol into translateFile, no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140610 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
fb3612ef197cb8532c05f33889ec1aed7c26e5cb |
|
26-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Associate the macro arguments location map with a FileID instead of a ContentCache, since multiple FileIDs can have the same ContentCache but the expanded macro arguments locations will be different. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140521 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
527f98d65ff1e7c3ed6c8467ca7f516f3ea7ad9b |
|
26-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Remove SourceManager::getLocation(). It's not descriptive enough and it's just a call of translateFileLineCol() followed by a call to getMacroArgExpandedLocation(), which is better to be called explicitly since it has a certain cost and is not always required. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140520 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
d6471f7c1921c7802804ce3ff6fe9768310f72b9 |
|
26-Sep-2011 |
David Blaikie <dblaikie@gmail.com> |
Rename Diagnostic to DiagnosticsEngine as per issue 5397 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140478 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
507097ec40105ed927cb5a744fad98f5875aacac |
|
19-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[libclang] When getting a source location from a file:line:col triplet check whether the requested location points inside the precompiled preamble, in which case the returned source location will be a "loaded" one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140060 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
efa2ff8603dae51f5f5ed7509a503f477498ad22 |
|
19-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Break SourceManager::translateFileLineCol into translateLineCol that returns the source location of line:col of a specific FileID. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140059 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
aa6edaeb35e02a07bd4840c0159900754f083ce5 |
|
19-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce isLoadedSourceLocation() and isLocalSourceLocation() methods in SourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140055 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
ac1ffcc55b861737ba2466cd1ca1accd8eafceaa |
|
19-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[PCH] Preload the PreloadSLocEntries through the SourceManager and don't call ReadSLocEntryRecord() directly because the entry may have already been loaded in which case calling ReadSLocEntryRecord() directly would trigger an assertion in SourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140052 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
4d1cbcf6b9aaae7f82c6e332f46b2ad2d8971bd0 |
|
19-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
For SourceManager::isBeforeInTranslationUnit, when one location points at the inclusion/expansion point of the other, regard this as coming before the other. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140051 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
5330ee071743b8a896aa46979b020e6c3ca9b1cc |
|
09-Sep-2011 |
Eric Christopher <echristo@apple.com> |
Rearrange comment slightly for Bill. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139333 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
29f39425fc7fcaede88a7e573f392975f8dc5e3e |
|
08-Sep-2011 |
Eric Christopher <echristo@apple.com> |
Add a block comment explaining how the different source locations work including some source examples. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139295 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
aec230d29835285777ecc467e268c83b33a2adde |
|
01-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[arcmt] Fix test/ARCMT/remove-statements.m regression due to Objective-C method buffering(rdar://10056942) Turned out the same issue existed for C++ inline methods. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138960 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
d7cb46c316808169679a8d72c69f02a1e55d78a8 |
|
23-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Remove one SourceManager::isInFileID overload and use isOffsetInFileID for the other. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138381 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b6c465e17ec37390667223a18a340e8652c212ff |
|
23-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Amend r138129 (reduction of SLocEntries) which introduced performance regression due to increased calls to SourceManager::getFileID. (rdar://9992664) Use a slightly different approach that is more efficient both in terms of speed (no extra getFileID calls) and in SLocEntries reduction. Comparing pre-r138129 and this patch we get: For compiling SemaExpr.cpp reduction of SLocEntries by 26%. For the boost enum library: -SLocEntries -34% (note that this was -5% for r138129) -Memory consumption -50% -PCH size -31% Reduced SLocEntries also benefit the hot function SourceManager::getFileID, evident by the reduced "FileID scans". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
499ea5550d6e2fc5cfbd33b47f06d92ce25d7a13 |
|
23-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::isInSLocAddrSpace and use it in TokenLexer instead of isInFileID since it is a bit more efficient. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138379 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
5d579e7b0463a2e65328df85e4fed8e07799fd9e |
|
23-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Rename SourceManager::isBeforeInSourceLocationOffset -> isBeforeInSLocAddrSpace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138378 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
984e42ca1ff7775ce39372c314f1cb7d6862c4c7 |
|
23-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Move a couple of SourceManager functions out-of-line; no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138375 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
21032df7a0dfc129a8f0c5e004811b455baafb7a |
|
22-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Fix gcc build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138226 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
d9d2b679d0728ea7f539f38aaea38e26b8b08043 |
|
22-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Boost the efficiency of SourceManager::getMacroArgExpandedLocation. Currently getMacroArgExpandedLocation is very inefficient and for the case of a location pointing at the main file it will end up checking almost all of the SLocEntries. Make it faster: -Use a map of macro argument chunks to their expanded source location. The map is for a single source file, it's stored in the file's ContentCache and lazily computed, like the source lines cache. -In SLocEntry's FileInfo add an 'unsigned NumCreatedFIDs' field that keeps track of the number of FileIDs (files and macros) that were created during preprocessing of that particular file SLocEntry. This is useful when computing the macro argument map in skipping included files while scanning for macro arg FileIDs that lexed from a specific source file. Due to padding, the new field does not increase the size of SLocEntry. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138225 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
d60a34a4e514ec0dfddd05ef2744be104e111f45 |
|
20-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
For assigning SourceLocations to macro arg tokens, reserve a single SLocEntry for tokens that are lexed consecutively from the same FileID, instead of creating a SLocEntry for each token. e.g for assert(foo == bar); there will be a single SLocEntry for the "foo == bar" chunk and locations for the 'foo', '==', 'bar' tokens will point inside that chunk. For parsing SemaExpr.cpp, this reduced the number of SLocEntries by 25%. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138129 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
54232ade44d31e98ea83f43ca066128e315dcbda |
|
20-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Refactor common functionality into SourceManager::getFileIDSize, no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138127 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
ac836e442cbd17f33533bd0b4879258945bc1723 |
|
17-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::getMacroArgExpandedLocation function. If we pass it a source location that points inside a function macro argument, the returned location will be the macro location in which the argument was expanded. If a macro argument is used multiple times, the expanded location will be at the first expansion of the argument. e.g. MY_MACRO(foo); ^ Passing a file location pointing at 'foo', will yield a macro location where 'foo' was expanded into. Make SourceManager::getLocation call getMacroArgExpandedLocation as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137794 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
37e59a10a7a537428e5997fd5896f5b89fd34e6b |
|
17-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Make SourceManager::isBeforeInTranslationUnit handle macro locations correctly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137793 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
ca7dc2b755eb81ac95121ce1a1f1aa44a4a0fe12 |
|
27-Jul-2011 |
Ted Kremenek <kremenek@apple.com> |
clang_getCXTUResourceUsage: Report memory used by data structures in SourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136189 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
3201f382956ed9beee9fb31229c2835c1208889c |
|
26-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Clean up as many of the comments in Basic I can find to talk in terms of 'expansion' rather than 'instantiation' for macro source locations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136058 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
1728762d5a8cfaf8d64385f47b311e84de1ae7a2 |
|
26-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Migrate 'Instantiation' data and API bits of SLocEntry to 'Expansion' etc. With this I think essentially all of the SourceManager APIs are converted. Comments and random other bits of cleanup should be all thats left. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136057 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
78df836808aee22c3157e1bc23bc4ec569b80568 |
|
26-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Convert InstantiationInfo and much of the related code to ExpansionInfo and various other 'expansion' based terms. I've tried to reformat where appropriate and catch as many references in comments but I'm going to do several more passes. Also I've tried to expand parameter names to be more clear where appropriate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136056 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
bf340e452339e374ea6eef78c1f0a2abdd16c5a3 |
|
26-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename create(MacroArg)InstantiationLoc to create(MacroArg)ExpansionLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136054 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
96d3589e523a04f4ff2058a7919226ce60696ae8 |
|
26-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename SourceManager (and InstantiationInfo) isMacroArgInstantiation API to isMacroArgExpansion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136053 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
642116259e8df6286063a17361c20e95b5017a0a |
|
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename getInstantiationLineNumber to getExpansionLineNumber in both SourceManager and FullSourceLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135969 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b49dcd249c7f4f034493741f95394987a4ccf244 |
|
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Repair some indentation I missed in my previous commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135967 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
a77c031cb66f75d22672070052cc6e0205289ff8 |
|
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename getInstantiationColumnNumber to getExpansionColumnNumber in both SourceManager and FullSourceLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135965 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
e7b2b6e87dbe5b1207f77b6ff9c210a02f95bb39 |
|
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename getDecomposedInstantiationLoc to getDecomposedExpansionLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135962 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f84ef95ecec34f27fd05eb4e0392ca6bd3bd0be0 |
|
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
getInstantiationLocSlowCase -> getExpansionLocSlowCase git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135961 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
999f739404edf2078cf9f9c28b4dc45c19765842 |
|
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename SourceManager::getImmediateInstantiationRange to getImmediateExpansionRange. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135960 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
edc3dccece244a584f8ebdb81da6c962c08e79be |
|
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename SourceManager::getInstantiationRange to getExpansionRange. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135915 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
402785357ab053dd53f4fdd858b9630a5e0f8bad |
|
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Mechanically rename SourceManager::getInstantiationLoc and FullSourceLoc::getInstantiationLoc to ...::getExpansionLoc. This is part of the API and documentation update from 'instantiation' as the term for macros to 'expansion'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135914 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
d47d3b0cfeb7e8564ff77f48130fe63282b6d127 |
|
23-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
clean up forward declarations of raw_ostream to use the new LLVM.h patch by Jon Mulder! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135851 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
686775deca8b8685eb90801495880e3abdd844c2 |
|
20-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
now that we have a centralized place to do so, add some using declarations for some common llvm types: stringref and smallvector. This cleans up the codebase quite a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135576 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f62d43d2afe1960755a1b5813cae1e5983bcac1b |
|
19-Jul-2011 |
Douglas Gregor <dgregor@apple.com> |
Revamp the SourceManager to separate the representation of parsed source locations from source locations loaded from an AST/PCH file. Previously, loading an AST/PCH file involved carefully pre-allocating space at the beginning of the source manager for the source locations and FileIDs that correspond to the prefix, and then appending the source locations/FileIDs used for parsing the remaining translation unit. This design forced us into loading PCH files early, as a prefix, whic has become a rather significant limitation. This patch splits the SourceManager space into two parts: for source location "addresses", the lower values (growing upward) are used to describe parsed code, while upper values (growing downward) are used for source locations loaded from AST/PCH files. Similarly, positive FileIDs are used to describe parsed code while negative FileIDs are used to file/macro locations loaded from AST/PCH files. As a result, we can load PCH/AST files even during parsing, making various improvemnts in the future possible, e.g., teaching #include <foo.h> to look for and load <foo.h.gch> if it happens to be already available. This patch was originally written by Sebastian Redl, then brought forward to the modern age by Jonathan Turner, and finally polished/finished by me to be committed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135484 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
c8d1ecca1cd3fadbd331d15c420755aa6184554b |
|
08-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Keep track of which source locations are part of a macro argument instantiation and improve diagnostics which are stem from macro arguments to trace the argument itself back through the layers of macro expansion. This requires some tricky handling of the source locations, as the argument appears to be expanded in the opposite direction from the surrounding macro. This patch provides helper routines that encapsulate the logic and explain the reasoning behind how we step through macros during diagnostic printing. This fixes the rest of the test cases originially in PR9279, and later split out into PR10214 and PR10215. There is still some more work we can do here to improve the macro backtrace, but those will follow as separate patches. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134660 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
7a759606d93975866051f67104ae58446e55f404 |
|
07-Jul-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Move SourceManager::isAt[Start/End]OfMacroInstantiation functions to the Lexer, since they depend on it now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134644 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b73377eeb3eff76be134203aebb6068244b177f3 |
|
07-Jul-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Make the Preprocessor more memory efficient and improve macro instantiation diagnostics. When a macro instantiation occurs, reserve a SLocEntry chunk with length the full length of the macro definition source. Set the spelling location of this chunk to point to the start of the macro definition and any tokens that are lexed directly from the macro definition will get a location from this chunk with the appropriate offset. For any tokens that come from argument expansion, '##' paste operator, etc. have their instantiation location point at the appropriate place in the instantiated macro definition (the argument identifier and the '##' token respectively). This improves macro instantiation diagnostics: Before: t.c:5:9: error: invalid operands to binary expression ('struct S' and 'int') int y = M(/); ^~~~ t.c:5:11: note: instantiated from: int y = M(/); ^ After: t.c:5:9: error: invalid operands to binary expression ('struct S' and 'int') int y = M(/); ^~~~ t.c:3:20: note: instantiated from: \#define M(op) (foo op 3); ~~~ ^ ~ t.c:5:11: note: instantiated from: int y = M(/); ^ The memory savings for a candidate boost library that abuses the preprocessor are: - 32% less SLocEntries (37M -> 25M) - 30% reduction in PCH file size (900M -> 635M) - 50% reduction in memory usage for the SLocEntry table (1.6G -> 800M) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134587 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
8b86ef0b71900c64c0c2cfca54cac08a203a16a4 |
|
07-Jul-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Fix bug in SourceManager::getDecomposedInstantiationLocSlowCase. It would add up relative (decomposed) offsets like in getDecomposedSpellingLocSlowCase, but while it makes sense to preserve the offset among lexed spelling locations, it doesn't make sense to add anything to the offset of the instantiation location. The instantiation location will be the same regardless of the relative offset in the tokens that were instantiated. This bug didn't actually affect anything because, currently, in practice we never create macro locations with relative offset greater than 0. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134586 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
d57b7ff9bebc4c45f325fc1be6f238cfcd4c3732 |
|
30-Jun-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Replace an unreachable error path with an assert (SourceManager::createFileID cannot return an invalid file ID). Also update a comment to reflect this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134168 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
65aa6885818d4b4eea2e5a9d12085b2398148662 |
|
21-Jun-2011 |
Jay Foad <jay.foad@gmail.com> |
Make more use of llvm::StringRef in various APIs. In particular, don't use the deprecated forms of llvm::StringMap::GetOrCreateValue(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133515 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
a92d7e7a55a35b28437103130904a6401bf35408 |
|
16-Jun-2011 |
Jonathan D. Turner <jonathan.d.turner@gmail.com> |
Fix of a minor typo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133187 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
469244a322dd5d35cee1d02d70a2edbc12ac5ce7 |
|
28-May-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add a couple of helper methods in the SourceManager API, isAtStartOfMacroInstantiation/isAtEndOfMacroInstantiation useful only for source locations that point at a macro token. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132247 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f61b831d7f6a15676b07647f507de80324cb7056 |
|
28-Apr-2011 |
Ted Kremenek <kremenek@apple.com> |
Enhance clang_getCXTUResourceUsage() to report how much memory is used by SourceManager's memory buffers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130433 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
457aaf0692dfb2d9638f383334b81027f637f20c |
|
28-Apr-2011 |
Ted Kremenek <kremenek@apple.com> |
Enhance clang_getCXTUResourceUsage() to report the amount of memory used by SourceManager's content cache allocator. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
e23ac65af568ffe611b0990818ac3a57c856a4d8 |
|
20-Apr-2011 |
Douglas Gregor <dgregor@apple.com> |
Teach SourceManager::getSLocEntry() that it can fail due to problems during deserialization from a precompiled header, and update all of its callers to note when this problem occurs and recover (more) gracefully. Fixes <rdar://problem/9119249>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129839 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
fc8f0e14ad142ed811e90fbd9a30e419e301c717 |
|
15-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
fix a bunch of comment typos found by codespell. Patch by Luis Felipe Strano Moraes! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129559 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
9d5a165d301cc9df68631e624322dd2a962f65b3 |
|
23-Mar-2011 |
Ted Kremenek <kremenek@apple.com> |
Fix crash in clang_getInstantiationLoc() when SourceManager::getInstantiationLoc() can return a SourceLocatin with an invalid FileID on invalid code. Fixes <rdar://problem/9164623>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128139 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
4f32786ac45210143654390177105eb749b614e9 |
|
21-Mar-2011 |
Ted Kremenek <kremenek@apple.com> |
Improve crash recovery cleanup to recovery CompilerInstances during crash recovery. This was a huge resource "root" during crashes. This change requires making a bunch of fundamental Clang structures (optionally) reference counted to allow correct ownership semantics of these objects (e.g., ASTContext) to play out between an active ASTUnit and CompilerInstance object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128011 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
299a4a967b02c9f0d0d94ad8560e3ced893f9116 |
|
09-Mar-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add 'OverridenFilesKeepOriginalName' field in SourceManager which if true the SourceManager should report the original file name for contents of files that were overriden by other files, otherwise it should report the name of the new file. Default is true. Also add similar field in PreprocessorOptions and pass similar parameter in ASTUnit::LoadFromCommandLine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127289 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b1c86492f9a9bef01a4567408c22f961bbd604fe |
|
05-Mar-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Currently we can only remap a file by creating a MemoryBuffer and replacing the file contents with it. Allow remapping a file by specifying another filename whose contents should be loaded if the original file gets loaded. This allows to override files without having to create & load buffers in advance. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127052 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
5ef04ee40c3332d31b6d1439f50d0ddb45812929 |
|
23-Feb-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Switch the VerifyDiagnosticsClient to use PresumedLocs now that they exist. Cheat and do this by adding some wrappers around the PresumedLoc machinery that directly return the line and column number. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126281 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
86a4d0dd6a630639aab7715323ed068940e650af |
|
03-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Teach SourceManager::getLocation() how to cope with a source file whose inode has changed since the file was first created and that is being seen through a different path name (e.g., due to symlinks or relative path elements), such that its FileEntry pointer doesn't match a known FileEntry pointer. Since this requires a system call (to stat()), we only perform this deeper checking if we can't find the file by comparing FileEntry pointers. Also, add a micro-optimization where we don't bother to compute line numbers when given the location (1, 1). This improves the efficiency of clang_getLocationForOffset(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124800 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
414cb64f09ce48a36377458ce5e5a90c3ad41d00 |
|
30-Nov-2010 |
Douglas Gregor <dgregor@apple.com> |
When loading a precompiled preamble, use the file ID of the precompiled preamble as the "main" source file's file ID within the source manager. This makes compiling with a precompiled preamble produce the same source locations as when compiling without the precompiled preamble; prior to this change, we ended up with different file IDs for source locations within the precompiled preamble vs. those after the precompiled preamble, even for entities (e.g., preprocessing entities) in the same file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120390 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
03013fa9a0bf1ef4b907f5fec006c8f4000fdd21 |
|
29-Nov-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Merge System into Support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120297 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
39b49bcaaddb1049234fca9500c0ac02c088e23d |
|
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
now the FileManager has a FileSystemOpts ivar, stop threading FileSystemOpts through a ton of apis, simplifying a lot of code. This also fixes a latent bug in ASTUnit where it would invoke methods on FileManager without creating one in some code paths in cindextext. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120010 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
33e4e70c8c0a17e0ccb7465d96556b077a68ecb1 |
|
18-Nov-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Refactoring of Diagnostic class. -Move the stuff of Diagnostic related to creating/querying diagnostic IDs into a new DiagnosticIDs class. -DiagnosticIDs can be shared among multiple Diagnostics for multiple translation units. -The rest of the state in Diagnostic object is considered related and tied to one translation unit. -Have Diagnostic point to the SourceManager that is related with. Diagnostic can now accept just a SourceLocation instead of a FullSourceLoc. -Reflect the changes to various interfaces. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119730 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
cb7b1e17b63967317ab5cc55682168cf0380519a |
|
12-Nov-2010 |
Douglas Gregor <dgregor@apple.com> |
Make sure to always check the result of SourceManager::getPresumedLoc(), so that we don't try to make use of an invalid presumed location. Doing so can cause crashes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118885 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
389db16c63eec6ecfa9b235155252d8da766e94e |
|
03-Nov-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Implement -working-directory. When -working-directory is passed in command line, file paths are resolved relative to the specified directory. This helps both when using libclang (where we can't require the user to actually change the working directory) and to help reproduce test cases when the reproduction work comes along. --FileSystemOptions is introduced which controls how file system operations are performed (currently it just contains the working directory value if set). --FileSystemOptions are passed around to various interfaces that perform file operations. --Opening & reading the content of files should be done only through FileManager. This is useful in general since file operations will be abstracted in the future for the reproduction mechanism. FileSystemOptions is independent of FileManager so that we can have multiple translation units sharing the same FileManager but with different FileSystemOptions. Addresses rdar://8583824. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118203 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
0d06e998910934e5ef070f53f4c272e7c6b846c6 |
|
26-Oct-2010 |
Dan Gohman <gohman@apple.com> |
getOrCreateContentCache never returns null, so overrideFileContents doesn't need its return value. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117393 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
78a916ec5ff5b66adec3c499e1b9af7b87668309 |
|
22-Sep-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Implement -Wpadded and -Wpacked. -Wpadded warns when undesired padding is introduced in a struct. (rdar://7469556) -Wpacked warns if a struct is given the packed attribute, but the packed attribute has no effect on the layout or the size of the struct. Such structs may be mis-aligned for little benefit. The warnings are emitted at the point where layout is calculated, that is at RecordLayoutBuilder. To avoid calculating the layouts of all structs regardless of whether they are needed or not, I let the layouts be lazily constructed when needed. This has the disadvantage that the above warnings will be emitted only when they are used for IR gen, and not e.g with -fsyntax-only: $ cat t.c struct S { char c; int i; }; void f(struct S* s) {} $ clang -fsyntax-only -Wpadded t.c $ clang -c -Wpadded t.c -o t.o t.c:3:7: warning: padding struct 'struct S' with 3 bytes to align 'i' [-Wpadded] int i; ^ 1 warning generated. This is a good tradeoff between providing the warnings and not calculating layouts for all structs in case the user has enabled a couple of rarely used warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114544 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f155dfa4e284be7dca8f1abf002476b2aaee8546 |
|
27-Aug-2010 |
Dan Gohman <gohman@apple.com> |
createMainFileID doesn't need its IncludePos argument, since the main file isn't an included file, and the IncludePos is always SourceLocation(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112269 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
afbf5f810652f04c0bba235c0fa079885fb3caa8 |
|
26-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Fix a typo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112151 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
4710a8ea766b45079bf1c1dd36e29b59bb90829d |
|
25-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Fix a typo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112092 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
3c7f4134603d04b44f997b43c0a9def270f25386 |
|
19-Aug-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
More PCH -> AST renaming. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111472 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
cc5888d833caf90ebda37f24da40d2cd06b4d820 |
|
31-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Implement dependency analysis for the precompiled preamble. If any of the files in the precompiled preamble have changed since it was build, force the preamble to be rebuilt. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109937 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f4f6c9db68465b886ec2e596feaa6ecc782395a4 |
|
26-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce basic support for loading a precompiled preamble while reparsing an ASTUnit. When saving a preamble, create a buffer larger than the actual file we're working with but fill everything from the end of the preamble to the end of the file with spaces (so the lexer will quickly skip them). When we load the file, create a buffer of the same size, filling it with the file and then spaces. Then, instruct the lexer to start lexing after the preamble, therefore continuing the parse from the spot where the preamble left off. It's now possible to perform a simple preamble build + parse (+ reparse) with ASTUnit. However, one has to disable a bunch of checking in the PCH reader to do so. That part isn't committed; it will likely be handled with some other kind of flag (e.g., -fno-validate-pch). As part of this, fix some issues with null termination of the memory buffers created for the preamble; we were trying to explicitly NULL-terminate them, even though they were also getting implicitly NULL terminated, leading to excess warnings about NULL characters in source files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109445 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
190faf7c30890479925193b074571e5dc30c3f53 |
|
20-Jul-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Allow loading source locations from any file in the chain. WIP git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108942 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
dcb1d68f6ffa183f3919aee6b554aec3793bf13e |
|
07-May-2010 |
Chris Lattner <sabre@nondot.org> |
reimplement the caching in the SourceManager::isBeforeInTranslationUnit() method to be correct. Right now it correctly computes the cache, then goes ahead and computes the result the hard way, then asserts that they match. Next I'll actually turn it on. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103231 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
e127a0d80155b45dafe77f2b4380e5fa111a3345 |
|
20-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
push some source location information down through the compiler, into ContentCache::getBuffer. This allows it to produce diagnostics on the broken #include line instead of without a location. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101939 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
c815108d08b0417c6f1104e7df70dc5278839406 |
|
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Teach SourceManager's content cache to keep track of whether its buffer was invalid when it was created, and use that bit to always set the "Invalid" flag according to whether the buffer is invalid. This ensures that all accesses to an invalid buffer are marked invalid, improving recovery. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98690 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
ceafc4b63599d14f0b5b10ff92e22bf242682dce |
|
16-Mar-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Switch another function to StringRef instead of char pointer pairs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98631 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f6ac97b101c8840efa92bf29166077ce4049e293 |
|
16-Mar-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Let SourceManager::getBufferData return StringRef instead of a pair of two const char*. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98630 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
50f6af7a6d6951a63f3da7d4c5a7d3965bf73b63 |
|
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce optional "Invalid" parameters to routines that invoke the SourceManager's getBuffer() and, therefore, could fail, along with Preprocessor::getSpelling(). Use the Invalid parameters in the literal parsers (string, floating point, integral, character) to make them robust against errors that stem from, e.g., PCH files that are not consistent with the underlying file system. I still need to audit every use caller to all of these routines, to determine which ones need specific handling of error conditions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98608 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
36c35ba0aca641e60e5dbee8efbc620c08b9bd61 |
|
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Use SourceManager's Diagnostic object for all file-reading errors, simplifying the SourceManager interfaces somewhat. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98598 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f715ca12bfc9fddfde75f98a197424434428b821 |
|
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Give SourceManager a Diagnostic object with which to report errors, and start simplifying the interfaces in SourceManager that can fail. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98594 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
aea67dbd653a2dd6dd5cc2159279e81e855b2482 |
|
15-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a new BufferResult class to act as the return type of SourceManager's getBuffer() (and similar) operations. This abstract can be used to force callers to cope with errors in getBuffer(), such as missing files and changed files. Fix a bunch of callers to use the new interface. Add some very basic checks for file consistency (file size, modification time) into ContentCache::getBuffer(), although these checks don't help much until we've updated the main callers (e.g., SourceManager::getSpelling()). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98585 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
2d684c2499bd80e28451c1db0e2e040ef00c53bc |
|
15-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Remove useless forward decl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98553 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
d93256e55673a17d18543397ec462416acb13792 |
|
28-Jan-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce serialization and deserialization of diagnostic information so that CIndex can report diagnostics through the normal mechanisms even when executing Clang in a separate process. This applies both when performing code completion and when using ASTs as an intermediary for clang_createTranslationUnitFromSourceFile(). The serialized format is not perfect at the moment, because it does not encapsulate macro-instantiation information. Instead, it maps all source locations back to the instantiation location. However, it does maintain source-range and fix-it information. To get perfect fidelity from the serialized format would require serializing a large chunk of the source manager; at present, it isn't clear if this code will live long enough for that to matter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94740 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
16b55a71695a33c094383295cc7b7a2080e098da |
|
26-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Implement 'clang_getInclusions()' in CIndex. This API allows clients to walk the set of files included in a translation unit via the C API. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94575 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
2ffb14f004affc363d86d6c7c63c356190db3679 |
|
06-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Unbreak and add test case for r90276, a situation in which getBuffer is expected to fail. Also, update SourceManager.h doxyments for getBuffer() to reflect reality. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90701 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
2968442603b029949246467253eeac8139a5b6d8 |
|
02-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
Extend the source manager with the ability to override the contents of files with the contents of an arbitrary memory buffer. Use this new functionality to drastically clean up the way in which we handle file truncation for code-completion: all of the truncation/completion logic is now encapsulated in the preprocessor where it belongs (<rdar://problem/7434737>). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90300 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
4a160e16eb97bee03e36962d11aedc6452710bc5 |
|
02-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
Eliminate the unnecessary FirstFID cache variable from the source manager's ContentCache git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90294 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
39d9841ed4c0568d4b44dfbc12ac04491f60a374 |
|
01-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
pass the reason for failure up from MemoryBuffer and report it in diagnostics when we fail to open a file. This allows us to report things like: $ clang test.c -I. test.c:2:10: fatal error: error opening file './foo.h': Permission denied #include "foo.h" ^ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90276 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
9f8eb2032030482b1d3de86e9bee725d93564302 |
|
26-Oct-2009 |
Chandler Carruth <chandlerc@gmail.com> |
Update location of DataTypes.h to reflect move in LLVM with r85086. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85087 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
bdfe48ac80573e026595af91e541474dbf02565f |
|
17-Oct-2009 |
Douglas Gregor <dgregor@apple.com> |
While writing source-location entries to a PCH file, go through an interface that can load those source-location entries on demand (from another PCH file). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84287 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b657f115c3b4e262e72906a28cbcf3eaccd9460c |
|
22-Sep-2009 |
Douglas Gregor <dgregor@apple.com> |
Replace the -code-completion-dump option with -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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82571 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
1eb4433ac451dc16f4133a88af2d002ac26c58ef |
|
09-Sep-2009 |
Mike Stump <mrs@apple.com> |
Remove tabs, and whitespace cleanups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
2aa03d588bd2d3c73deb662880c2244bf2e384b9 |
|
24-Jun-2009 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::ÃsBeforeInTranslationUnit() which can compare 2 source locations and determine which one comes before the other, relative to the translation unit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74014 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
10b46d2f0b976676d10681d73fe061b5ae409b36 |
|
20-Jun-2009 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::getLocation() to get a source location out of a "file:line:column" triplet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
0d456588acac0713a7c33063922d35a8cc8c658e |
|
14-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
add a handy predicate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73310 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
2bf1eb09f06a9792fa94dff0703f2aa2c4bace2a |
|
27-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Be more careful in our teardown of the PCHReader after deciding to ignore a PCH file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70251 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
7f94b0b0c6791013d2f72ced9b4bedd3b23673a6 |
|
27-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Load most of the source manager's information lazily from the PCH 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70196 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
370187c8a3e96517c943329f2511737a04b85450 |
|
22-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Remove the serialization code that predates precompiled headers. Future approaches to (de-)serializing ASTs will be based on the PCH infrastructure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69828 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f60e9918690fcf02974bc1ebecd42c99d561855e |
|
15-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
For source location entries that describe instantiations, encode the token length in the PCH file rather than trying (and failing) to reconstruct it be getting the spelling token's length. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69191 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
bd94500d3aa60092fb0f1e90f53fb0d03fa502a8 |
|
13-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Include the SourceManager's line table in the PCH file. We can now properly cope with #line directives in PCH files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68963 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
14f79002e58556798e86168c63e48d533287eda5 |
|
10-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
PCH serialization/deserialization of the source manager. With this improvement, source locations read from the PCH file will properly resolve to the source files that were used to build the PCH file itself. Once we have the preprocessor state stored in the PCH file, source locations that refer to macro instantiations that occur in the PCH file should have the appropriate instantiation information. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68758 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
668ab1a36d6a5731c71a75a5f388ecafd538a896 |
|
13-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
fix typo git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66860 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
bff5c512af8ca7ac92e974e04c06ff4f820e4ee1 |
|
17-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add an accessor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64760 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
387616edf98739f4a0dd234c907e2b913e6a535d |
|
17-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add an accessor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64758 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
6678133b8ce642f93e5141f056fa643112041ad0 |
|
15-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add a new SourceManager::getInstantiationRange helper method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64606 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
e7fb48466afcbf2c4ccdfa658824282fdc3c512c |
|
15-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
track "just a little more" location information for macro instantiations. 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64601 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
ea684e699ea84e61711e279f5fa7a1b9f3d46bc2 |
|
14-Feb-2009 |
Cedric Venet <cedric.venet@laposte.net> |
Fix the build on win32. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64556 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
6b3066780bda02e3117d71a18ca2f430ed1454af |
|
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
make getFileCharacteristic linetable aware. line markers that play around with the 'is system header' bit now function correctly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63720 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
9d79ebac47ffde6a1cb312f4c09b66b1b9a397fb |
|
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
propagate linemarker flags down into the the line table, currently ignoring include stack push/pop info though. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63719 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
30fc933e5fbbb5f0ea60c47976d435254e378536 |
|
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
lower the interface to getLineNumber like we did for getColumnNumber. This fixes a FIXME in SourceManager::getPresumedLoc because we now just decompose the sloc once. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63701 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
7da5aea7669e6db3e593162b8a123aef06a04d07 |
|
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
make SM::getColumnNumber take a predecomposed FileID/offset, which makes it clear to clients that they have to pick an instantiation or spelling location before calling it and allows optimization based on that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63698 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
ac50e3427cb9eb3dc9f13f29a78f00ef3122433d |
|
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
more plumbing for #line propagation. Use happy bit #3 out of FileInfo :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63672 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
4c4ea17d7f991516c37a871dfa4bbe5723fa85f0 |
|
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
stub out basic #line handling calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63667 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
00282d6e1194655a2e89f940bd6fa8484b52e666 |
|
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
reclaim my precious bit in FileInfo by ensuring that ContentCache objects are 8-byte aligned. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63630 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
0d0bf8cf58b35302312cc155287fde3e81eb25a7 |
|
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
switch SourceManager from using an std::map and std::list of 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63628 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
90f255356e4abc03287d35d323a1af0127dfcfd2 |
|
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
Content Cache only needs to be 4-byte aligned. Since it is stored in an std::set, we can't make a strong guarantee about what its alignment will be. Since I don't need the 3rd bit anyway yet, just change the assertion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63588 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b9c3f966b103f7cfe8e5e60007c4c8b38f7298eb |
|
27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Introduce a new PresumedLoc class to represent the concept of a location 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63098 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
52c29081281955d3db9e11d10573b2d38f709099 |
|
27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
rename getFullFilePos -> getFileOffset. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63097 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
addb797ca2b5afc1a1e82fd8d5d6eb2a592e75a9 |
|
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
make getInstantiationLoc and getSpellingLoc handle multiply instantiated locations, and move the slow case out of line. No perf change on cocoa.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63033 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
464c4b3fdd473c9722cc00e7ef5f9929578f9c46 |
|
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
make sure we have a definition of uintptr_t. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63019 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
5b9a504720fb52594ca3686e10eb6c0cfa2e7d62 |
|
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
start plumbing together the line table information. So far we just unique the Filenames in #line directives, assigning them UIDs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63010 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
6e1aff2f586025f2d385ee49239f626b0fc63fd7 |
|
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Bitmangle file characteristic bits into the low bits of the content cache pointer. This saves 105876 bytes on cocoa.h because it shrinks the SLocEntry union, which we have a big array of. It would be nice to use PointerIntPair here, but we can't because it is in a union. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63004 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
de7aeefc5573d669ed476d7bda7a8940d3bcadb7 |
|
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Check in the long promised SourceLocation rewrite. This lays the 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62978 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
06a062dc784c609b75dca15fd97f468d0d846596 |
|
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
rearrange SourceManager methods to group them by kind. Remove the SourceManager::getFileCharacteristic(FileID) method: we need a full location to know if it is a system header etc in the future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62503 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
a11d61793341fea195c29a0dab3fbd74f2b39a8c |
|
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Rename SourceManager::getCanonicalFileID -> getFileID. There is no longer such thing as a non-canonical FileID. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62499 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
2fa3ec888a980bf09e3d68435e227d3c4280bf70 |
|
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
remove the public SourceManager::getContentCacheForLoc method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62497 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b21e5a0fdd9bd6e6c6885428798070f0a9f71295 |
|
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
remove the SourceManager:: and FullSourceLoc::getFileEntryForLoc methods. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62496 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
31530bae788dea5c79e72a1f99a56c3f5c6aa36f |
|
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
SourceManager::getBufferData(SourceLocation) is dead, delete it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62495 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
a90a4d4a0a365f991b92e925436ec63ef4969839 |
|
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
some minor cleanups to SourceManager, and eliminate the SourceManager::getBuffer(SourceLocation) method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62494 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
bcc2a67e5180612417727cbdd8afd0f79fdf726d |
|
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Make SourceLocation::getFileLoc private to reduce the API exposure of SourceLocation. This requires making some cleanups to token pasting and _Pragma expansion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62490 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
3b4d5e955e819dd3a4bed37ea2e47d6e4cb05274 |
|
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Rename SourceLocation::getFileID to getChunkID, because it returns the chunk ID not the file ID. This exposes problems in TextDiagnosticPrinter where it should have been using the canonical file ID but wasn't. Fix these along the way. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62427 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
2b2453a7d8fe732561795431f39ceb2b2a832d84 |
|
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
this massive patch introduces a simple new abstraction: it makes "FileID" a concept that is now enforced by the compiler's type checker instead of yet-another-random-unsigned floating around. This is an important distinction from the "FileID" currently tracked by SourceLocation. *That* FileID may refer to the start of a file or to a chunk within it. The new FileID *only* refers to the file (and its #include stack and eventually #line data), it cannot refer to a chunk. FileID is a completely opaque datatype to all clients, only SourceManager is allowed to poke and prod it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62407 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
05816591ec488a933dfecc9ff9f3cbf3c32767c2 |
|
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
make "ContentCache::Buffer" mutable to avoid a const_cast. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62403 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
c6fe32a91c7372caf09152ee31a24c4b5d24deed |
|
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Instead of iterating over FileID's, have PTH generation iterate over the content cache directly. Content cache has a 1-1 mapping with fileentries, whereas multiple FileIDs can be the same FileEntry. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62401 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f7cf85b330bedd2877e1371fb0a83e99751ae162 |
|
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
more SourceLocation lexicon change: instead of referring to the "logical" location, refer to the "instantiation" location. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62316 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
88054dee0402e4d3c1f64e6b697acc47195c0d72 |
|
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
rename "virtual location" of a macro to "instantiation location". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62315 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
df7c17a8d02fe09a3466786bae3e40fc3252687a |
|
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Change some terminology in SourceLocation: instead of referring to the "physical" location of tokens, refer to the "spelling" location. This is more concrete and useful, tokens aren't really physical objects! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62309 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
ea14609c806d22d9eb876a029deed9bc3de4aacd |
|
06-Jan-2009 |
Douglas Gregor <dgregor@apple.com> |
Oops. Un-publicify SrcMgr::ContentCache::Buffer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61790 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
1a49af9681c350fef58e677f85ccb9a77e8e9d0a |
|
06-Jan-2009 |
Douglas Gregor <dgregor@apple.com> |
Add QualifiedDeclRefExpr, which retains additional source-location information for declarations that were referenced via a qualified-id, e.g., N::C::value. We keep track of the location of the start of the nested-name-specifier. Note that the difference between QualifiedDeclRefExpr and DeclRefExpr does have an effect on the semantics of function calls in two ways: 1) The use of a qualified-id instead of an unqualified-id suppresses argument-dependent lookup 2) If the name refers to a virtual function, the qualified-id version will call the function determined statically while the unqualified-id version will call the function determined dynamically (by looking up the appropriate function in the vtable). Neither of these features is implemented yet, but we do print out qualified names for QualifiedDeclRefExprs as part of the AST printing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61789 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
c16c208e8519476d838ad11fffc8e0ecea50550d |
|
06-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Misc changes to SourceManager::ContentCache: - 'Buffer' is now private and must be accessed via 'getBuffer()'. This paves the way for lazily mapping in source files on demand. - Added 'getSize()' (which gets the size of the content without necessarily accessing the MemBuffer) and 'getSizeBytesMapped()'. - Modifed SourceManager to use these new methods. This reduces the number of places that actually access the MemBuffer object for a file to those that actually look at the character data. These changes result in no performance change for -fsyntax-only on Cocoa.h. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61782 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
e55f4ee4fd435e29015e2eea952744ee2a621030 |
|
19-Nov-2008 |
Ted Kremenek <kremenek@apple.com> |
Add version of 'getFileCharacteristic()' for FileIDs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59669 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f812a45dd93634c9300ed5533bd26b56374714a1 |
|
18-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
SourceManager::getLineNumber is logically const except for caching. Use mutable to make it so. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59498 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
9d72851fec9e9c62570a027d42701562bbf29751 |
|
27-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
Rename Characteristic_t to CharacteristicKind git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58224 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
8673ae73569d3417854527cebfe95b4c3e37d311 |
|
21-Oct-2008 |
Ted Kremenek <kremenek@apple.com> |
Add fileid_iterator to SourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57878 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
0b9e736308af5397f558ffc8e780c438c2fdb563 |
|
26-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
clean up a bunch of fixme's I added, by moving DirectoryLookup::DirType into SourceManager.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56692 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
721818304ac462d8c6ce05eecd02884033db78f1 |
|
26-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
Fix the rest of rdar://6243860 hopefully. This requires changing FileIDInfo to whether the fileid is a 'extern c system header' in addition to whether it is a system header, most of this is spreading plumbing around. Once we have that, PPLexerChange bases its "file enter/exit" notifications to PPCallbacks to base the system header state on FileIDInfo instead of HeaderSearch. Finally, in Preprocessor::HandleIncludeDirective, mirror logic in GCC: the system headerness of a file being entered can be set due to the #includer or the #includee. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56688 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
491be73282d5483c2f799289ed90cc0011fde4bd |
|
29-Aug-2008 |
Nico Weber <nicolasweber@gmx.de> |
minor cleanup git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55538 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
7bfaaaecb3113f955db31e8d8a51acffd1bc0c27 |
|
10-Aug-2008 |
Nico Weber <nicolasweber@gmx.de> |
* Remove isInSystemHeader() from DiagClient, move it to SourceManager * Move FormatError() from TextDiagnostic up to DiagClient, remove now empty class TextDiagnostic * Make DiagClient optional for Diagnostic This fixes the following problems: * -html-diags (and probably others) does now output the same set of warnings as console clang does * nothing crashes if one forgets to call setHeaderSearch() on TextDiagnostic * some code duplication is removed git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54620 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b243fe5a812faddf9ec39525727739a85f603ae6 |
|
10-Aug-2008 |
Nico Weber <nicolasweber@gmx.de> |
add assert, use make_pair() instead of pair constructor git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54596 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
8429fca639bb4fbb6d589f85a2cc84513db4f748 |
|
26-Jun-2008 |
Cedric Venet <cedric.venet@laposte.net> |
Another class -> struct in declaration to match definition. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52782 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
c0c03bc3c4669897ce8a995d7c20d9c71bc7cc8f |
|
07-Jun-2008 |
Ted Kremenek <kremenek@apple.com> |
Use a common SourceManager when processing multiple files. This allows us to cache the contents of source files already loaded from disk. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52066 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
9fd87b1db485e2f31d0e5687f9168b370d546847 |
|
14-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Added "getCanonicalID()", "isFromSameFile", and "isFromMainFile" to compare the files of different SourceLocations. These methods correctly handle the case where a file may have multiple FileIDs due to it being large enough to be spread across several chunks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49682 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
25ba02630820a798ace3f71a212c7bff00236748 |
|
08-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Make SourceManager::getFullFilePos() public. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49402 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
49c1f4aa2a6c360d25d605004ec3c4affd62db77 |
|
02-Feb-2008 |
Steve Naroff <snaroff@apple.com> |
Cleanup previous patch (based on feedback from Ted). Since this behavior is useful for most classes, we might consider adding a simple 3 method class that implements the behavior. Ted said that Boost has such a class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@46654 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
27e2eb40b9adc876c05e0260d1100385c9f0e5f5 |
|
02-Feb-2008 |
Steve Naroff <snaroff@apple.com> |
Make sure SourceManager/HeaderSearch don't support default copy constructors (since they result in bad runtime behavior). I'm sure there are other classes that might need this "guard", however I was bitten by these 2 recently (so I thought I'd fix them). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@46653 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
0bc735ffcfb223c0186419547abaa5c84482663e |
|
29-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Don't attribute in file headers anymore. See llvmdev for the discussion of this change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45410 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
7697b5c5a918729718da9ecd9e374bbd973a69e9 |
|
20-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Fix trivial self-infinite-recursion git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45248 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
97394f23ca55c35beaa1538e446e5154f311f49c |
|
20-Dec-2007 |
Ted Kremenek <kremenek@apple.com> |
Added method getFileEntryForID() to SourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45237 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
1036b68525f39cb69ac22c679ed440acd8392a16 |
|
20-Dec-2007 |
Ted Kremenek <kremenek@apple.com> |
Added methods createMainFileID() and createMainFileIDForMemBuffer() to SourceManager to allow SourceManager to directly intern the MainFileID when it is created. Removed setMainFileID(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45231 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
76edd0e4ae0592a7225d50d0bad6732ac64dca2a |
|
19-Dec-2007 |
Ted Kremenek <kremenek@apple.com> |
Added storage of the FileID of the the main source file of a translation unit in SourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45225 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
1f94100e53a7d45cea706c09ac0f35cf723a8d83 |
|
05-Dec-2007 |
Ted Kremenek <kremenek@apple.com> |
Renamed SourceManager::Read to SourceManager::CreateAndRegister. Now sourcemanager deserializer automatically self-registers itself with the deserializer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44591 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
099b4747042352f69184481a48508b599a8d3f73 |
|
05-Dec-2007 |
Ted Kremenek <kremenek@apple.com> |
Implemented initial serialization support for SourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44590 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
e21272fbdbfbf5bf3461d3e9b42279f4d47caa42 |
|
04-Dec-2007 |
Ted Kremenek <kremenek@apple.com> |
Implemented serialization of SrcMgr::ContentCache. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44578 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b6427f821de8cce1566fb6e755143ea0918d5543 |
|
04-Dec-2007 |
Ted Kremenek <kremenek@apple.com> |
Fixed a few more comments to change "FileInfo" to "ContentCache." git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44574 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
18807d2bfb9282a35b921b4feeda09ffaa110e6b |
|
10-Nov-2007 |
Chris Lattner <sabre@nondot.org> |
rename getInstantiationLoc to match the scheme of isPhysicalLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43969 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
b7489d8129136437953d412e2a6cf0ef87f4a461 |
|
10-Nov-2007 |
Chris Lattner <sabre@nondot.org> |
change source location to have two bits for macros, tracking whether the location is the start and/or end of an expansion. These are currently not set or used by anything. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43968 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
0d892d8bfddd4916cc4f3467e1184a623d0716da |
|
30-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Updated some comments. Disabled assignments for ContentCache. Copy-ctor for ContentCache now has an assertion preventing it to be copied from an object that already has an allocated buffer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43526 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
78d85f53b093867bbb0123f016956178eea7343e |
|
30-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Removed SrcMgr::FileInfo and SrcMgr::InfoRec and replaced them with a single class: ContentCache. This simplifies the logic in SourceManager and makes the ownership of MemoryBuffers clearer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43518 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
f17765d202d1ec34ada7ff3f18d18731588143c2 |
|
30-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
update some comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43506 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
3457e8cbaa8a6fec5d69173450655fe0bc38634b |
|
12-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
add a new SM::getDecomposedFileLoc method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@42931 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
8a12c2777cccdf629b89745b6ecc89a8c1641e4e |
|
11-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
Push the rewriting APIs along. Build a trivial client that replaces tabs with x's for now. The APIs are all unimplemented, so it doesn't do anything yet! :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@42868 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
8b6ca8866f09fd8e018a329a0749d2dcf11b146a |
|
30-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
constify a method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@41600 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
d8e3083840fef752d11ca183f42786470ed061e3 |
|
24-Jul-2007 |
Chris Lattner <sabre@nondot.org> |
Use a smallstring instead of an std::string in FileChanged to avoid some malloc traffic. This speeds up -E on xalancbmk by 2.4% git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@40461 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
5e36a7a89da5d69ece23fc8228624a053f75c645 |
|
24-Jul-2007 |
Chris Lattner <sabre@nondot.org> |
Add a cache to SourceManager to accellerate line # lookup. This is a bottleneck for -E computation, because every token that starts a line needs to determine *which* line it is on (so -E mode can insert the appropriate vertical whitespace). This optimization improves this common case where it is striding through the line # table. This speeds up -E on xalancbmk by 3.2% git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@40459 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
bd24776a825a18a59067c68a9d32f2d22e4cbf79 |
|
22-Jul-2007 |
Chris Lattner <sabre@nondot.org> |
when running in -E mode on multiple files, there is no reason to accumulate fileid's and macroid's across files. Clearing between files keeps the tables smaller and slightly speeds up compilation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@40383 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
31bb8be680ee2facf7fbb3c6c87b9bbd20248328 |
|
20-Jul-2007 |
Chris Lattner <sabre@nondot.org> |
improve comments, implement a trivial single-entry cache in SourceManager::getInstantiationLoc. With this change, every token expanded from a macro doesn't get its own MacroID. :) This reduces # macro IDs in carbon.h from 16805 to 9197 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@40108 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
9dc1f530c086d2c16f8cba758b0f59a5bf41323a |
|
20-Jul-2007 |
Chris Lattner <sabre@nondot.org> |
Reimplement SourceLocation. Instead of having a fileid/offset pair, it now contains a bit discriminating between mapped locations and file locations. This separates the tables for macros and files in SourceManager, and allows better separation of concepts in the rest of the compiler. This allows us to have *many* macro instantiations before running out of 'addressing space'. This is also more efficient, because testing whether something is a macro expansion is now a bit test instead of a table lookup (which also used to require having a srcmgr around, now it doesn't). This is fully functional, but there are several refinements and optimizations left. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@40103 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
abca2bba54197256f2830f757218cfbea2ed9cd1 |
|
15-Jul-2007 |
Chris Lattner <sabre@nondot.org> |
Change SourceManager::getInstantiationLoc to take virtual locations, doing its virtual->physical mapping explicitly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@39867 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
9dc62f044a6ba21f503bd56607d94b32704e7945 |
|
12-Jul-2007 |
Chris Lattner <sabre@nondot.org> |
Improve portability to compilers where <cassert> is not implicitly included. Patch contributed by Benoit Boissinot! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@39779 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|
5f016e2cb5d11daeb237544de1c5d59f20fe1a6e |
|
11-Jul-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Stage two of getting CFE top correct. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@39734 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/SourceManager.h
|