summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Everything under [re.results]Howard Hinnant2010-08-1423-12/+1253
| | | | llvm-svn: 111074
* improve indentationChris Lattner2010-08-141-19/+18
| | | | llvm-svn: 111073
* More cleanup enabling.John McCall2010-08-143-12/+52
| | | | llvm-svn: 111070
* T2I_rbin_irs rr variant is for disassembly only, so don't provide a pattern.Bob Wilson2010-08-141-1/+1
| | | | llvm-svn: 111068
* PR3344: Downgrade "too many braces around scalar initializer" to a warning.Eli Friedman2010-08-143-9/+9
| | | | llvm-svn: 111067
* Always recurse into sub-cursors when annotating tokens, as this information ↵Ted Kremenek2010-08-142-2/+55
| | | | | | is used for annotating macro arguments. This finishes up <rdar://problem/8044584>. llvm-svn: 111066
* Driver: Increase flags to hold all necessary bits.Daniel Dunbar2010-08-141-1/+1
| | | | llvm-svn: 111065
* Update CMake build.Ted Kremenek2010-08-141-1/+1
| | | | llvm-svn: 111063
* As a heuristic, annotate tokens (via clang_annotateTokens) that are the ↵Ted Kremenek2010-08-142-1/+93
| | | | | | arguments of a macro instantiation using the closest cursor with the same spelling location. Because macro arguments can get token pasted in any arbitrary order, we use the annotation map to paper over the token -> cursor annotations during our post-processing stage. This fixes most of <rdar://problem/8044584>, but still doesn't work for assert(). llvm-svn: 111062
* LoopSimplify shouldn't split loop backedges that use indirectbr. PR7867.Dan Gohman2010-08-142-0/+40
| | | | llvm-svn: 111061
* Teach SimplifyCFG how to simplify indirectbr instructions.Dan Gohman2010-08-146-19/+96
| | | | | | | | | | | - Eliminate redundant successors. - Convert an indirectbr with one successor into a direct branch. Also, generalize SimplifyCFG to be able to be run on a function entry block. It knows quite a few simplifications which are applicable to the entry block, and it only needs a few checks to avoid trouble with the entry block. llvm-svn: 111060
* Add a local stack object block allocation pass. This is still anJim Grosbach2010-08-146-2/+282
| | | | | | | | | | | | | | | | | | experimental pass that allocates locals relative to one another before register allocation and then assigns them to actual stack slots as a block later in PEI. This will eventually allow targets with limited index offset range to allocate additional base registers (not just FP and SP) to more efficiently reference locals, as well as handle situations where locals cannot be referenced via SP or FP at all (dynamic stack realignment together with variable sized objects, for example). It's currently incomplete and almost certainly buggy. Work in progress. Disabled by default and gated via the -enable-local-stack-alloc command line option. rdar://8277890 llvm-svn: 111059
* Add a lint check for an indirectbr destination which has notDan Gohman2010-08-132-0/+7
| | | | | | had its address taken. llvm-svn: 111058
* Add a Thumb2 t2RSBrr instruction for disassembly only.Bob Wilson2010-08-132-5/+22
| | | | | | This fixes another part of PR7792. llvm-svn: 111057
* Added a workaround for test suite hang while terminating by checking env ↵Johnny Chen2010-08-131-0/+5
| | | | | | | | variable LLDB_TESTSUITE_FORCE_FINISH and, if defined, kill the test suite. llvm-svn: 111056
* Clean up the Spiller.h interface.Jakob Stoklund Olesen2010-08-136-44/+31
| | | | | | | | | The earliestStart argument is entirely specific to linear scan allocation, and can be easily calculated by RegAllocLinearScan. Replace std::vector with SmallVector. llvm-svn: 111055
* Documented ClangExpressionVariable(List), andSean Callanan2010-08-132-26/+63
| | | | | | cleaned up its API slightly. llvm-svn: 111053
* Implement caching of code-completion results for macro definitionsDouglas Gregor2010-08-1311-110/+396
| | | | | | | | | | | | | | | | | | | | | | | | | | | | when the CXTranslationUnit_CacheCompletionResults option is given to clang_parseTranslationUnit(). Essentially, we compute code-completion results for macro definitions after we have parsed the file, then store an ASTContext-agnostic version of those results (completion string, cursor kind, priority, and active contexts) in the ASTUnit. When performing code completion in that ASTUnit, we splice the macro definition results into the results provided by the actual code-completion (which has had macros turned off) before libclang gets those results. We use completion context information to only splice in those results that make sense for that context. With a completion involving all of the macros from Cocoa.h and a few other system libraries (totally ~8500 macro definitions) living in a precompiled header, we get about a 9% performance improvement from code completion, since we no longer have to deserialize all of the macro definitions from the precompiled header. Note that macro definitions are merely the canary; the cache is designed to also support other top-level declarations, which should be a bigger performance win. That optimization will be next. Note also that there is no mechanism for determining when to throw away the cache and recompute its contents. llvm-svn: 111051
* Temporarily disable tail calls on ARM to work around some linker problems.Bob Wilson2010-08-135-0/+13
| | | | llvm-svn: 111050
* Added documentation to ClangExpressionDeclMap.Sean Callanan2010-08-133-42/+492
| | | | | | | | Also cleaned up its API a tiny bit (but not the extensive amount that is actually needed. That's still coming.) llvm-svn: 111049
* Move the Thumb2 SSAT and USAT optional shift operator out of theBob Wilson2010-08-133-39/+25
| | | | | | instruction opcode. This fixes part of PR7792. llvm-svn: 111047
* Various optimizations. Don't compare two loops' depthsDan Gohman2010-08-131-18/+26
| | | | | | | when they are the same loop. Don't compare two instructions' loop depths when they are in the same block. llvm-svn: 111045
* Sketch out a framework for delaying the activation of a cleanup.John McCall2010-08-134-7/+119
| | | | | | Not yet complete or used. llvm-svn: 111044
* Implement splitting inside a single block.Jakob Stoklund Olesen2010-08-133-5/+95
| | | | | | | | When a live range is contained a single block, we can split it around instruction clusters. The current approach is very primitive, splitting before and after the largest gap between uses. llvm-svn: 111043
* Fix LSR's ExtractImmediate and ExtractSymbol to avoid callingDan Gohman2010-08-131-4/+8
| | | | | | | ScalarEvolution::getAddExpr, which can be pretty expensive, when nothing has changed, which is pretty common. llvm-svn: 111042
* Add comments to some pattern fragments in x86Bruno Cardoso Lopes2010-08-131-4/+10
| | | | llvm-svn: 111041
* tidy up commentsJim Grosbach2010-08-131-2/+2
| | | | llvm-svn: 111040
* When testing whether one loop contains another, test this directlyDan Gohman2010-08-131-2/+2
| | | | | | rather than testing whether the loop contains the other's header. llvm-svn: 111039
* Add a const.Dan Gohman2010-08-131-1/+1
| | | | llvm-svn: 111038
* When creating a symmetric SCEV with a constant operand, putDan Gohman2010-08-131-4/+4
| | | | | | | the constant operand on the left, as that's where ScalarEvolution will end up canonicalizing to. llvm-svn: 111037
* Revert 111026 & 111027, build breakage.Argyrios Kyrtzidis2010-08-136-160/+29
| | | | llvm-svn: 111036
* Added a test case to exercise persistent variables in combination with the ↵Johnny Chen2010-08-131-0/+57
| | | | | | "expr" command. llvm-svn: 111035
* An add recurrence is loop-invariant in any loop inside of itsDan Gohman2010-08-131-0/+4
| | | | | | | associated loop. This avoids potentially expensive traversals of the add recurrence's operands. llvm-svn: 111034
* tidy up 80 column and whitespaceJim Grosbach2010-08-131-18/+18
| | | | llvm-svn: 111033
* Revert r111007.Mikhail Glushenkov2010-08-132-19/+5
| | | | | | Apparently, this is now fixed in Clang. llvm-svn: 111032
* Implement hasComputableLoopEvolution for Add, Mul, and Trunc operators,Dan Gohman2010-08-131-0/+18
| | | | | | | since they can support trivial implementations. This avoids potentially expensive traversals of the operands. llvm-svn: 111031
* Refactor the code for disassembling Thumb2 saturate instructions along theBob Wilson2010-08-131-56/+39
| | | | | | same lines as the change I made for ARM saturate instructions. llvm-svn: 111029
* Revert 110491. While not wrong, it was based on aDale Johannesen2010-08-132-40/+8
| | | | | | misanalysis and is undesirable. llvm-svn: 111028
* The unused warnings extravaganza continues. Warn for:Argyrios Kyrtzidis2010-08-135-15/+68
| | | | | | | | | -static variables -variables in anonymous namespace (fixes rdar://7794535) -static data members in anonymous namespace -static data members specializations in anonymous namespace llvm-svn: 111027
* Expand the unused warnings for functions. Warn for:Argyrios Kyrtzidis2010-08-136-26/+104
| | | | | | | | | | -static function declarations -functions in anonymous namespace -class methods in anonymous namespace -class method specializations in anonymous namespace -function specializations in anonymous namespace llvm-svn: 111026
* Change Sema's UnusedStaticFuncs to UnusedFileScopedDecls to allow also ↵Argyrios Kyrtzidis2010-08-137-59/+74
| | | | | | | | keeping track of unused file scoped variables. This is only preparation, currently only static function definitions are tracked, as before. llvm-svn: 111025
* Everything under [re.regex]Howard Hinnant2010-08-1326-35/+511
| | | | llvm-svn: 111024
* When issuing warning for future conflict resolution,Fariborz Jahanian2010-08-133-3/+8
| | | | | | | | (nonfragile-abi2), do not consider 'ivar' access in class methods. Also, improve on diagnostics. Radar 8304561. llvm-svn: 111023
* Fix comment to reflect code, and remove an unused argumentBruno Cardoso Lopes2010-08-131-4/+3
| | | | llvm-svn: 111022
* Improve comment to make explicit why not to touch this could before JIT goes MCBruno Cardoso Lopes2010-08-131-1/+6
| | | | llvm-svn: 111021
* Add a new cc1 option -fix-what-you-can which when combined with the fix-it modeNick Lewycky2010-08-137-19/+31
| | | | | | will apply all fixes even when there were other errors in the file. llvm-svn: 111020
* tidy up whitespace a bitJim Grosbach2010-08-131-7/+6
| | | | llvm-svn: 111019
* Add an options parameter to clang_saveTranslationUnit, because we'll want it ↵Douglas Gregor2010-08-135-3/+41
| | | | | | later llvm-svn: 111016
* Fixed NNS insertion in MemberPointerType.Abramo Bagnara2010-08-131-9/+13
| | | | llvm-svn: 111013
* Properly give unique-external linkage to members of member templatesJohn McCall2010-08-132-23/+81
| | | | | | instantiated with unique-external parameters. llvm-svn: 111012
OpenPOWER on IntegriCloud