This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Ada bootstrap failure due to loop optimization and builtin_stack_alloc
- From: Daniel Jacobowitz <drow at false dot org>
- To: Richard Kenner <kenner at vlsi1 dot ultra dot nyu dot edu>
- Cc: rth at redhat dot com, gcc at gcc dot gnu dot org
- Date: Tue, 3 Aug 2004 10:41:03 -0400
- Subject: Re: Ada bootstrap failure due to loop optimization and builtin_stack_alloc
- References: <10407300200.AA13637@vlsi1.ultra.nyu.edu>
On Thu, Jul 29, 2004 at 10:00:41PM -0400, Richard Kenner wrote:
> We jump through a hoop with __builtin_stack_alloc, and then we jump
> through a hoop with DECL_DEFER_OUTPUT in allocating the variable at
> rtl time. Why in the world aren't we just representing this as
> __builtin_alloca and normal indirection?
>
> I was wondering the same thing from early on but figured there was a good
> reason. :-)
>
> But I suspect the issue is debugging: if you can avoid changing the
> type of the variable, it's better: otherwise you either show the variable
> in the debugger as being one level more indirect than it is or else
> have to have some way of telling the debugger to remove the indirection.
>
> I certainly agree that the current implementation is too weird.
[I'm just catching up; apologies if this was continued in another
thread.]
The debugging information is perfectly capable of reflecting this, at
least for DWARF2. There may be some hoops required when outputing the
debug information to preserve the original type and at the necessary
DW_OP_indirect.
--
Daniel Jacobowitz