Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Perform zero-initialization of virtual base classes when emitting | John McCall | 2011-02-15 | 1 | -21/+50 |
| | | | | | | | | | | | | a zero constant for a complete class. rdar://problem/8424975 To make this happen, track the field indexes for virtual bases in the complete object. I'm curious whether we might be better off making CGRecordLayoutBuilder *much* more reliant on ASTRecordLayout; we're currently duplicating an awful lot of the ABI layout logic. llvm-svn: 125555 | ||||
* | A CGRecordLayout object persists. Since its contained types may | John McCall | 2010-11-30 | 1 | -4/+5 |
| | | | | | | | refer to opaque types, they must be held via PATypeHolders. I'm not sure why this hasn't blown up before. llvm-svn: 120491 | ||||
* | CGRecordLayout types are always struct types. | Anders Carlsson | 2010-11-24 | 1 | -7/+7 |
| | | | | llvm-svn: 120106 | ||||
* | Rename BaseLLVMType to NonVirtualBaseLLVMType. | Anders Carlsson | 2010-11-21 | 1 | -5/+6 |
| | | | | llvm-svn: 119956 | ||||
* | Introduce the concept of a non-virtual base type to CGRecordLayoutBuilder as ↵ | Anders Carlsson | 2010-11-09 | 1 | -3/+13 |
| | | | | | | a first step towards fixing PR6995. llvm-svn: 118491 | ||||
* | IRgen: Move CGBitFieldInfo strategy computation helpers to static member | Daniel Dunbar | 2010-09-02 | 1 | -0/+15 |
| | | | | | | functions. llvm-svn: 112913 | ||||
* | Go back to asking CodeGenTypes whether a type is zero-initializable. | John McCall | 2010-08-22 | 1 | -6/+7 |
| | | | | | | | | | Make CGT defer to the ABI on all member pointer types. This requires giving CGT a handle to the ABI. It's way easier to make that work if we avoid lazily creating the ABI. Make it so. llvm-svn: 111786 | ||||
* | Keep track of the LLVM field numbers for non-virtual bases. | Anders Carlsson | 2010-05-18 | 1 | -0/+9 |
| | | | | llvm-svn: 104013 | ||||
* | Fix comments. | Daniel Dunbar | 2010-04-27 | 1 | -3/+3 |
| | | | | llvm-svn: 102429 | ||||
* | IRgen: Change CGBitFieldInfo to take the AccessInfo as constructor ↵ | Daniel Dunbar | 2010-04-15 | 1 | -10/+27 |
| | | | | | | | | arguments, it is now an immutable object. Also, add some checking of various invariants that should hold on the CGBitFieldInfo access. llvm-svn: 101345 | ||||
* | IRgen: Eliminate now unused fields from CGBitFieldInfo. | Daniel Dunbar | 2010-04-15 | 1 | -12/+9 |
| | | | | llvm-svn: 101344 | ||||
* | IRgen: Tweak CGBitFieldInfo doxyments & add an accessor. | Daniel Dunbar | 2010-04-14 | 1 | -0/+10 |
| | | | | llvm-svn: 101221 | ||||
* | IRgen: Enhance CGBitFieldInfo with enough information to fully describe the ↵ | Daniel Dunbar | 2010-04-13 | 1 | -1/+83 |
| | | | | | | | | | | "policy" with which a bit-field should be accessed. - For now, these policies are computed to match the current IRgen strategy, although the new information isn't being used yet (except in -fdump-record-layouts). - Design comments appreciated. llvm-svn: 101178 | ||||
* | IRgen: Add CGRecordLayout::dump, and dump (irgen) record layouts as part of ↵ | Daniel Dunbar | 2010-04-12 | 1 | -0/+9 |
| | | | | | | -fdump-record-layouts. llvm-svn: 101051 | ||||
* | IRgen: Move the bit-field access type into CGBitFieldInfo, and change ↵ | Daniel Dunbar | 2010-04-08 | 1 | -3/+6 |
| | | | | | | bit-field LValues to just store the base address of object containing the bit-field. llvm-svn: 100745 | ||||
* | IRgen: Move BitFieldIsSigned bit into CGBitFieldInfo. | Daniel Dunbar | 2010-04-06 | 1 | -2/+4 |
| | | | | llvm-svn: 100513 | ||||
* | IRgen: Lift BitFieldInfo to CGBitFieldInfo at namespace level. | Daniel Dunbar | 2010-04-05 | 1 | -15/+13 |
| | | | | llvm-svn: 100433 | ||||
* | IRGen: Move the auxiliary data structures tracking AST -> LLVM mappings out ↵ | Daniel Dunbar | 2010-03-31 | 1 | -4/+47 |
| | | | | | | | | of CodeGenTypes, to per-record CGRecordLayout structures. - I did a cursory check that this was perf neutral, FWIW. llvm-svn: 99978 | ||||
* | IRGen: Hide CGRecordLayoutBuilder class, because I can. | Daniel Dunbar | 2010-03-31 | 1 | -0/+4 |
| | | | | llvm-svn: 99967 | ||||
* | IRgen: Move CGRecordLayout to its own happy little file. | Daniel Dunbar | 2010-03-30 | 1 | -0/+48 |
llvm-svn: 99945 |