https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121432

Sam James <sjames at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |sjames at gcc dot gnu.org

--- Comment #9 from Sam James <sjames at gcc dot gnu.org> ---
(In reply to Thomas Petazzoni from comment #8)
> Thanks for the amazingly quick feedback!
> 
> (In reply to Sam James from comment #3)
> > * Compressed binaries of the kernel before and after the commit
> 
> This is definitely doable.
> 
> > * Take the build tree of the kernel with gcc-good, and gcc-bad (where it's
> > one commit before and then the bad commit) and copy objects from the gcc-bad
> > tree into the gcc-commit tree, re-running make repeatedly, until you find
> > which the bad object is (if no LTO is involved, it has to be one object)
> 
> But there are 915 object files in this kernel. This is going to take ages.
> Do you have some suggestions?

Use cmp (or diff) to get a list of differing objects, then you can bisect that
list: copy the top half from bad -> good, does it work? if it works still,
throw away that top half, and copy in the bottom half as a sanity check (should
fail now). repeatedly halve & copy the list. It doesn't take long then as
you're binary searching

Reply via email to