This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [rtl PATCH] PR/37889 and PR/38921, wrong code motion bugs
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: Andreas Schwab <schwab at suse dot de>
- Cc: Paolo Bonzini <bonzini at gnu dot org>, GCC Patches <gcc-patches at gcc dot gnu dot org>, Hans-Peter Nilsson <hans-peter dot nilsson at axis dot com>
- Date: Thu, 5 Feb 2009 08:17:18 -0800
- Subject: Re: [rtl PATCH] PR/37889 and PR/38921, wrong code motion bugs
- References: <4989B77E.80503@gnu.org> <jey6wluflc.fsf@sykes.suse.de>
On Thu, Feb 5, 2009 at 6:24 AM, Andreas Schwab <schwab@suse.de> wrote:
> Paolo Bonzini <bonzini@gnu.org> writes:
>
>> 2009-02-04 Paolo Bonzini <bonzini@gnu.org>
>> Hans-Peter Nilsson <hp@axis.com>
>>
>> PR rtl-optimization/37889
>> * rtlanal.c (rtx_addr_can_trap_p_1): Add offset and size arguments.
>> Move offset handling from PLUS to before the switch. Use new
>> arguments when considering SYMBOL_REFs too.
>> (rtx_addr_can_trap_p): Pass dummy offset and size.
>> (enum may_trap_p_flags): Remove.
>> (may_trap_p_1): Pass size from MEM_SIZE.
>>
>> PR rtl-optimization/38921
>> * loop-invariant.c (find_invariant_insn): Use may_trap_or_fault_p.
>> * rtl.h (may_trap_after_code_motion_p): Delete prototype.
>> * rtlanal.c (may_trap_after_code_motion_p): Delete.
>> (may_trap_p, may_trap_or_fault_p): Pass 0/1 as flags.
>
> This is causing miscompilation of the fortran compiler on ia64.
>
I saw it also:
http://gcc.gnu.org/ml/gcc-regression/2009-02/msg00007.html
I opened:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39110
--
H.J.