Fix PR rtl-optimization/58295
Kyrill Tkachov
kyrylo.tkachov@arm.com
Tue Dec 10 12:25:00 GMT 2013
On 09/12/13 23:18, Eric Botcazou wrote:
> It's the pessimization introduced on the ARM (and other RISC targets) by the
> distribution of truncations in simplify_truncation. Further information at:
> http://gcc.gnu.org/ml/gcc/2013-12/msg00019.html
>
> The change started as a simple address reassociation trick for x32 and evolved
> into a general distribution of truncations for common operations. But the
> outcome doesn't really play nice with other transformations that help on RISC
> targets so I think that we should restrict it. I'm not sure whether it really
> helps on CISC targets either, but it's at least neutral and it's too late to
> backpedal anyway since further changes were installed in the x86 back-end.
>
> Hence the proposed minimal patch based on WORD_REGISTER_OPERATIONS. Not clear
> whether it's the best long term solution, but I think that we want to fix the
> regression on the 4.8 branch as well.
>
> Tested on x86-64/Linux, PowerPC/Linux and IA-64/Linux. As reported by Kyrill,
> this fixes gcc.target/arm/unsigned-extend-1.c on the ARM.
>
> Comments?
Hi Eric,
The patch does indeed fix unsigned-extend-1.c on arm and bootstraps succesfully
on arm-none-linux-gnueabihf.
Thanks for fixing this, that test failure has been spoiling my test runs for
quite a while now :)
Kyrill
>
>
> 2013-12-09 Eric Botcazou <ebotcazou@adacore.com>
>
> PR rtl-optimization/58295
> * simplify-rtx.c (simplify_truncation): Restrict the distribution for
> WORD_REGISTER_OPERATIONS targets.
>
>
More information about the Gcc-patches
mailing list