[PATCH] Fix REE for vector modes (PR rtl-optimization/64286)

Jeff Law law@redhat.com
Mon Jan 12 21:39:00 GMT 2015


On 01/12/15 12:59, Jakub Jelinek wrote:
> Hi!
>
> As mentioned in the PR, giving up for all vector mode extensions
> is unnecessary, but unlike scalar integer extensions, where the low part
> of the extended value is the original value, for vectors this is not true,
> thus the old value is lost.  Which means we can perform REE, but only if
> all uses of the definition are the same (code+mode) extension.
>
> Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?
>
> 2015-01-12  Jakub Jelinek  <jakub@redhat.com>
>
> 	PR rtl-optimization/64286
> 	* ree.c (add_removable_extension): Don't add vector mode
> 	extensions if all uses of the source register aren't the same
> 	vector extensions.
>
> 	* gcc.target/i386/avx2-pr64286.c: New test.
Does it make sense to remove your change for 59754 in 
combine_reaching_defs?  Shouldn't this patch handle that case as well?

jeff



More information about the Gcc-patches mailing list