[cfe-commits] [PATCH] Refactoring of vtable and VTT builders

Peter Collingbourne pcollingbourne at pathscale.com
Fri Jun 17 06:25:20 PDT 2011


On Tue, Jun 14, 2011 at 03:02:05AM +0100, Peter Collingbourne wrote:
> On Mon, Jun 13, 2011 at 03:19:11PM -0700, Anders Carlsson wrote:
> > 
> > On Jun 13, 2011, at 12:41 PM, Peter Collingbourne wrote:
> > 
> > > Hi,
> > > 
> > > This patch refactors the vtable and VTT builders to provide a
> > > backend-neutral interface to the builders in the AST library, which
> > > CodeGen uses to build vtables and VTTs in LLVM.  No functionality
> > > change intended.
> > 
> > While I'm not crazy about this idea, other people (Doug) are in favor of it, so I'm reluctantly fine with it :)
> > 
> > That being said, I don't think this patch should be committed in its current state. This should be done in incremental steps,
> > there's no reason to move both the VTT builder and VTable builder in a single commit.
> 
> OK, then.  Following your and Eli's suggestions I will try to
> break this patch up into the following steps:
> 
> 1) Move GlobalDecl to AST
> 2) Make VTTBuilder independent of CodeGen (broken into sub-steps)
> 3) Move VTTBuilder to AST
> 4) Make VTableBuilder independent of CodeGen (broken into sub-steps)
> 5) Move VTableBuilder to AST

I have attached the remaining patches covering 2-5.  Reviews
appreciated.

Thanks,
-- 
Peter
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Make-the-VTTBuilder-class-independent-of-LLVM-core.patch
Type: text/x-diff
Size: 16235 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Remove-CodeGenModule-field-from-VTTBuilder.patch
Type: text/x-diff
Size: 4371 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment-0001.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-Move-BaseSubobject-class-to-AST.patch
Type: text/x-diff
Size: 6220 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment-0002.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-Move-VTT-builder-to-AST.patch
Type: text/x-diff
Size: 43255 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment-0003.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0005-Create-a-VTableContext-class-and-start-moving-CodeGe.patch
Type: text/x-diff
Size: 17650 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment-0004.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0006-Remove-CodeGenVTables-ComputeVTableRelatedInformatio.patch
Type: text/x-diff
Size: 8320 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment-0005.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0007-Move-vtable-component-accessors-to-VTableContext.patch
Type: text/x-diff
Size: 16188 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment-0006.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0008-Move-VTableComponent-to-header-file.patch
Type: text/x-diff
Size: 12403 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment-0007.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0009-Move-all-vtable-layout-data-into-new-VTableLayout-cl.patch
Type: text/x-diff
Size: 18828 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment-0008.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0010-Implement-VTableContext-createConstructionVTableLayo.patch
Type: text/x-diff
Size: 3685 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment-0009.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0011-Move-vtable-dumper-call-to-VTableBuilder-ctor.patch
Type: text/x-diff
Size: 25132 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment-0010.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0012-Have-CodeGenVTables-GenerateConstructionVTable-use-V.patch
Type: text/x-diff
Size: 3443 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment-0011.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0013-Move-VTable-builder-to-AST.patch
Type: text/x-diff
Size: 140882 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110617/ea122ccb/attachment-0012.patch>


More information about the cfe-commits mailing list