Real changes for construction vtables (ignore prior mail)

Coleen Phillimore coleen at zko.dec.com
Mon Mar 20 15:23:05 UTC 2000


Jim Dehnert wrote:
> 
> I've been working through this proposal, and I think I've noticed an
> implication that is important.  If the construction vtable groups are
> not replicas (in layout, not value) of the corresponding complete object
> vtable groups, eliding the "boring" base class vtables, this affects
> more than just constructors.  It affects any vtable references in any
> functions which might be called from constructors, in that they may no
> longer assume fixed order and offsets of the secondary vtables, and
> therefore may not use the optimization of using one vtable pointer to
> access all of them -- instead, they must always load the vtable pointer
> for the particular subobject whose vtable they are referencing.
> 
> Am I interpreting this correctly?

Yes, that is correct.  I thought this optimization was invalidated by
something else already - sharing primary virtual tables, wasn't it?  Because
primary vtables may be larger than expected by base classes in more derived
classes.

But if it wasn't, this would be a tradeoff.

Coleen

> 
> Jim
> 
> -           Jim Dehnert         dehnert at sgi.com
>                                 (650)933-4272

-- 
-----------------------------------------------------------------------
Coleen Phillimore                  | mailto:coleen at zko.dec.com
Compaq Computer Corp.   Nashua, NH | COMPAQ C++ Compiler Development
-----------------------------------------------------------------------




More information about the cxx-abi-dev mailing list