summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* revert my previous patch, it is breaking something and I don't have timeChris Lattner2009-12-0610-111/+18
| | | | | | to fix it ATM. llvm-svn: 90717
* Move helper onto CXXMethodDecl.Eli Friedman2009-12-063-17/+23
| | | | llvm-svn: 90716
* Switch the std::multimap shadow map used in code completion to anDouglas Gregor2009-12-061-16/+179
| | | | | | | llvm::DenseMap, for a 20% performance improvement in the Cocoa-big-list performance benchmark. llvm-svn: 90715
* this is really about both PR's, 4452 is "don't crash", 4451 is "recover nicely".Chris Lattner2009-12-061-1/+1
| | | | llvm-svn: 90714
* implement PR4451, improving error recovery for a mistaken : where a :: wasChris Lattner2009-12-0610-18/+111
| | | | | | | | | | | | | | | | | | | | | | | | intended. On the first testcase in the bug, we now produce: cxx-decl.cpp:12:2: error: unexpected ':' in nested name specifier y:a a2; ^ :: instead of: t.cc:8:1: error: C++ requires a type specifier for all declarations x:a a2; ^ t.cc:8:2: error: invalid token after top level declarator x:a a2; ^ ; t.cc:9:11: error: use of undeclared identifier 'a2' x::a a3 = a2; ^ llvm-svn: 90713
* simplify logic.Chris Lattner2009-12-061-6/+7
| | | | llvm-svn: 90712
* Add rudimentary support for member pointers to CGDebugInfo.Anders Carlsson2009-12-065-132/+179
| | | | llvm-svn: 90711
* remove some extraneous syntax: sourceloc implicitly converts to sourcerange.Chris Lattner2009-12-067-14/+13
| | | | llvm-svn: 90710
* use new helpers to simplify code.Chris Lattner2009-12-061-8/+4
| | | | llvm-svn: 90709
* fix PR5698Chris Lattner2009-12-062-0/+27
| | | | llvm-svn: 90708
* remove extraneous comma clang warns aboutChris Lattner2009-12-061-1/+1
| | | | llvm-svn: 90707
* Add test case for mktemp. Patch by Lei Zhang.Zhongxing Xu2009-12-061-0/+6
| | | | llvm-svn: 90706
* Drop Preprocessor/open-failure test, it breaks running the test suite as root,Daniel Dunbar2009-12-061-11/+0
| | | | | | and I can't figure out how to write it more portably. llvm-svn: 90705
* Document that CompilerInvocation::createDiagnostics keeps a reference to the ↵Daniel Dunbar2009-12-064-4/+11
| | | | | | DiagnosticOptions, and update callers to make sure they don't pass in a temporary. llvm-svn: 90704
* Fix an off by one in findEndOfWord, which could scan past the end of the ↵Daniel Dunbar2009-12-061-4/+9
| | | | | | string in a corner case. llvm-svn: 90703
* Fix a slight oversight in computing whether a copy constructor is elidable.Eli Friedman2009-12-062-2/+15
| | | | | | Fixes PR5695. llvm-svn: 90702
* Unbreak and add test case for r90276, a situation in which getBuffer is ↵Daniel Dunbar2009-12-063-7/+17
| | | | | | | | expected to fail. Also, update SourceManager.h doxyments for getBuffer() to reflect reality. llvm-svn: 90701
* Change Preprocessor::EnterSourceFile to make ErrorStr non-optional, clients ↵Daniel Dunbar2009-12-064-6/+9
| | | | | | should be forced to deal with error conditions. llvm-svn: 90700
* Add a pretty horrible hack to prevent clang from crashing with inconsistent PCHDaniel Dunbar2009-12-062-2/+33
| | | | | | | | | | | | | files. - The issue is that PCH uses a stat cache, which may reference files which have been deleted or moved. In such cases ContentCache::getBuffer was returning 0 but most clients are incapable of dealing with this (i.e., they don't). For the time being, resolve this issue by just making up some invalid file contents and. Eventually we should detect that we are in an inconsistent situation and error out with a nice message that the PCH is out of date. llvm-svn: 90699
* constant fold loads from memcpy's from global constants. This is importantChris Lattner2009-12-062-6/+62
| | | | | | | because clang lowers nontrivial automatic struct/array inits to memcpy from a global array. llvm-svn: 90698
* add support for forwarding mem intrinsic values to non-local loads.Chris Lattner2009-12-062-33/+97
| | | | llvm-svn: 90697
* gvn is optimizing this better now.Chris Lattner2009-12-061-2/+2
| | | | llvm-svn: 90696
* Handle forwarding local memsets to loads. For example, we optimize this:Chris Lattner2009-12-062-43/+173
| | | | | | | | | | | short x(short *A) { memset(A, 1, sizeof(*A)*100); return A[42]; } to 'return 257' instead of doing the load. llvm-svn: 90695
* Add helper methods for forming shift operations with a constant Chris Lattner2009-12-061-0/+21
| | | | | | shift amount. llvm-svn: 90694
* Integrate the following from the 'objective-rewrite' branch:Steve Naroff2009-12-061-1/+1
| | | | | | | http://llvm.org/viewvc/llvm-project?view=rev&revision=86026 Note: The 'improved debugging' changes weren't integrated (since they were later reverted, since they didn't improve debugging). llvm-svn: 90693
* Integrate the following from the 'objective-rewrite' branch:Steve Naroff2009-12-061-2/+1
| | | | | | http://llvm.org/viewvc/llvm-project?view=rev&revision=82174 llvm-svn: 90692
* merge two tests.Chris Lattner2009-12-062-20/+25
| | | | llvm-svn: 90691
* Integrate the following from the 'objective-rewrite' branch:Steve Naroff2009-12-061-4/+11
| | | | | | http://llvm.org/viewvc/llvm-project?view=rev&revision=72893 llvm-svn: 90690
* Set the correct linkage for VTTs as well.Anders Carlsson2009-12-063-61/+42
| | | | llvm-svn: 90689
* Integrate the following from the 'objective-rewrite' branch:Steve Naroff2009-12-061-7/+13
| | | | | | http://llvm.org/viewvc/llvm-project?view=rev&revision=71473 llvm-svn: 90688
* More linkage improvements.Anders Carlsson2009-12-063-15/+42
| | | | llvm-svn: 90687
* Pass the desired vtable linkage to GenerateVtable directly. Only call ↵Anders Carlsson2009-12-063-27/+16
| | | | | | MaybeMarkVirtualImplicitMembersReferenced for non-inline functions. llvm-svn: 90686
* CheckAtomic.cmake: Put all C++ code inside CHECK_CXX_SOURCE_COMPILES.Oscar Fuentes2009-12-061-2/+1
| | | | llvm-svn: 90685
* Make GenerateVtable a private member function of CGVtableInfo.Anders Carlsson2009-12-063-36/+35
| | | | llvm-svn: 90684
* Fix for atomic intrinsics detection when using MSVC.Oscar Fuentes2009-12-051-0/+12
| | | | | | Patch by Michael Beck! llvm-svn: 90683
* Fix for PR5693: shift some code into SetClassDeclAttributesFromBase so thatEli Friedman2009-12-052-5/+23
| | | | | | it gets called during template instantiation. llvm-svn: 90682
* Only emit the vtable definition if the class has a key function and we're ↵Anders Carlsson2009-12-051-32/+22
| | | | | | emitting it, or if the class doesn't have a key function and we are emitting the complete constructor. llvm-svn: 90681
* If a class does not have a key function, its linkage should be weak_odr.Anders Carlsson2009-12-053-3/+13
| | | | llvm-svn: 90680
* Use createGlobalVariable for creating vtable variables too.Anders Carlsson2009-12-052-52/+52
| | | | llvm-svn: 90679
* Don't call back() on an empty vector.Benjamin Kramer2009-12-051-2/+1
| | | | llvm-svn: 90678
* Integrate the following from the 'objective-rewrite' branch:Steve Naroff2009-12-052-11/+110
| | | | | | | | http://llvm.org/viewvc/llvm-project?view=rev&revision=71225 http://llvm.org/viewvc/llvm-project?view=rev&revision=73207 http://llvm.org/viewvc/llvm-project?view=rev&revision=73414 llvm-svn: 90677
* CodeGenModule::GenerateVtable now returns a pointer directly to the vtable ↵Anders Carlsson2009-12-052-34/+34
| | | | | | and not to the address point. llvm-svn: 90676
* Make sure that hte vtable always has an i8* array type.Anders Carlsson2009-12-051-5/+4
| | | | llvm-svn: 90675
* Add a function for getting the vtable address point of a class.Anders Carlsson2009-12-052-0/+12
| | | | llvm-svn: 90674
* Simplify BuildVTT.Anders Carlsson2009-12-051-11/+10
| | | | llvm-svn: 90673
* Let the VTT builder pretend that getVtable returns a pointer to the vtable ↵Anders Carlsson2009-12-051-4/+4
| | | | | | and not to the vtable address point. llvm-svn: 90672
* Change getCtorVtable to not return the address point offset, but the global ↵Anders Carlsson2009-12-051-2/+10
| | | | | | variable. llvm-svn: 90671
* Simplify some code.Anders Carlsson2009-12-051-11/+11
| | | | llvm-svn: 90670
* Remove old DBG_LABEL code.Dan Gohman2009-12-052-9/+0
| | | | llvm-svn: 90669
* Remove the unused DisableLegalizeTypes option and related code.Dan Gohman2009-12-053-53/+48
| | | | llvm-svn: 90668
OpenPOWER on IntegriCloud