summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* XFAIL these tests for now.Devang Patel2009-10-135-1/+5
| | | | llvm-svn: 83933
* Add a ceilLogBase2 function to APInt.Dan Gohman2009-10-132-0/+16
| | | | llvm-svn: 83932
* Memory dependence analysis was incorrectly stopping to scan for stores to a ↵Victor Hernandez2009-10-132-10/+20
| | | | | | | | pointer at bitcast uses of a malloc call. It should continue scanning until the malloc call, and this patch fixes that. llvm-svn: 83931
* Regenerate configure for rev. 83823 putback.Edward O'Callaghan2009-10-132-45/+68
| | | | llvm-svn: 83930
* Disable tests that check debug info intrinsic. This does not work if debug ↵Devang Patel2009-10-122-0/+2
| | | | | | info intrinsics are not used to encode debug info. llvm-svn: 83929
* Enable "debug info attached to an instruction" mode.Devang Patel2009-10-121-0/+2
| | | | llvm-svn: 83928
* Enable "debug info attached to an instruction" mode.Devang Patel2009-10-122-0/+4
| | | | llvm-svn: 83925
* Minor CSS fixDouglas Gregor2009-10-121-0/+2
| | | | llvm-svn: 83924
* When declaring a class template whose name is qualified, make sureDouglas Gregor2009-10-123-2/+25
| | | | | | | | that the scope in which it is being declared is complete. Also, when instantiating a member class template's ClassTemplateDecl, be sure to delay type creation so that the resulting type is dependent. Ick. llvm-svn: 83923
* Find enclosing subprogram info.Devang Patel2009-10-121-1/+19
| | | | llvm-svn: 83922
* Set default location for a function if it is not set.Devang Patel2009-10-121-0/+2
| | | | llvm-svn: 83921
* Minor margin fixDouglas Gregor2009-10-121-0/+2
| | | | llvm-svn: 83918
* Fix two warnings about unused variables that are only used in assert() calls.Kevin Enderby2009-10-121-4/+4
| | | | llvm-svn: 83917
* Delete a comment that makes no sense to me. The statement that moving a CPEBob Wilson2009-10-121-2/+1
| | | | | | | | | before its reference is only supported on ARM has not been true for a while. In fact, until recently, that was only supported for Thumb. Besides that, CPEs are always a multiple of 4 bytes in size, so inserting a CPE should have no effect on Thumb alignment. llvm-svn: 83916
* Fix a problem in the code where ARMAsmParser::ParseShift() second argumentKevin Enderby2009-10-121-2/+2
| | | | | | should have been a pointer to a reference. llvm-svn: 83915
* Test explicit specialization involving multiple template<> headersDouglas Gregor2009-10-121-0/+12
| | | | llvm-svn: 83914
* There is no need to attach debug location info with alloca instruction.Devang Patel2009-10-121-5/+1
| | | | llvm-svn: 83913
* Encode long double.Devang Patel2009-10-121-0/+1
| | | | llvm-svn: 83912
* Permit explicit specialization of member functions of class templatesDouglas Gregor2009-10-123-4/+40
| | | | | | | | that are declarations (rather than definitions). Also, be sure to set the access specifiers properly when instantiating the declarations of member function templates. llvm-svn: 83911
* More appropriate API usage.John McCall2009-10-121-3/+1
| | | | llvm-svn: 83910
* Make licm debug message readable.Evan Cheng2009-10-121-1/+2
| | | | llvm-svn: 83908
* Implement -Wparentheses: warn about using assignments in contexts that requireJohn McCall2009-10-125-49/+147
| | | | | | | | | conditions. Add a fixit to insert the parentheses. Also fix a very minor possible memory leak in 'for' conditions. Fixes PR 4876 and rdar://problem/7289172 llvm-svn: 83907
* Change CreateNewWater method to return NewMBB by reference.Bob Wilson2009-10-121-8/+8
| | | | llvm-svn: 83905
* Test explicit specializations of static data members that are declarations, ↵Douglas Gregor2009-10-121-0/+22
| | | | | | not definitions llvm-svn: 83904
* Last week, ARMConstantIslandPass was failing to converge for theBob Wilson2009-10-121-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MultiSource/Benchmarks/MiBench/automotive-susan test. The failure has since been masked by an unrelated change (just randomly), so I don't have a testcase for this now. Radar 7291928. The situation where this happened is that a constant pool entry (CPE) was placed at a lower address than the load that referenced it. There were in fact 2 CPEs placed at adjacent addresses and referenced by 2 loads that were close together in the code. The distance from the loads to the CPEs was right at the limit of what they could handle, so that only one of the CPEs could be placed within range. On every iteration, the first CPE was found to be out of range, causing a new CPE to be inserted. The second CPE had been in range but the newly inserted entry pushed it too far away. Thus the second CPE was also replaced by a new entry, which in turn pushed the first CPE out of range. Etc. Judging from some comments in the code, the initial implementation of this pass did not support CPEs placed _before_ their references. In the case where the CPE is placed at a higher address, the key to making the algorithm terminate is that new CPEs are only inserted at the end of a group of adjacent CPEs. This is implemented by removing a basic block from the "WaterList" once it has been used, and then adding the newly inserted CPE block to the list so that the next insertion will come after it. This avoids the ping-pong effect where CPEs are repeatedly moved to the beginning of a group of adjacent CPEs. This does not work when going backwards, however, because the entries at the end of an adjacent group of CPEs are closer than the CPEs earlier in the group. To make this pass terminate, we need to maintain a property that changes can only happen in some sort of monotonic fashion. The fix used here is to require that the CPE for a particular constant pool load can only move to lower addresses. This is a very simple change to the code and should not cause any significant degradation in the results. llvm-svn: 83902
* Yet another test for explicit specialization, this one involving linkageDouglas Gregor2009-10-121-0/+42
| | | | llvm-svn: 83901
* Store the key function of a record decl inside CGRecordLayout.Anders Carlsson2009-10-122-3/+41
| | | | llvm-svn: 83900
* Use a BumpPtrAllocator to allocate all aspects of CFG, including CFGBlocks, ↵Ted Kremenek2009-10-123-89/+108
| | | | | | | | | | | | successor and predecessor vectors, etc. Speedup: when doing 'clang-cc -analyze -dump-cfg' (without actual printing, just CFG building) on the amalgamated SQLite source (all of SQLite in one source file), runtime reduced by 9%. This fixes: <rdar://problem/7250745> llvm-svn: 83899
* Fixup windows include paths. Patch by John Thompson.Mike Stump2009-10-123-102/+125
| | | | llvm-svn: 83898
* Another minor clean-up.Bob Wilson2009-10-121-5/+5
| | | | llvm-svn: 83897
* More tests for explicit template specializationDouglas Gregor2009-10-124-0/+35
| | | | llvm-svn: 83896
* allow this testcase to pass with recent changes. The test hasn't beenChris Lattner2009-10-121-1/+1
| | | | | | | | producing any stores at all for a long time, but ".store." was in some IR instruction names until recently. This removal caused the test to start failing. Just make it reject any stores. llvm-svn: 83895
* Remove redundant parameter.Bob Wilson2009-10-121-8/+6
| | | | llvm-svn: 83894
* Add test for last commitDouglas Gregor2009-10-121-0/+56
| | | | llvm-svn: 83893
* Diagnose the declaration of explicit specializations after an implicitDouglas Gregor2009-10-1211-42/+198
| | | | | | | instantiation has already been required. To do so, keep track of the point of instantiation for anything that can be instantiated. llvm-svn: 83890
* Handle built-in unary operators when reporting ambiguities.Fariborz Jahanian2009-10-124-14/+40
| | | | | | wip - To prune excessive reporting. llvm-svn: 83889
* Fix test.Anders Carlsson2009-10-121-0/+1
| | | | llvm-svn: 83888
* Even more devirtualization cleverness.Anders Carlsson2009-10-122-1/+21
| | | | llvm-svn: 83886
* Allow BumpVectorContext to conditionally own the underlying BumpPtrAllocator.Ted Kremenek2009-10-121-2/+17
| | | | llvm-svn: 83884
* More devirtualization improvements.Anders Carlsson2009-10-122-0/+14
| | | | llvm-svn: 83883
* Devirtualize calls on temporaries. A().f() for example.Anders Carlsson2009-10-122-0/+9
| | | | llvm-svn: 83882
* Factor out devirtualization checking into a separate function and make it ↵Anders Carlsson2009-10-123-8/+33
| | | | | | handle references correctly. llvm-svn: 83880
* Use early exit to reduce indentation.Bob Wilson2009-10-121-19/+20
| | | | llvm-svn: 83874
* Change to return a value by reference.Bob Wilson2009-10-121-6/+6
| | | | llvm-svn: 83873
* Add a typedef for an iterator.Bob Wilson2009-10-121-6/+8
| | | | llvm-svn: 83872
* Revert the kludge in 76703. I got a cleanDale Johannesen2009-10-124-36/+25
| | | | | | | | | bootstrap of FSF-style PPC, so there is some reason to believe the original bug (which was never analyzed) has been fixed, probably by 82266. llvm-svn: 83871
* Fix warning.Dale Johannesen2009-10-121-1/+1
| | | | llvm-svn: 83870
* Use CanQualType (instead of QualType) to store collection of visibleFariborz Jahanian2009-10-122-10/+12
| | | | | | canonical conversion types. llvm-svn: 83869
* fix validation error pointed out by gabor (and the w3c :)Chris Lattner2009-10-121-1/+1
| | | | llvm-svn: 83868
* Improve bugpoint doc, patch by Timo Lindfors!Chris Lattner2009-10-121-0/+11
| | | | llvm-svn: 83865
OpenPOWER on IntegriCloud