[PATCH, take 2] Fix PR target/28946

Roger Sayle roger@eyesopen.com
Thu Sep 7 17:01:00 GMT 2006


Hi Uros,

On Tue, 5 Sep 2006, Uros Bizjak wrote:
> 2006-09-06 Uros Bizjak <uros@kss-loka.si>
>
>         PR target/28946
>         * config/i386/i386.md ("*ashldi3_cconly_rex64", "*ashlsi3_cconly",
>         "*ashlhi3_cconly", "*ashlqi3_cconly", "*ashrdi3_one_bit_cconly_rex64",
>         "*ashrdi3_cconly_rex64", "*ashrsi3_one_bit_cconly", "*ashrsi3_cconly",
>         "*ashrhi3_one_bit_cconly", "*ashrhi3_cconly",
>         "*ashrqi3_one_bit_cconly", "*ashrqi3_cconly",
>         "*lshrdi3_cconly_one_bit_rex64", "*lshrdi3_cconly_rex64",
>         "*lshrsi3_one_bit_cconly", "*lshrsi3_cconly",
>         "*lshrhi3_one_bit_cconly", "*lshrhi3_cconly",
>         "*lshrqi2_one_bit_cconly", "*lshrqi2_cconly": New patterns to
>         implement only CC setting effects of shift instructions.
>
>        PR target/28946
>        * gcc.target/i386/pr28946.c: New test.

It's now been a few days and RTH hasn't voiced an objection.  Although
the patch is ugly, I think this is just a consequence of the way GCC's
combiner and RTL instruction selection work, and similar idioms are
commonly used on other platforms.  This is Ok for mainline (together
with HJ's patch that I'll approve next), and for the release branches
after a few days without problems.

Thanks for fixing this.

Roger
--



More information about the Gcc-patches mailing list