------- Additional Comments From mark at codesourcery dot com  2005-04-10 18:44 
-------
Subject: Re: [PR target/20126, RFC] loop DEST_ADDR biv replacement may fail

Roger Sayle wrote:
> On 9 Apr 2005, Alexandre Oliva wrote:
> 
>>On Apr  8, 2005, Roger Sayle <[EMAIL PROTECTED]> wrote:
>>
>>
>>>++     /* If there isn't a volatile MEM, there's nothing we can do.  */
>>>++     || !for_each_rtx (&object, volatile_mem_p, 0)
>>
>>This actually caused crashes.  We don't want to scan the entire insn
>>(it might contain NULLs), only the insn pattern.
> 
> 
> Argh! Indeed, my mistake/oversight.  Thanks.
> 
> 
> 
>>      PR target/20126
>>      * loop.c (loop_givs_rescan): If replacement of DEST_ADDR failed,
>>      set the original address pseudo to the correct value before the
>>      original insn, if possible, and leave the insn alone, otherwise
>>      create a new pseudo, set it and replace it in the insn.
>>      * recog.c (validate_change_maybe_volatile): New.
>>      * recog.h (validate_change_maybe_volatile): Declare.
> 
> 
> This is OK for mainline, thanks.  Now that 4.0 is frozen for release
> candidate one, Mark needs to decide whether this patch can make it
> into 4.0.0 or will have to wait for 4.0.1.  I also think we should
> wait for that decision before considering a backport for 3.4.x (or
> we'll have a strange temporal regression).

Thanks for alerting me to this one; it does look relatively serious. 
I've added it to:

http://gcc.gnu.org/wiki/Last-Minute%20Requests%20for%204.0.0

and will consider whether it merits a second release-candidate.



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20126

Reply via email to