This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: more ia32 bugs (unrolling)
Richard Henderson writes:
> Any jump created during loop won't have its JUMP_LABEL set unless
> the immediately surrounding code takes care of that. This is
> showing up with the check_decr_loop code Bob wrote.
>
> I don't know why we didn't run into this before, as the bct code
> makes the same mistake several places. Nor do I know why this didn't
> show up in the Cygnus tree.
We ran into this a number of times several months ago when I submitted
some patches to fix some other cases where JUMP_LABEL was not set.
WRT the bct stuff, since it is only run on the second loop pass and
after the unroller, the missing JUMP_LABEL doesn't cause much grief.
Besides, the bct stuff is only used for a single target in limited
circumstances.
The patch I posted to this list several months ago, to generalise the
bct stuff for other targets, cleaned up the bct JUMP_LABEL handling.
However, like several other patches I posted a while back, I've yet to
hear a yay or a nay.
Michael.