This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: bb-reorder.c AIX bootstrap failure


> >>>>> Jan Hubicka writes:
> 
> Jan> Intesting that it didn't happen on rtlopt branch.  Hope it is just
> Jan> something trivial.  What kind of error message do you get?
> Jan> I've forwarded it to Josef, as I am in high time press right now.  i
> Jan> will try to look into it before leaving tomorrow in case he won't be
> Jan> faster tought.
> 
> 	I emailed the failure to Josef and the gcc mailinglist:
> 
> /gcc/dje/src/libobjc/encoding.c: In function `objc_aligned_size':
> /gcc/dje/src/libobjc/encoding.c:387: error: unrecognizable insn:
> (insn 123 122 124 3022d9c0 (parallel [
>             (set (reg:SI 29 r29 [140])
>                 (div:SI (reg:SI 29 r29 [137])
>                     (reg/v:SI 3 r3 [orig:121 align ] [121])))
>             (set (reg:SI 64 mq [141])
>                 (mod:SI (reg:SI 29 r29 [137])
>                     (reg/v:SI 3 r3 [orig:121 align ] [121])))
>         ]) -1 (nil)
>     (expr_list:REG_UNUSED (reg:SI 64 mq [141])
>         (nil)))
> /gcc/dje/src/libobjc/encoding.c:387: internal compiler error: in insn_default_length, at insn-attrtab.c:834
> 
> This most likely is the same bug causing the hppa-unknown-linux-gnu
> bootstrap failure that John David Anglin is reporting.

Aha, this is relatively common problem - many targets construct
post-reload instructions that no longer math the patterns.  This gets
silently ignored as the recog caches the info, but it is bug in machine
descriptions and should be fixed.
I've fixed several places where it happens, but not all of them yet.  I
plan to add enable-checking test for this, but definitly after the
vacation so I will be able to deal with bugs.

I am installing as obvious the attached patch that makes copy_insn to
copy the cache too.  This is correct and makes compiler slightly faster
and, as a side effect, mask the bug again.

Sorry for the breakage, we should've merged the patches in correct order
and not forget about this weird dependence.

Honza

Tue Feb 11 20:44:20 CET 2003  Jan Hubicka  <jh@suse.cz>

	* emit-rtl.c (emit_copy_of_insn_after): Copy insn recog cache too.

*** emit-rtl.c	Wed Jan 29 10:25:19 2003
--- /aux/hubicka/hammer/gcc/gcc/emit-rtl.c	Wed Feb  5 11:05:06 2003
*************** emit_copy_of_insn_after (insn, after)
*** 5718,5723 ****
--- 5581,5587 ----
        XEXP (note1, 0) = p;
        XEXP (note2, 0) = new;
      }
+   INSN_CODE (new) = INSN_CODE (insn);
    return new;
  }
  


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]