Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Remove RecordLayoutBuilder.h | Anders Carlsson | 2010-05-26 | 1 | -30/+0 |
| | | | | llvm-svn: 104687 | ||||
* | Move the ASTRecordLayoutBuilder class declaration into the .cpp file. | Anders Carlsson | 2010-05-26 | 1 | -153/+0 |
| | | | | llvm-svn: 104686 | ||||
* | Fix thinko and remove another unused function. | Anders Carlsson | 2010-05-26 | 1 | -2/+0 |
| | | | | llvm-svn: 104683 | ||||
* | No need to use the PrimaryBaseInfo struct in the builder. | Anders Carlsson | 2010-05-26 | 1 | -3/+9 |
| | | | | llvm-svn: 104681 | ||||
* | Fold the other Layout overload into its sole call site. | Anders Carlsson | 2010-05-26 | 1 | -1/+0 |
| | | | | llvm-svn: 104673 | ||||
* | Fold the ASTRecordLayoutBuilder::ComputeLayout overload that takes an ↵ | Anders Carlsson | 2010-05-26 | 1 | -5/+4 |
| | | | | | | ObjCInterfaceDecl pointer into its only callsite. llvm-svn: 104672 | ||||
* | Add an UpdateVBases parameter to UpdateEmptyClassOffsets. Not used just yet. | Anders Carlsson | 2010-05-10 | 1 | -1/+2 |
| | | | | llvm-svn: 103403 | ||||
* | More work on handling empty classes. | Anders Carlsson | 2010-05-10 | 1 | -1/+2 |
| | | | | llvm-svn: 103402 | ||||
* | Actually compute the empty subobject sizes. No functionality change yet. | Anders Carlsson | 2010-05-08 | 1 | -1/+5 |
| | | | | llvm-svn: 103363 | ||||
* | Add a SizeOfLargestEmptySubobject member to ASTRecordLayout. For C++ classes ↵ | Anders Carlsson | 2010-05-08 | 1 | -0/+5 |
| | | | | | | this will hold the largest empty subobject or 0 if the class doesn't have any empty subobjects. llvm-svn: 103359 | ||||
* | More work on wide bit-fields, WIP. | Anders Carlsson | 2010-04-16 | 1 | -0/+1 |
| | | | | llvm-svn: 101467 | ||||
* | Rename the ASTContext member 'Context'. | Anders Carlsson | 2010-04-16 | 1 | -1/+1 |
| | | | | llvm-svn: 101462 | ||||
* | Split adding the primary virtual base offsets out into a separate pass. This ↵ | Anders Carlsson | 2010-04-15 | 1 | -1/+4 |
| | | | | | | fixes a bug where we would lay out virtual bases in the wrong order. llvm-svn: 101373 | ||||
* | More record layout builder cleanup and simplification. | Anders Carlsson | 2010-03-11 | 1 | -3/+0 |
| | | | | llvm-svn: 98238 | ||||
* | Get rid of the PrimaryBase parameter from LayoutVirtualBases. | Anders Carlsson | 2010-03-11 | 1 | -2/+2 |
| | | | | llvm-svn: 98233 | ||||
* | Replace the class offset vectors in RecordLayoutBuilder with maps instead so ↵ | Anders Carlsson | 2010-03-11 | 1 | -7/+4 |
| | | | | | | we'll have faster lookup and so we can detect duplicates. llvm-svn: 98231 | ||||
* | More record layout builder cleanup. | Anders Carlsson | 2010-03-11 | 1 | -2/+5 |
| | | | | llvm-svn: 98229 | ||||
* | Remove the IndirectPrimary parameter in LayoutVirtualBases; it's already ↵ | Anders Carlsson | 2010-03-11 | 1 | -2/+1 |
| | | | | | | there as a member variable. llvm-svn: 98211 | ||||
* | More cleanup and simplification of the record layout builder. | Anders Carlsson | 2010-03-11 | 1 | -9/+10 |
| | | | | llvm-svn: 98208 | ||||
* | Get rid of the LayoutBaseNonVirtually; it was used to lay out a base either ↵ | Anders Carlsson | 2010-03-10 | 1 | -1/+0 |
| | | | | | | as a non-virtual base or a virtual base. llvm-svn: 98198 | ||||
* | More shuffling. | Anders Carlsson | 2010-03-10 | 1 | -4/+4 |
| | | | | llvm-svn: 98197 | ||||
* | Cleanups, no functionality change yet. | Anders Carlsson | 2010-03-10 | 1 | -3/+13 |
| | | | | llvm-svn: 98196 | ||||
* | Move key functions to a separate map. | Anders Carlsson | 2009-12-07 | 1 | -0/+1 |
| | | | | llvm-svn: 90745 | ||||
* | Add a new PrimaryBaseInfo struct that combines the record decl of a primary ↵ | Anders Carlsson | 2009-11-27 | 1 | -5/+5 |
| | | | | | | base with whether it's virtual or not. llvm-svn: 90018 | ||||
* | When laying out bitfields, make sure that the data size is always aligned to ↵ | Anders Carlsson | 2009-11-22 | 1 | -0/+9 |
| | | | | | | a byte. This fixes PR5580. llvm-svn: 89611 | ||||
* | Move bit-field layout out into a separate function. No functionality change. | Anders Carlsson | 2009-11-22 | 1 | -0/+1 |
| | | | | llvm-svn: 89604 | ||||
* | Refine layout for indirect virtual base classes. | Mike Stump | 2009-11-05 | 1 | -3/+6 |
| | | | | llvm-svn: 86116 | ||||
* | Update location of DataTypes.h to reflect move in LLVM with r85086. | Chandler Carruth | 2009-10-26 | 1 | -1/+1 |
| | | | | llvm-svn: 85087 | ||||
* | Rename NextOffset to DataSize. | Anders Carlsson | 2009-09-26 | 1 | -1/+8 |
| | | | | llvm-svn: 82832 | ||||
* | Who would have thought that empty classes were so tricky? Handle cases where ↵ | Anders Carlsson | 2009-09-25 | 1 | -0/+4 |
| | | | | | | an empty virtual base class needs to be moved aside because it conflicts with the first field. llvm-svn: 82746 | ||||
* | More work on empty classes. | Anders Carlsson | 2009-09-25 | 1 | -0/+4 |
| | | | | llvm-svn: 82736 | ||||
* | Scaffolding for supporting empty bases/fields. | Anders Carlsson | 2009-09-24 | 1 | -0/+21 |
| | | | | llvm-svn: 82678 | ||||
* | Fix speling error. | Anders Carlsson | 2009-09-22 | 1 | -1/+1 |
| | | | | llvm-svn: 82562 | ||||
* | Store the set of indirect primary bases directly in the record layout builder. | Anders Carlsson | 2009-09-22 | 1 | -9/+19 |
| | | | | llvm-svn: 82513 | ||||
* | Record layout builder cleanup. | Anders Carlsson | 2009-09-22 | 1 | -5/+5 |
| | | | | llvm-svn: 82502 | ||||
* | Remove tabs, and whitespace cleanups. | Mike Stump | 2009-09-09 | 1 | -9/+9 |
| | | | | llvm-svn: 81346 | ||||
* | Refine vbase offset calculations. WIP. | Mike Stump | 2009-08-16 | 1 | -1/+1 |
| | | | | llvm-svn: 79198 | ||||
* | Cleanups and fixups for calculating the virtual base offsets. WIP. | Mike Stump | 2009-08-16 | 1 | -0/+2 |
| | | | | llvm-svn: 79156 | ||||
* | Deconflate virtual base offsets from non-virtual base offsets. | Mike Stump | 2009-08-14 | 1 | -1/+4 |
| | | | | | | Deconflate a virtual base primary from a non-virtual base. llvm-svn: 78971 | ||||
* | Refine vtable layout for virtual bases and keep better track of | Mike Stump | 2009-08-13 | 1 | -2/+4 |
| | | | | | | primaries. WIP. llvm-svn: 78950 | ||||
* | Prep for vbase layout refinements. WIP. | Mike Stump | 2009-08-13 | 1 | -1/+2 |
| | | | | llvm-svn: 78882 | ||||
* | Refine primary vbase selection ordering. WIP. | Mike Stump | 2009-08-12 | 1 | -0/+3 |
| | | | | llvm-svn: 78844 | ||||
* | Take #pragma pack into account when laying out structs. Fixes ↵ | Anders Carlsson | 2009-08-08 | 1 | -1/+2 |
| | | | | | | rdar://problem/7095436. llvm-svn: 78490 | ||||
* | Add ability to generate vcall offsets for primary virtual base. | Mike Stump | 2009-08-07 | 1 | -1/+5 |
| | | | | llvm-svn: 78396 | ||||
* | Layout virtual bases. Work in progress. | Mike Stump | 2009-08-06 | 1 | -1/+3 |
| | | | | llvm-svn: 78308 | ||||
* | Calculate the primary base class better and use that when laying down | Mike Stump | 2009-08-05 | 1 | -0/+8 |
| | | | | | | the vtable. Still a work in progress. llvm-svn: 78252 | ||||
* | Fix type to be consistent with the rest of the code. | Mike Stump | 2009-07-30 | 1 | -1/+1 |
| | | | | llvm-svn: 77560 | ||||
* | Add ability to layout the vtable pointer in trivial cases. I noticed | Mike Stump | 2009-07-30 | 1 | -0/+1 |
| | | | | | | | | that we would silently do bad things with virtual bases in the layout code, so, we just turn them off. When people do better things with them, we can turn them back on. llvm-svn: 77556 | ||||
* | Add a field for C++ specific data to ASTRecordLayout. Use it to store the ↵ | Anders Carlsson | 2009-07-28 | 1 | -1/+6 |
| | | | | | | non-virtual size and alignment + base offsets. llvm-svn: 77352 | ||||
* | Add include needed for MSVC. | Daniel Dunbar | 2009-07-19 | 1 | -0/+1 |
| | | | | llvm-svn: 76359 |