"[email protected]" <[email protected]> wrote:
> This fixes the problem on the Epiphany, but I haven't tested if it also fixes
> it on
> the SH - AAUI you'd have to back out a workaround first to properly test it.
>
> Bootstrapped powerpc64-unknown-linux-gnu.
With the patch + reverting 148018 workaround, I've got a failure
when building libgcc on SH.
/exp/ldroot/dodes/xsh-gcc/./gcc/xgcc -B/exp/ldroot/dodes/xsh-gcc/./gcc/
-B/usr/local/sh4-unknown-linux-gnu/bin/ -B/usr/local/sh4-unknown-linux-gnu/lib/
-isystem /usr/local/sh4-unknown-linux-gnu/include -isystem
/usr/local/sh4-unknown-linux-gnu/sys-include -g -O2 -O2 -g -O2 -DIN_GCC
-DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wno-narrowing -Wwrite-strings
-Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
-isystem ./include -fpic -mieee -mieee -DNO_FPSCR_VALUES -g -DIN_LIBGCC2
-fbuilding-libgcc -fno-stack-protector -fpic -mieee -mieee -DNO_FPSCR_VALUES
-I. -I. -I../.././gcc -I../../../LOCAL/trunk/libgcc
-I../../../LOCAL/trunk/libgcc/. -I../../../LOCAL/trunk/libgcc/../gcc
-I../../../LOCAL/trunk/libgcc/../include -DHAVE_CC_TLS -o _muldc3.o -MT
_muldc3.o -MD -MP -MF _muldc3.dep -DL_muldc3 -c
../../../LOCAL/trunk/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
../../../LOCAL/trunk/libgcc/libgcc2.c: In function '__muldc3':
../../../LOCAL/trunk/libgcc/libgcc2.c:1929:1: internal compiler error: in
set_unique_reg_note, at emit-rtl.c:4960
#0 fancy_abort (file=0x8929248 "../../LOCAL/trunk/gcc/emit-rtl.c", line=4960,
function=0x8928f44 "set_unique_reg_note")
at ../../LOCAL/trunk/gcc/diagnostic.c:899
#1 0x0826dead in set_unique_reg_note (insn=0xb7fda120, kind=REG_EQUAL,
datum=0xb7fd5aa4) at ../../LOCAL/trunk/gcc/emit-rtl.c:4960
#2 0x08486dc6 in find_reloads (insn=0xb7fa59fc, replace=1, ind_levels=0,
live_known=1, reload_reg_p=0x8ad2660)
at ../../LOCAL/trunk/gcc/reload.c:2866
#3 0x0849596f in reload_as_needed (live_known=1)
at ../../LOCAL/trunk/gcc/reload1.c:4631
#4 0x08498422 in reload (first=0xb7f436a0, global=1)
at ../../LOCAL/trunk/gcc/reload1.c:1058
(gdb) fr 1
#1 0x0826dead in set_unique_reg_note (insn=0xb7fda120, kind=REG_EQUAL,
datum=0xb7fd5aa4) at ../../LOCAL/trunk/gcc/emit-rtl.c:4960
4960 gcc_assert (set);
(gdb) call debug_rtx(insn)
(insn 601 576 67 10 (use (reg/v:DF 219 [ a ]))
../../../LOCAL/trunk/libgcc/libgcc2.c:1892 -1
(nil))
(gdb) fr 2
#2 0x08486dc6 in find_reloads (insn=0xb7fa59fc, replace=1, ind_levels=0,
live_known=1, reload_reg_p=0x8ad2660)
at ../../LOCAL/trunk/gcc/reload.c:2866
2866 set_unique_reg_note (emit_insn_before (gen_rtx_USE
(VOIDmode, reg),
It seems that find_reloads calls set_unique_reg_note for
a USE insn.
Regards,
kaz