On February 22, 2019 5:03:46 PM GMT+01:00, Jakub Jelinek <ja...@redhat.com> wrote: >On Fri, Feb 22, 2019 at 08:47:09AM -0700, Jeff Law wrote: >> > 2019-02-22 Richard Biener <rguent...@suse.de> >> > >> > c/ >> > * Make-lang.in (cc1-checksum.c): Checksum only gtype-desc.o. >> > >> > cp/ >> > * Make-lang.in (cc1plus-checksum.c): Checksum only gtype-desc.o. >> > >> > objc/ >> > * Make-lang.in (cc1obj-checksum.c): Checksum only gtype-desc.o. >> > >> > objcp/ >> > * Make-lang.in (cc1objplus-checksum.c): Checksum only >gtype-desc.o. >> ISTM that gtype-desc effectively describes the structure of all the >GC data. >> >> Given we're summing the thin-archives, we're already missing things >like >> a change in static data. So I don't think your patch is a >degradation >> over the current state. I'm not 100% sure the current state is >correct >> though :-) > >Does it cover everything though? I believe gtype-desc.c only covers a >small >portion, the rest is in all the gtype-*.h and gt-*.h headers that are >included in the various object files. >So, either we need to checksum all the object files that include gt-*.h >or >gtype-*.h headers in addition to gtype-desc.o, or perhaps checksum >gtype.state ? Though, that state wouldn't cover changes in ABI etc.
Gtype-desc.o does not cover everything indeed. But the current state doesn't cover Gtype-desc.o... Slightly better would be to Re-include frontend objects. Not sure why we checksummed build flags for example. Isn't it enough to handle gty walking changes? Anyway, for suse I'm probably using the build-id thing. Richard. > Jakub