[PATCH] Teach var-tracking about some targets setmem/movmem patterns (PR debug/47991)

Richard Henderson rth@redhat.com
Mon Mar 7 22:04:00 GMT 2011


On 03/05/2011 07:56 AM, Jakub Jelinek wrote:
> 	PR debug/47991
> 	* var-tracking.c (find_use_val): Return NULL for
> 	cui->sets && cui->store_p BLKmode MEMs.
> 
> 	* gcc.dg/pr47991.c: New test.

Ok.

> +	  /* Some targets represent memset and memcpy patterns
> +	     by (set (mem:BLK ...) (reg:[QHSD]I ...)) or
> +	     (set (mem:BLK ...) (const_int ...)) or
> +	     (set (mem:BLK ...) (mem:BLK ...)).  Don't return anything
> +	     in that case, otherwise we end up with mode mismatches.  */
> +	  if (mode == BLKmode && MEM_P (x))
> +	    return NULL;

Could you please file bug reports against the first two variants
you mention here?  These sorts of mode conflicts are bad.


r~



More information about the Gcc-patches mailing list