[PATCH] Fix ICE with non-lvalue vector subscripts and make sure non-lvalue vector subscripts aren't used as lvalues (PR target/63764)

Jeff Law law@redhat.com
Mon Dec 8 22:13:00 GMT 2014


On 11/20/14 11:09, Jakub Jelinek wrote:
> Hi!
>
> This patch fixes ICEs if a non-lvalue vector (say cast of one vector
> to another vector type) was subscripted and used as lhs.
> The following patch, if *vecp is not lvalue, will copy it to a temporary
> variable which can be made addressable for the subscription, and afterwards
> wrap it into a NON_LVALUE_EXPR so that it is properly rejected if later used
> on the lhs.
>
> Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?
>
> 2014-11-20  Jakub Jelinek  <jakub@redhat.com>
>
> 	PR target/63764
> c-family/
> 	* c-common.h (convert_vector_to_pointer_for_subscript): Change
> 	return type to bool.
> 	* c-common.c: Include gimple-expr.c.
This was in c-family and thus I didn't see it as committed...  So when I 
went to review, I saw the typo gimple-expr.c when you meant to write 
gimple-expr.h in the ChangeLog entry.

Fixed in the obvious way.

jeff



More information about the Gcc-patches mailing list