- Mar 30, 2010
-
-
Anders Carlsson authored
llvm-svn: 99863
-
Anders Carlsson authored
Flip the switch and use the new vtable layout code for everything. I've verified that this passes a self-host but I'll let the bots self host as well before removing the now dead code. llvm-svn: 99861
-
Anders Carlsson authored
llvm-svn: 99860
-
Ted Kremenek authored
This reduces '-c -g' time on one file in 403.gcc by 12%. llvm-svn: 99857
-
Douglas Gregor authored
storage for that partial diagnostic via the ASTContext's BumpPtrAllocator rather than using up slots in the ASTContext's cache. Now that we do this, we don't have to worry about destroying dependent diagnostics when destroying a DependentStoredDeclsMap. llvm-svn: 99854
-
Douglas Gregor authored
cache of PartialDiagnostic::Storage objects into an allocator within the ASTContext. This eliminates a significant amount of malloc traffic, for a 10% performance improvement in -fsyntax-only wall-clock time with 403.gcc's combine.c. Also, eliminate the RequireNonAbstractType hack I put in earlier, which was but a symptom of this larger problem. Fixes <rdar://problem/7806091>. llvm-svn: 99849
-
- Mar 29, 2010
-
-
Gabor Greif authored
llvm-svn: 99843
-
Douglas Gregor authored
a 2.47% speedup in 403.gcc. llvm-svn: 99830
-
Anders Carlsson authored
When collecting virtual bases it's very important to use the canonical type of the base class. Otherwise, we might add the same virtual base class twice if the virtual base is an instantiated template. Fixes PR6251. llvm-svn: 99829
-
Ted Kremenek authored
llvm-svn: 99828
-
Ted Kremenek authored
on one .i file from 403.gcc by 0.5%. llvm-svn: 99823
-
Chris Lattner authored
PR6661, patch by Ori Avtalion! llvm-svn: 99821
-
Chris Lattner authored
Anton Yartsev! llvm-svn: 99817
-
Anders Carlsson authored
llvm-svn: 99812
-
Douglas Gregor authored
end of a struct/class/union in C++, from Justin Bogner! llvm-svn: 99811
-
Anders Carlsson authored
llvm-svn: 99807
-
Anders Carlsson authored
Fix a nasty bug in the virtual base computation which would lead to us initializing virtual bases in the wrong order. llvm-svn: 99806
-
Rafael Espindola authored
This patch moves some methods from QualType to Type and changes the users to use -> instead of . llvm-svn: 99805
-
Anders Carlsson authored
More vtable work - it's not possible to use the new vtable code for everything by setting a flag inside CGVtable.cpp. My plan is to run some tests and bootstrap and once that's done flip the bit. llvm-svn: 99804
-
Anders Carlsson authored
llvm-svn: 99803
-
Anders Carlsson authored
Sprinkle some sed dust over check-ztt to make it work with newer clang asm output. (I am not a sed expert so this might be terribly inefficient :) llvm-svn: 99802
-
Anders Carlsson authored
Only add thunks for the most derived class. This fixes some link errors I was seeing in files generated by the vtable tester utility. llvm-svn: 99801
-
Anders Carlsson authored
Flip the switch to always get vtables from the VTT when necessary, I've verified that clang bootstraps with this. llvm-svn: 99800
-
Anders Carlsson authored
llvm-svn: 99799
-
Anders Carlsson authored
llvm-svn: 99798
-
Anders Carlsson authored
llvm-svn: 99793
-
Anders Carlsson authored
Make sure to sort the vtable thunks by their vtable index :) With this we now pass the test from http://www.codesourcery.com/public/cxx-abi/abi-examples.html#vtable-ctor successfully. llvm-svn: 99792
-
Anders Carlsson authored
llvm-svn: 99791
-
Anders Carlsson authored
llvm-svn: 99790
-
Anders Carlsson authored
llvm-svn: 99788
-
Anders Carlsson authored
Use construction vtables when needed. This is currently guarded by -fdump-vtable-layouts since it doesn't work 100% yet :) llvm-svn: 99787
-
Anders Carlsson authored
Two bug fixes, we weren't updating the thunk index when creating the vtable initializer and we weren't storing the secondary virtual pointer indices. llvm-svn: 99786
-
Rafael Espindola authored
Make default arguments to getFunctionNoProtoType an all or nothing option (as they already are in practise). llvm-svn: 99785
-
Rafael Espindola authored
llvm-svn: 99783
-
- Mar 28, 2010
-
-
Anders Carlsson authored
Reapply r99775 with a fix for a silly bug - we were setting the vtable pointer for all bases, even those without a vtable pointer :) llvm-svn: 99777
-
Anders Carlsson authored
llvm-svn: 99776
-
Anders Carlsson authored
More improvements to setting the vtable pointer. We now no longer set the vtable pointer for non-virtual primary bases. We also do a pre-order traversal of the class hierarchy; this is necessary in order to get the right vbase offset offsets in base ctors/dtors. llvm-svn: 99775
-
Anders Carlsson authored
llvm-svn: 99773
-
Douglas Gregor authored
check deduced non-type template arguments and template template arguments against the template parameters for which they were deduced, performing conversions as appropriate so that deduced template arguments get the same treatment as explicitly-specified template arguments. This is the bulk of PR6723. Also keep track of whether deduction of a non-type template argument came from an array bound (vs. anywhere else). With this information, we enforce C++ [temp.deduct.type]p17, which requires exact type matches when deduction deduces a non-type template argument from something that is not an array bound. Finally, when in a SFINAE context, translate the "zero sized arrays are an extension" extension diagnostic into a hard error (for better standard conformance), which was a minor part of PR6723. llvm-svn: 99734
-
- Mar 27, 2010
-
-
Benjamin Kramer authored
llvm-svn: 99731
-