This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: libjava build failure sol2.6 asm problem?
- From: Jeff Sturm <jsturm at one-point dot com>
- To: Richard Henderson <rth at redhat dot com>
- Cc: "Kaveh R. Ghazi" <ghazi at caip dot rutgers dot edu>, gcc at gcc dot gnu dot org
- Date: Tue, 1 Jan 2002 09:34:22 -0500 (EST)
- Subject: Re: libjava build failure sol2.6 asm problem?
On Mon, 31 Dec 2001, Richard Henderson wrote:
> The sparc -fpic problem still needs to be fixed, not worked around.
Here's a backtrace where jc1 deletes the problem label:
#1 0x082d416d in delete_insn (insn=0x40209f04) at ../../gcc/cfgrtl.c:123
#2 0x081dfd81 in delete_related_insns (insn=0x40209f04)
at ../../gcc/jump.c:1741
#3 0x081dff8e in delete_related_insns (insn=0x4020c340)
at ../../gcc/jump.c:1809
#4 0x0838f84c in fill_slots_from_thread (insn=0x402093e0,
condition=0x402078e8, thread=0x40291040, opposite_thread=0x4020964c,
likely=0, thread_if_true=0, own_thread=1, slots_to_fill=1,
pslots_filled=0xbffff6e4, delay_list=0x0) at ../../gcc/reorg.c:2713
#5 0x0839031f in fill_eager_delay_slots () at ../../gcc/reorg.c:3029
#6 0x083914cd in dbr_schedule (first=0x402052c0, file=0x0)
at ../../gcc/reorg.c:3628
#7 0x08275375 in rest_of_compilation (decl=0x401f61f0)
at ../../gcc/toplev.c:3394
#8 0x081dd245 in output_inline_function (fndecl=0x401f61f0)
at ../../gcc/integrate.c:2960
#9 0x080b51dd in finish_class () at ../../gcc/java/class.c:1729
(gdb) p insn
$2 = (struct rtx_def *) 0x40209f04
(gdb) pr
(code_label 218 462 291 48 "" "" [0 uses])
(gdb) p insn
$1 = (struct rtx_def *) 0x4020c340
(gdb) pr
(insn/v 213 486 469 (set (reg:SI 8 %o0 [148])
(high:SI (unspec:SI[
(label_ref:SI 218)
(symbol_ref:SI ("_GLOBAL_OFFSET_TABLE_"))
] 5))) 56 {*movsi_high_pic_label_ref} (nil)
(expr_list:REG_EQUIV (high:SI (unspec:SI[
(label_ref:SI 218)
(symbol_ref:SI ("_GLOBAL_OFFSET_TABLE_"))
] 5))
(insn_list:REG_LABEL 218 (nil))))
(I notice that LABEL_NUSES is zero, as it is for other non-problem
labels... who's responsibility is it to maintain LABEL_NUSES?)
Here is the test case I'm using... compile with -O2 -fPIC:
public class ThreadGroup {
private ThreadGroup[] groups;
private synchronized void checkDestroy() {
for (int i=0; i < groups.length; i++)
groups[i].checkDestroy();
}
public final synchronized void destroy() {
checkDestroy ();
for (int i=0; i < groups.length; i++)
groups[i].destroy();
}
}