Hi Richard,
>> It seems the new get_some_local_dynamic_name implementation in
>> function.c lost the non-NULL check the sparc.c version had. I'm
>> currently testing the following patch:
>
> Could you do a:
>
> call debug_rtx (...)
>
> on the insn that contains a null pointer? Normally insn patterns
> shouldn't contain nulls, so I was wondering whether this was some
> SPARC-specific construct.
proved a bit difficult to do: at the default -O2, insn was optimized
away, at -g3 -O0, I only got
can't compute CFA for this frame
with gdb 7.8 even after recompiling all of the gcc dir with -g3 -O0.
Here's what I find after inserting the call in the source:
(insn 30 6 28 (sequence [
(call_insn:TI 8 6 7 (parallel [
(set (reg:SI 8 %o0)
(call (mem:SI (unspec:SI [
(symbol_ref:SI ("__tls_get_addr"))
] UNSPEC_TLSLDM) [0 S4 A32])
(const_int 1 [0x1])))
(clobber (reg:SI 15 %o7))
]) /vol/gcc/src/hg/trunk/local/libgo/runtime/proc.c:936 390
{tldm_call32}
(expr_list:REG_EH_REGION (const_int -2147483648
[0xffffffff80000000])
(nil))
(expr_list (use (reg:SI 8 %o0))
(nil)))
(insn 7 8 28 (set (reg:SI 8 %o0)
(plus:SI (reg:SI 23 %l7)
(unspec:SI [
(reg:SI 8 %o0 [112])
] UNSPEC_TLSLDM))) 388 {tldm_add32}
(nil))
]) /vol/gcc/src/hg/trunk/local/libgo/runtime/proc.c:936 -1
(nil))
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University