Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Store the address points for constructor vtables directly in the VTT ↵ | Anders Carlsson | 2010-01-14 | 1 | -6/+25 |
| | | | | | | builder, because that's the only time they're needed. llvm-svn: 93412 | ||||
* | Add a DenseMapInfo specialization for BaseSubobject. | Anders Carlsson | 2010-01-14 | 1 | -2/+37 |
| | | | | llvm-svn: 93399 | ||||
* | Add a BaseSubobject class to uniquely identify a base class subobject. Not ↵ | Anders Carlsson | 2010-01-13 | 1 | -0/+25 |
| | | | | | | yet used. llvm-svn: 93345 | ||||
* | Move address points to CGVtableInfo, no functionality change. | Anders Carlsson | 2010-01-02 | 1 | -0/+5 |
| | | | | llvm-svn: 92420 | ||||
* | Correctly pass VTT parameters to constructors and destructors. The VTTs ↵ | Anders Carlsson | 2010-01-02 | 1 | -0/+14 |
| | | | | | | aren't yet used in the ctors/dtors, but that will follow. llvm-svn: 92409 | ||||
* | A bunch more thunk fixes from misc testing. | Eli Friedman | 2009-12-07 | 1 | -5/+9 |
| | | | | | | (Yes, I do intend to commit some tests for this.) llvm-svn: 90818 | ||||
* | Work-in-progess rewrite of thunks: move thunk generation outside of vtable | Eli Friedman | 2009-12-06 | 1 | -0/+8 |
| | | | | | | | generation, and make sure we generate thunks when the function is defined rather than when the vtable is defined. llvm-svn: 90722 | ||||
* | Set the correct linkage for VTTs as well. | Anders Carlsson | 2009-12-06 | 1 | -1/+4 |
| | | | | llvm-svn: 90689 | ||||
* | More linkage improvements. | Anders Carlsson | 2009-12-06 | 1 | -4/+6 |
| | | | | llvm-svn: 90687 | ||||
* | Pass the desired vtable linkage to GenerateVtable directly. Only call ↵ | Anders Carlsson | 2009-12-06 | 1 | -7/+6 |
| | | | | | | MaybeMarkVirtualImplicitMembersReferenced for non-inline functions. llvm-svn: 90686 | ||||
* | Make GenerateVtable a private member function of CGVtableInfo. | Anders Carlsson | 2009-12-06 | 1 | -6/+12 |
| | | | | llvm-svn: 90684 | ||||
* | Add a function for getting the vtable address point of a class. | Anders Carlsson | 2009-12-05 | 1 | -0/+5 |
| | | | | llvm-svn: 90674 | ||||
* | Have ASTRecordLayout keep track of the key function, in preparation of ↵ | Anders Carlsson | 2009-11-30 | 1 | -4/+8 |
| | | | | | | fixing a synthetic ctor/dtor bug. llvm-svn: 90168 | ||||
* | Don't build the entire vtable when all we want is the index of a virtual method. | Anders Carlsson | 2009-11-27 | 1 | -1/+12 |
| | | | | llvm-svn: 90017 | ||||
* | Remove dead forward declaration. Fix struct/class mismatch. Remove trailing ↵ | Benjamin Kramer | 2009-11-26 | 1 | -19/+20 |
| | | | | | | whitespace. llvm-svn: 89947 | ||||
* | Add a CovariantThunkAdjustment struct that represents the adjustments needed ↵ | Anders Carlsson | 2009-11-26 | 1 | -0/+13 |
| | | | | | | for a covariant thunk. llvm-svn: 89933 | ||||
* | Move the mangler into the CodeGen namespace. Change mangleThunk to take a ↵ | Anders Carlsson | 2009-11-26 | 1 | -0/+4 |
| | | | | | | ThunkAdjustment. llvm-svn: 89930 | ||||
* | Add a ThunkAdjustment struct which holds a non-virtual and a virtual ↵ | Anders Carlsson | 2009-11-26 | 1 | -0/+21 |
| | | | | | | adjustment offset. Start using it. General cleanup in Mangle.cpp. llvm-svn: 89925 | ||||
* | Improve instantiation control for rtti data and allow key functions to | Mike Stump | 2009-11-19 | 1 | -0/+4 |
| | | | | | | instantiate a class. WIP. llvm-svn: 89289 | ||||
* | Instead of storing CXXMethodDecls in the vtable builder, store GlobalDecls ↵ | Anders Carlsson | 2009-11-13 | 1 | -2/+3 |
| | | | | | | | | so we can represent both the complete and deleting destructors. Also, when encountering a destructor decl, emit entries for both the complete and deleting destructors. Mike, please review. With this change, FileCheck builds and runs the clang test suite without failures! llvm-svn: 88663 | ||||
* | Push ctor vtable construction down further. WIP. | Mike Stump | 2009-11-11 | 1 | -2/+3 |
| | | | | llvm-svn: 86878 | ||||
* | More VTT work. We now track offsets and use the ctor vtable builder | Mike Stump | 2009-11-11 | 1 | -1/+2 |
| | | | | | | interface. WIP. llvm-svn: 86793 | ||||
* | Add vtable caching to prevent multiple vtables for the same class from | Mike Stump | 2009-11-10 | 1 | -0/+4 |
| | | | | | | | | being generated. Add the most derived vtable pointer to the VTT. llvm-svn: 86671 | ||||
* | Refine handling for non-virtual bases in return value adjustments for | Mike Stump | 2009-10-13 | 1 | -3/+5 |
| | | | | | | covariant thunks. WIP. llvm-svn: 84046 | ||||
* | Move the vtable builder to CGVtable.cpp, general cleanup. | Anders Carlsson | 2009-10-11 | 1 | -0/+59 |
llvm-svn: 83798 |