summaryrefslogtreecommitdiffstats
path: root/clang/Driver/PrintPreprocessedOutput.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* change the concatenation avoidance algorithm to be partially table-drivenChris Lattner2007-07-231-41/+130
| | | | | | | and avoid computing the spelling of tokens when not needed. This speeds up -E on 447.dealII by 2.2% llvm-svn: 40421
* If a token doesn't need cleaning, we can get its first characterChris Lattner2007-07-231-0/+4
| | | | | | | without having to get the whole token. This speeds up -E on 447.dealII by 1.8% llvm-svn: 40420
* A minor tweak to -E output, speeding up -E 1.5% on 447.dealIIChris Lattner2007-07-231-3/+6
| | | | llvm-svn: 40419
* no need to avoid pasting >* It can't form ->*, because we know the previousChris Lattner2007-07-221-3/+2
| | | | | | token was not -> and if the token before it was -, the - and > would avoid pasting. llvm-svn: 40409
* remove redundant testChris Lattner2007-07-221-2/+0
| | | | llvm-svn: 40386
* avoid a small bit of string traffic by not storing the ""'s around a string ↵Chris Lattner2007-07-221-2/+6
| | | | | | in CurFilename llvm-svn: 40385
* At one point there were going to be lexer and parser tokens.Chris Lattner2007-07-201-7/+7
| | | | | | | Since that point is now long gone, we should rename LexerToken to Token, as it is the only kind of token we have. llvm-svn: 40105
* Reimplement SourceLocation. Instead of having a Chris Lattner2007-07-201-4/+5
| | | | | | | | | | | | | | | | | 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. llvm-svn: 40103
* Finally bite the bullet and make the major change: split the clang namespaceChris Lattner2007-06-151-9/+9
| | | | | | | | | | | | | out of the llvm namespace. This makes the clang namespace be a sibling of llvm instead of being a child. The good thing about this is that it makes many things unambiguous. The bad things is that many things in the llvm namespace (notably data structures like smallvector) now require an llvm:: qualifier. IMO, libsystem and libsupport should be split out of llvm into their own namespace in the future, which will fix this issue. llvm-svn: 39659
* ProcessInputFile no longer mutates LangInfo.Chris Lattner2006-11-211-1/+1
| | | | llvm-svn: 39210
* Change KeepComments/KeepMacroComments modes to be facets of the preprocessorChris Lattner2006-11-211-5/+3
| | | | | | state, not aspects of the language standard being parsed. llvm-svn: 39209
* first step refactoring driver so that it can process multiple input filesChris Lattner2006-11-211-0/+1
| | | | | | at once. llvm-svn: 39207
* eliminate global variables now that PPCallbacks can have stateChris Lattner2006-11-211-54/+67
| | | | llvm-svn: 39205
* Formalize preprocessor callbacks together into a PPCallbacks structure, insteadChris Lattner2006-11-211-15/+26
| | | | | | | of having a loose collection of function pointers. This also allows clients to maintain state, and reduces the size of the Preprocessor.h interface. llvm-svn: 39203
* Remove GNU C++ min/max operator extension support, they have been removedChris Lattner2006-10-271-3/+0
| | | | | | from gcc mainline. llvm-svn: 39067
* Fix regression in my last commitChris Lattner2006-10-181-1/+3
| | | | llvm-svn: 39013
* silence warningChris Lattner2006-10-181-3/+1
| | | | llvm-svn: 39009
* Trigraphs are not enabled in -fpreprocessed mode.Chris Lattner2006-07-291-3/+1
| | | | llvm-svn: 38796
* Fix -E mode to enter the main file *after* -E mode configures the preprocessor.Chris Lattner2006-07-291-1/+8
| | | | llvm-svn: 38784
* Implement comment saving mode: the -C and -CC options.Chris Lattner2006-07-291-1/+11
| | | | llvm-svn: 38783
* Implement paste avoidance, implementing Preprocessor/output_paste_avoid.cChris Lattner2006-07-281-2/+94
| | | | llvm-svn: 38767
* Change Lexer::Stringify to not add ""'s around the string.Chris Lattner2006-07-151-1/+1
| | | | llvm-svn: 38708
* Cleanup some obsolete comments.Chris Lattner2006-07-041-5/+1
| | | | llvm-svn: 38673
* Change the Preprocessor::getSpelling interface to let it be zero-copy inChris Lattner2006-07-041-3/+3
| | | | | | the common case. llvm-svn: 38671
* Switch to using unix "write" when available, instead of stdio. This speeds upChris Lattner2006-07-041-29/+124
| | | | | | -E -P mode by 10% (i.e. takes away almost all i/o time). llvm-svn: 38669
* improve commentsChris Lattner2006-07-041-0/+8
| | | | llvm-svn: 38668
* fix compile errorChris Lattner2006-07-041-1/+1
| | | | llvm-svn: 38667
* Minor code cleanupChris Lattner2006-07-041-6/+2
| | | | llvm-svn: 38666
* Make -P mode faster and closer to GCC output by not emitting newlines at all.Chris Lattner2006-07-041-22/+18
| | | | | | This allows the SourceManager to not compute line number information for each buffer. llvm-svn: 38665
* Match GCC behavior better in -P mode.Chris Lattner2006-07-041-1/+7
| | | | llvm-svn: 38663
* Switch from using iostreams to using stdio for -E mode output. This speedsChris Lattner2006-07-041-26/+31
| | | | | | up clang -E iostream by 30%. llvm-svn: 38660
* minor cleanupChris Lattner2006-07-041-1/+2
| | | | llvm-svn: 38659
* Split the -E mode printer out to a separate .cpp file.Chris Lattner2006-07-041-0/+206
llvm-svn: 38658
OpenPOWER on IntegriCloud