summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* add an operator= to assign to smallstring.Chris Lattner2008-11-201-0/+5
| | | | llvm-svn: 59715
* remove the last old-fashioned Diag method. Transition complete!Chris Lattner2008-11-209-89/+79
| | | | llvm-svn: 59714
* remove another old Diag method.Chris Lattner2008-11-205-52/+43
| | | | llvm-svn: 59713
* remove another old-school Diag method.Chris Lattner2008-11-2011-125/+109
| | | | llvm-svn: 59712
* remove the type_info identifier cache. Compared to the costChris Lattner2008-11-203-17/+7
| | | | | | | | | | | of doing the lookup_decl, the hash lookup is cheap. Also, typeid doesn't happen enough in real world code to worry about it. I'd like to eventually get rid of KnownFunctionIDs from Sema also, but today is not that day. llvm-svn: 59711
* compared to the rest of the code in Sema::GetStdNamespace(),Chris Lattner2008-11-203-3/+2
| | | | | | | looking up the "std" identifier is trivial. Just do it, particularly since this is only done if the namespace hasn't already been looked up. llvm-svn: 59710
* remove some other identifiers that are looked up really early and onlyChris Lattner2008-11-203-15/+15
| | | | | | used in one cold place. llvm-svn: 59709
* instead of looking up super at startup time, Chris Lattner2008-11-204-7/+2
| | | | | | | just check for it when needed. It doesn't incur real cost in any hot paths. llvm-svn: 59708
* CellSPU: Custom lower truncating stores of i8 to i1 (should not have beenScott Michel2008-11-202-3/+4
| | | | | | promote), fix signed conversion of indexed offsets. llvm-svn: 59707
* Rename IdentifierInfo::isName to ::isStr. Use a nifty trickChris Lattner2008-11-205-19/+20
| | | | | | | from Sebastian to enforce that a literal string is passed in, and use this to avoid having to call strlen on it. llvm-svn: 59706
* undef beats zero. Fix this missed optimization opportunity. Patch by Matt Elder!Nick Lewycky2008-11-201-1/+1
| | | | llvm-svn: 59705
* Revert accidental last patchScott Michel2008-11-201-2/+2
| | | | llvm-svn: 59704
* CellSPU: Adjust spacing/tabulationScott Michel2008-11-202-10/+10
| | | | llvm-svn: 59703
* Remove a remnant of list-burr's fast mode.Dan Gohman2008-11-201-20/+0
| | | | llvm-svn: 59702
* Factor out the SethiUllman numbering logic from the list-burr andDan Gohman2008-11-201-159/+47
| | | | | | list-tdrr schedulers into a common base class. llvm-svn: 59701
* Remove the "fast" form of the list-burr scheduler, and use theDan Gohman2008-11-202-74/+15
| | | | | | | | | dedicated "fast" scheduler in -fast mode instead, which is faster. This speeds up llc -fast by a few percent on some testcases -- the speedup only happens for code not handled by fast-isel. llvm-svn: 59700
* CMake: when building shared libraries, use -fPIC for compilingOscar Fuentes2008-11-202-0/+6
| | | | | | partially linked objects. llvm-svn: 59699
* Facter AddPseudoTwoAddrDeps and associated infrasructure out ofDan Gohman2008-11-201-43/+60
| | | | | | | the list-burr scheduler so that it can be used by the list-tdrr scheduler too. llvm-svn: 59698
* - Register scavenger should use MachineRegisterInfo and internal map to find ↵Evan Cheng2008-11-203-44/+504
| | | | | | | | | the first use of a register after a given machine instruction. - When scavenging a register, in addition to the spill, insert a restore before the first use. - Abort if client is looking to scavenge a register even when a previously scavenged register is still live. llvm-svn: 59697
* Fix a thinko. MO is getOperand(i-1) so we don't have to adjust e.Evan Cheng2008-11-201-3/+1
| | | | llvm-svn: 59696
* Make FIXME a hard assertion.Ted Kremenek2008-11-201-2/+6
| | | | llvm-svn: 59695
* Preprocessor::getCurrentFileLexer() now returns a PreprocessorLexer* instead ofTed Kremenek2008-11-202-6/+7
| | | | | | | a Lexer*. This means it will either return the current (normal) file Lexer or a PTHLexer. llvm-svn: 59694
* Just use the SourceLocation of SysHeaderTok when doing a callback to emit #lineTed Kremenek2008-11-201-2/+2
| | | | | | | information. A diff of the -E output for Cocoa.h shows that there is no change in output. llvm-svn: 59693
* Add #include <climits> to get the definition of INT_MAX.Dan Gohman2008-11-201-0/+1
| | | | llvm-svn: 59692
* Assign the result of getCurrentFileLexer() to a PreprocessorLexer* instead ↵Ted Kremenek2008-11-201-1/+1
| | | | | | of Lexer* (narrower interface). llvm-svn: 59691
* - Default initialize ParsingPreprocessorDirective, ParsingFilename, andTed Kremenek2008-11-204-34/+28
| | | | | | | | LexingRawMode in the ctor of PreprocessorLexer. - PTHLexer: Use "LastToken" instead of "NumToken" llvm-svn: 59690
* Factor out the code for verifying the work of the scheduler,Dan Gohman2008-11-205-89/+66
| | | | | | | extend it a bit, and make use of it in all schedulers, to ensure consistent checking. llvm-svn: 59689
* Do not forget llvm.dbg.declare's first argument while removing debugging ↵Devang Patel2008-11-201-4/+12
| | | | | | information. llvm-svn: 59688
* Add (untested) implementation of PTHLexer::isNextPPTokenLParen() and ↵Ted Kremenek2008-11-201-4/+14
| | | | | | PTHLexer::DiscardToEndOfLine(). llvm-svn: 59687
* Use ScheduleDAGSDNodes.h instead of ScheduleDAG.h (stuff moved around).Ted Kremenek2008-11-201-1/+1
| | | | llvm-svn: 59684
* Split region store specific test cases.Zhongxing Xu2008-11-202-17/+17
| | | | llvm-svn: 59683
* More objc gc stuff. Read/Write barriers for local static/extern,Fariborz Jahanian2008-11-204-19/+53
| | | | | | | diagnostics on use of __weak attribute on fields, Early support for read/write barriers for objc fields. llvm-svn: 59682
* Copy the tblgen utility.Bill Wendling2008-11-201-0/+3
| | | | llvm-svn: 59681
* Simplify this code a little. In the fast scheduler, CreateNewSUnitDan Gohman2008-11-191-17/+5
| | | | | | and CreateClone don't add any extra value. llvm-svn: 59679
* Eliminate a compile time warning.Evan Cheng2008-11-191-4/+6
| | | | llvm-svn: 59678
* Eliminate a compile time warning.Evan Cheng2008-11-191-4/+6
| | | | llvm-svn: 59677
* Experimental post-pass scheduling support. Post-pass schedulingDan Gohman2008-11-1923-889/+1341
| | | | | | | | | | | | | | | | | is currently off by default, and can be enabled with -disable-post-RA-scheduler=false. This doesn't have a significant impact on most code yet because it doesn't yet do anything to address anti-dependencies and it doesn't attempt to disambiguate memory references. Also, several popular targets don't have pipeline descriptions yet. The majority of the changes here are splitting the SelectionDAG-specific code out of ScheduleDAG, so that ScheduleDAG can be moved to libLLVMCodeGen.a. The interface between ScheduleDAG-using code and the rest of the scheduling code is somewhat rough and will evolve. llvm-svn: 59676
* Beef up the test for function call operators slightlyDouglas Gregor2008-11-191-0/+2
| | | | llvm-svn: 59675
* Implement the rest of C++ [over.call.object], which permits the objectDouglas Gregor2008-11-196-12/+188
| | | | | | | | | | being called to be converted to a reference-to-function, pointer-to-function, or reference-to-pointer-to-function. This is done through "surrogate" candidate functions that model the conversions from the object to the function (reference/pointer) and the conversions in the arguments. llvm-svn: 59674
* Fix comment.Ted Kremenek2008-11-191-1/+1
| | | | llvm-svn: 59673
* Use PreprocessorLexer::getFileID() instead of Lexer::getFileLoc(). This is ↵Ted Kremenek2008-11-193-7/+7
| | | | | | an intermediate step to having getCurrentLexer() return a PreprocessorLexer* instead of a Lexer*. llvm-svn: 59672
* Move more cases of using 'CurLexer' to 'CurPPLexer'.Ted Kremenek2008-11-193-27/+38
| | | | | | Use PTHLexer::isNextPPTokenLParen() when using the PTHLexer. llvm-svn: 59671
* Add stub for PTHLexer::isNextPPTokenLParen().Ted Kremenek2008-11-192-1/+11
| | | | llvm-svn: 59670
* Add version of 'getFileCharacteristic()' for FileIDs.Ted Kremenek2008-11-191-1/+4
| | | | llvm-svn: 59669
* When using a PTHLexer, use DiscardToEndOfLine() instead of ReadToEndOfLine().Ted Kremenek2008-11-195-7/+24
| | | | llvm-svn: 59668
* Move the code for printing a graph node label for an SUnit intoDan Gohman2008-11-193-22/+23
| | | | | | a virtual method of SelectionDAG. llvm-svn: 59667
* - Move static function IsNonPragmaNonMacroLexer into Preprocessor.h.Ted Kremenek2008-11-197-26/+53
| | | | | | | | | | | | | - Add variants of IsNonPragmaNonMacroLexer to accept an IncludeMacroStack entry (simplifies some uses). - Use IsNonPragmaNonMacroLexer in Preprocessor::LookupFile. - Add 'FileID' to PreprocessorLexer, and have Preprocessor query this fileid when looking up the FileEntry for a file Performance testing of -Eonly on Cocoa.h shows no performance regression because of this patch. llvm-svn: 59666
* Convert SUnit's dump method into a print method and implementDan Gohman2008-11-192-6/+11
| | | | | | dump in terms of it. llvm-svn: 59665
* Fix <rdar://problem/6291588> assertion failure: SourceManager.h line 489.Steve Naroff2008-11-192-2/+25
| | | | llvm-svn: 59664
* Support for calling overloaded function call operators (operator())Douglas Gregor2008-11-196-5/+183
| | | | | | | | | | | | | | with function call syntax, e.g., Functor f; f(x, y); This is the easy part of handling calls to objects of class type (C++ [over.call.object]). The hard part (coping with conversions from f to function pointer or reference types) will come later. Nobody uses that stuff anyway, right? :) llvm-svn: 59663
OpenPOWER on IntegriCloud