H. J. Lu wrote:
> On Fri, Jan 27, 2006 at 06:20:41PM -0500, Daniel Berlin wrote:
>> H. J. Lu wrote:
>>> I got
>>>
>>> /net/gnu-13/export/gnu/src/gcc/gcc/gcc/df-scan.c: In function
>>> `df_record_entry_block_defs':
>>> /net/gnu-13/export/gnu/src/gcc/gcc/gcc/df-scan.c:1753: error:
>>> `INCOMING_RETURN_ADDR_RTX' undeclared (first use in this function)
>>> /net/gnu-13/export/gnu/src/gcc/gcc/gcc/df-scan.c:1753: error: (Each
>>> undeclared identifier is reported only once
>>> /net/gnu-13/export/gnu/src/gcc/gcc/gcc/df-scan.c:1753: error: for each
>>> function it appears in.)
>>> make[5]: *** [df-scan.o] Error 1
>>> make[5]: *** Waiting for unfinished jobs....
>>>
>>> [EMAIL PROTECTED] gcc]$ grep INCOMING_RETURN_ADDR_RTX *.c
>>> df-scan.c: if (REG_P (INCOMING_RETURN_ADDR_RTX))
>>> df-scan.c: bitmap_set_bit (df->entry_block_defs, REGNO
>>> (INCOMING_RETURN_ADDR_RTX));
>>> dwarf2out.c: INCOMING_RETURN_ADDR_RTX. */
>>> dwarf2out.c: initial_return_save (INCOMING_RETURN_ADDR_RTX);
>>> function.c:#if defined(HAVE_epilogue) &&
>>> defined(INCOMING_RETURN_ADDR_RTX)
>>> function.c:#if defined(HAVE_epilogue) &&
>>> defined(INCOMING_RETURN_ADDR_RTX)
>>> function.c: rtx retaddr = INCOMING_RETURN_ADDR_RTX;
>>> function.c:#ifdef INCOMING_RETURN_ADDR_RTX
>>>
>>> df-scan.c doesn't check if INCOMING_RETURN_ADDR_RTX is defined.
>> Actually, neither does dwarf2out.c specifically check for it, it assumes
>> it's defined if DWARF2_UNWIND_INFO does.
>>
>> #ifdef DWARF2_UNWIND_INFO
>> /* On entry, the Canonical Frame Address is at SP. */
>> dwarf2out_def_cfa (NULL, STACK_POINTER_REGNUM, INCOMING_FRAME_SP_OFFSET);
>> initial_return_save (INCOMING_RETURN_ADDR_RTX);
>> #endif
>>
>>
>> Can you try the obvious patch here (surrounding INCOMING_RETURN_ADDR_RTX
>> with an ifdef)?
>>
>
> This patch works for me.
>
>
IMHO, you should commit it as obvious then.