> which shows how the global objects initialization keeps things live.
> Early optimization turns it into
>
> (static initializers for t.C) ()
> {
> <bb 2>:
> NotUsedObject._vptr.CObject = &MEM[(void *)&_ZTV7CObject + 16B];
> return;
>
> }
>
> but we don't have any pass removing stores to globals never read. IPA
> reference computes this
> in some way but doesn't get to export this in a reasonable way - its
> transform stage could DSE
> those though.
We have write only variable detection but
> NotUsedObject/4 (CObject NotUsedObject) @0x7f70d41fe580
> Type: variable definition analyzed
> Visibility: public
> References:
> Referring: _Z41__static_initialization_and_destruction_0ii/9 (addr)
> Availability: not-ready
> Varpool flags:
it stops on fact believing that address of NotUsedObject is taken. Why it is
not considered to be load?
Honza