| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | emit signed integer subtractions as 'sub nsw', patch by | Chris Lattner | 2010-03-29 | 1 | -0/+5 |
| | | | | | | | Anton Yartsev! llvm-svn: 99817 | ||||
| * | Another vtable layout fix, making us match gcc better. | Anders Carlsson | 2010-03-29 | 1 | -2/+9 |
| | | | | | llvm-svn: 99812 | ||||
| * | Handle pure virtual member functions. | Anders Carlsson | 2010-03-29 | 1 | -16/+33 |
| | | | | | llvm-svn: 99807 | ||||
| * | More vtable work - it's not possible to use the new vtable code for ↵ | Anders Carlsson | 2010-03-29 | 2 | -22/+78 |
| | | | | | | | 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 | ||||
| * | Only add thunks for the most derived class. This fixes some link errors I ↵ | Anders Carlsson | 2010-03-29 | 1 | -2/+3 |
| | | | | | | | was seeing in files generated by the vtable tester utility. llvm-svn: 99801 | ||||
| * | Flip the switch to always get vtables from the VTT when necessary, I've ↵ | Anders Carlsson | 2010-03-29 | 1 | -7/+3 |
| | | | | | | | verified that clang bootstraps with this. llvm-svn: 99800 | ||||
| * | Use the newly added function in the VTT builder. | Anders Carlsson | 2010-03-29 | 1 | -3/+2 |
| | | | | | llvm-svn: 99799 | ||||
| * | Cleanup, no functionality change. | Anders Carlsson | 2010-03-29 | 3 | -6/+18 |
| | | | | | llvm-svn: 99798 | ||||
| * | Add the thunks needed by this vtable. | Anders Carlsson | 2010-03-29 | 1 | -0/+11 |
| | | | | | llvm-svn: 99793 | ||||
| * | Make sure to sort the vtable thunks by their vtable index :) With this we ↵ | Anders Carlsson | 2010-03-29 | 1 | -0/+3 |
| | | | | | | | now pass the test from http://www.codesourcery.com/public/cxx-abi/abi-examples.html#vtable-ctor successfully. llvm-svn: 99792 | ||||
| * | Fix another thinko, so that flags don't depend on previous bases. | Anders Carlsson | 2010-03-29 | 1 | -5/+7 |
| | | | | | llvm-svn: 99791 | ||||
| * | When generating base ctors/dtors, we need to lookup virtual bases using the ↵ | Anders Carlsson | 2010-03-29 | 1 | -4/+15 |
| | | | | | | | vtable. llvm-svn: 99790 | ||||
| * | Fix thinko. | Anders Carlsson | 2010-03-29 | 1 | -1/+1 |
| | | | | | llvm-svn: 99788 | ||||
| * | Use construction vtables when needed. This is currently guarded by ↵ | Anders Carlsson | 2010-03-29 | 1 | -5/+29 |
| | | | | | | | -fdump-vtable-layouts since it doesn't work 100% yet :) llvm-svn: 99787 | ||||
| * | Two bug fixes, we weren't updating the thunk index when creating the vtable ↵ | Anders Carlsson | 2010-03-29 | 2 | -0/+9 |
| | | | | | | | initializer and we weren't storing the secondary virtual pointer indices. llvm-svn: 99786 | ||||
| * | Reapply r99775 with a fix for a silly bug - we were setting the vtable ↵ | Anders Carlsson | 2010-03-28 | 2 | -51/+64 |
| | | | | | | | pointer for all bases, even those without a vtable pointer :) llvm-svn: 99777 | ||||
| * | Looks like I broke self-host again :(. | Anders Carlsson | 2010-03-28 | 2 | -59/+50 |
| | | | | | llvm-svn: 99776 | ||||
| * | More improvements to setting the vtable pointer. We now no longer set the ↵ | Anders Carlsson | 2010-03-28 | 2 | -50/+59 |
| | | | | | | | 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 | ||||
| * | Factor vtable pointer setting code out into a separate function. | Anders Carlsson | 2010-03-28 | 2 | -22/+45 |
| | | | | | llvm-svn: 99773 | ||||
| * | Give thunks the same linkage as their original methods. | Anders Carlsson | 2010-03-27 | 1 | -8/+1 |
| | | | | | llvm-svn: 99729 | ||||
| * | When given the magic class __cxxabiv1::__fundamental_type_info, produce | Rafael Espindola | 2010-03-27 | 3 | -6/+72 |
| | | | | | | | | | the typeinfo for the fundamental types. Fixes PR6685. llvm-svn: 99701 | ||||
| * | When mapping restrict to noalias, look for 'restrict' on the parameter variable | John McCall | 2010-03-27 | 1 | -2/+6 |
| | | | | | | | | instead of the canonical parameter type (which has correctly dropped all such direct qualifiers). Fixes PR6695. llvm-svn: 99688 | ||||
| * | Implement new mangling for vectors. | Nick Lewycky | 2010-03-26 | 1 | -2/+7 |
| | | | | | llvm-svn: 99616 | ||||
| * | Revert r99612 and see if it fixes self-host. | Anders Carlsson | 2010-03-26 | 1 | -7/+0 |
| | | | | | llvm-svn: 99614 | ||||
| * | Don't initialize virtual pointers for primary bases, they've already been ↵ | Anders Carlsson | 2010-03-26 | 1 | -0/+7 |
| | | | | | | | initialized. llvm-svn: 99612 | ||||
| * | Simplify InitializeVtablePtrs in preparation of making it work with ↵ | Anders Carlsson | 2010-03-26 | 2 | -57/+59 |
| | | | | | | | construction vtables. llvm-svn: 99609 | ||||
| * | Add and implement CodeGenVTables::getSecondaryVirtualPointerIndex (not used ↵ | Anders Carlsson | 2010-03-26 | 2 | -11/+68 |
| | | | | | | | yet). llvm-svn: 99608 | ||||
| * | Use the new vtable layout code for construction vtables. | Anders Carlsson | 2010-03-26 | 1 | -10/+0 |
| | | | | | llvm-svn: 99606 | ||||
| * | More cleanup. | Anders Carlsson | 2010-03-26 | 1 | -178/+47 |
| | | | | | llvm-svn: 99605 | ||||
| * | Way more VTT builder cleanup. | Anders Carlsson | 2010-03-26 | 3 | -65/+206 |
| | | | | | llvm-svn: 99604 | ||||
| * | More VTT builder cleanup. | Anders Carlsson | 2010-03-26 | 1 | -22/+31 |
| | | | | | llvm-svn: 99588 | ||||
| * | More VTT cleanup. | Anders Carlsson | 2010-03-26 | 1 | -22/+43 |
| | | | | | llvm-svn: 99586 | ||||
| * | Start cleaning up the VTT builder to make it work more like the VTable builder. | Anders Carlsson | 2010-03-26 | 2 | -52/+67 |
| | | | | | llvm-svn: 99581 | ||||
| * | Remove some VTT builder arguments that were always zero. | Anders Carlsson | 2010-03-26 | 1 | -20/+13 |
| | | | | | llvm-svn: 99576 | ||||
| * | Fix a code gen. bug involving generation of getter method | Fariborz Jahanian | 2010-03-25 | 1 | -1/+6 |
| | | | | | | | from properties of _Complex type. (radar 7351147). llvm-svn: 99558 | ||||
| * | Don't add address points for virtual primary bases that aren't primary bases ↵ | Anders Carlsson | 2010-03-25 | 1 | -13/+25 |
| | | | | | | | in the complete class. llvm-svn: 99555 | ||||
| * | Remove support for nand atomic builtins. They are inconsistently implemented in | Daniel Dunbar | 2010-03-25 | 1 | -17/+0 |
| | | | | | | | | gcc, and the common expectation seems to be that they are unused. If and when someone cares we can add them back with well documented demantics. llvm-svn: 99522 | ||||
| * | Use the new vtable layout code for construction vtables. | Anders Carlsson | 2010-03-25 | 1 | -3/+95 |
| | | | | | llvm-svn: 99516 | ||||
| * | When -fdump-vtable-layouts is specified, construction vtable initializers ↵ | Anders Carlsson | 2010-03-25 | 2 | -18/+145 |
| | | | | | | | will be generated using the new vtable layout code. (The code is still not completely in place but this is a huge step forward). llvm-svn: 99508 | ||||
| * | More address point map shuffling. | Anders Carlsson | 2010-03-25 | 3 | -10/+36 |
| | | | | | llvm-svn: 99462 | ||||
| * | Shuffle some code around; this will make it easier to use the new layout ↵ | Anders Carlsson | 2010-03-25 | 3 | -57/+57 |
| | | | | | | | code for address points. llvm-svn: 99461 | ||||
| * | When returning from a function that has a reference return type, use | Douglas Gregor | 2010-03-24 | 1 | -1/+2 |
| | | | | | | | | | EmitReferenceBindingToExpr() rather than assuming we have an lvalue. This is just the lowest hanging fruit for PR6024, which still requires a bit of work. llvm-svn: 99447 | ||||
| * | Change two class forward declarations to struct forward declarations, ↵ | Douglas Gregor | 2010-03-24 | 1 | -2/+2 |
| | | | | | | | silencing a Clang warning llvm-svn: 99405 | ||||
| * | Code gen for multi-dimensional dynamic allocations. | Fariborz Jahanian | 2010-03-24 | 1 | -6/+37 |
| | | | | | | | Fixes PR6641. llvm-svn: 99404 | ||||
| * | More vtable improvements. We now compute and keep track of all vtable ↵ | Anders Carlsson | 2010-03-24 | 2 | -28/+97 |
| | | | | | | | related information which avoids computing the same vtable layout over and over. llvm-svn: 99403 | ||||
| * | Use getNamedGlobal instead of getGlobalVariable. (Fixes self-host). | Anders Carlsson | 2010-03-24 | 4 | -6/+6 |
| | | | | | llvm-svn: 99385 | ||||
| * | More vtable work; preparations for moving over to the new vtable layout code ↵ | Anders Carlsson | 2010-03-24 | 5 | -20/+48 |
| | | | | | | | (finally). llvm-svn: 99381 | ||||
| * | Remove old thunks code. | Anders Carlsson | 2010-03-24 | 5 | -339/+0 |
| | | | | | llvm-svn: 99374 | ||||
| * | Flip the switch and use the new vtable layout code for thunks by default. ↵ | Anders Carlsson | 2010-03-24 | 1 | -7/+0 |
| | | | | | | | Add a thunks.cpp test. llvm-svn: 99367 | ||||
| * | Add CodeGenFunction::GenerateThunk and implement it. | Anders Carlsson | 2010-03-24 | 2 | -1/+179 |
| | | | | | llvm-svn: 99365 | ||||

