On Sun, May 08, 2011 at 09:39:09PM +0200, Uros Bizjak wrote:
> Hello!
> 
> Attached patch fixes changed register allocation where "enabled"
> attribute is used. The core of the problem was with IRA, where IRA
> does not look at "enabled" attribute when scanning through
> alternatives string to perform various tasks (including register
> allocation preferences).
> 
> Attached patch teaches IRA to handle "enabled" attribute. In effect,
> the patch skips current alternative in the same way as when "#"
> character is found.
> 
> 2011-05-08  Uros Bizjak  <ubiz...@gmail.com>
> 
>       PR rtl-optimization/48927
>       * ira-conflicts.c (commutative_constraint_p): Use
>       recog_data.alternative_enabled_p to disable alternatives where
>       "enabled" attribute is false.
>       (get_dup_num): Ditto.
>       * ira-lives.c (single_reg_class): Ditto.
>       (ira_implicitly_set_insn_hard_regs): Ditto.
> 
> Patch was bootstrapped and regression tested on x86_64-pc-linux-gnu
> {,-m32} with and without -with-fpmath=avx. Also, the patch fixes both
> i386 scan-asm failures when the patch to merge *vec_concatv4si_1_avx
> and *vec_concatv4si_1 patterns is applied (please see the PR [1] for
> details).
> 
> OK for mainline?

I've bootstrapped and regtested the patch on s390x. No regressions!

Bye,

-Andreas-

Reply via email to