This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Teach var-tracking about some targets setmem/movmem patterns (PR debug/47991)
- From: Richard Henderson <rth at redhat dot com>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Tue, 08 Mar 2011 09:04:03 +1100
- Subject: Re: [PATCH] Teach var-tracking about some targets setmem/movmem patterns (PR debug/47991)
- References: <20110304205630.GM30899@tyan-ft48-01.lab.bos.redhat.com>
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~