This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH]: Rewrite reassociation pass => Ada bootstrap failure on x86-linux


On Wed, 2006-01-04 at 11:24 -0700, Jeffrey A Law wrote:

> I do think we need some checking code to verify that we haven't
> mucked this up in the future -- it seems to me that after removal
> of annotations we could traverse the EH throw statement table and
> verify that all statements in the table have a NULL annotation
> field.  Any other value would indicate a statement in the table
> that was not in the IL.  Adding that checking code might even
> alert me to reasons why unconditionally removing the statements
> rom the EH table would be the right thing to do :-)
So I cobbled this bit of checking code together yesterday, it's
only a dozen or so lines of code.

So far the only new thing it's discovered is that we leave statements
in the EH table when we remove them via bsi_remove.

You might ask why we haven't had the same problem with such statements
causing us to later fail in GC.  The reason we haven't seen the GC
failure in these cases is bsi_remove calls set_bb_for_stmt to wipe
out the BB pointer in the statement's annotation.

Jeff





Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]