[patch 10/10] debug-early merge: compiler proper

Aldy Hernandez aldyh@redhat.com
Mon Jun 1 17:42:00 GMT 2015


On 06/01/2015 01:00 PM, Richard Biener wrote:
> On June 1, 2015 5:42:57 PM GMT+02:00, Aldy Hernandez <aldyh@redhat.com> wrote:
>> On 06/01/2015 04:04 AM, Richard Biener wrote:
>>> On Mon, Jun 1, 2015 at 10:03 AM, Richard Biener

>> We still have the problem that function locals in dwarf2out are seen in
>>
>> decls_for_scope by iterating through BLOCK_VARS, and temporaries do not
>>
>> live in BLOCK_VARS.
>>
>> How did they get picked up and annotated in your approach?
>
> The size type ones are in BLOCJ_VARS IIRC (or I have to check the last posted patch for other related hunks).

Hmmm, it doesn't seem so in my testcase:

$ cat a.c
unsigned int i=555;

int main()
{
   unsigned int array[i];
   __asm__ __volatile__ ("" : : "m" (array));
}

(gdb) print stmt
$108 = <block 0x7ffff02b0420>
(gdb) call debug_generic_stmt(stmt)
BLOCK #0
   SUPERCONTEXT: main
   VARS: array

The temporary has DECL_IGNORED_P appropriately.

It does show up in DECL_STRUCT_FUNCTION()->local_decls, but so do a few 
other temporaries and SSA variables which we're not interested in.

Aldy



More information about the Gcc-patches mailing list