Re: [PATCH] gdb.dwarf2: Define and use gdb_target_symbol_prefix for symbol prefixes

Kevin Buettner
2015-11-05T22:26:21Z

On Thu, 05 Nov 2015 21:19:05 +0000
Pedro Alves <palves@redhat.com> wrote:

> On 11/05/2015 08:01 PM, Kevin Buettner wrote:
> > On Thu, 05 Nov 2015 10:14:09 +0000
> > Pedro Alves <palves@redhat.com> wrote:
>
> >> > Not sure I see what makes gdb.dwarf2/atomic-type.exp different?
> >> > E.g., the gdb.dwarf2/dw2-bad-mips-linkage-name.exp hunk looks quite
> >> > similar. What makes gdb.dwarf2/atomic-type.exp special?
> > I was mistaken. Both of these tests - dw2-bad-mips-linkage-name.exp
> > and atomic-type.exp - have problems due to the fact that the call to
> > gdb_target_symbol appears within a DW_TAG_ construct. The proc
> > _handle_DW_TAG performs command and variable expansion within a DW_TAG_
> > construct. (It does other things too.)
>
> ...
>
> > --- a/gdb/testsuite/gdb.dwarf2/dw2-regno-invalid.exp
> > +++ b/gdb/testsuite/gdb.dwarf2/dw2-regno-invalid.exp
> ...
> > compile_unit {
> > - {low_pc main DW_FORM_addr}
> > - {high_pc main+0x10000 DW_FORM_addr}
> > + {low_pc [gdb_target_symbol main] DW_FORM_addr}
> > + {high_pc [gdb_target_symbol main]+0x10000 DW_FORM_addr}
> > } {
> > declare_labels integer_label
> >
> > @@ -43,8 +43,8 @@ Dwarf::assemble $asm_file {
> > DW_TAG_subprogram {
> > {name main}
> > {DW_AT_external 1 flag}
> > - {low_pc main DW_FORM_addr}
> > - {high_pc main+0x10000 DW_FORM_addr}
> > + {low_pc [gdb_target_symbol main] DW_FORM_addr}
> > + {high_pc [gdb_target_symbol main]+0x10000 DW_FORM_addr}
>
> Aren't these above more instances that needed the "join"? I believe
> so, but if not, I'd like to understand why not.

You're right; they did.

> The patch looks good to me otherwise.

Thanks again for your review.

I've pushed it.

Kevin