[PATCH] gas: Update commit 4780e5e4933

H.J. Lu hjl.tools@gmail.com
Fri Nov 26 20:08:04 GMT 2021


On Fri, Nov 26, 2021 at 11:47 AM H.J. Lu <hjl.tools@gmail.com> wrote:
>
> On Fri, Nov 26, 2021 at 11:31 AM H.J. Lu <hjl.tools@gmail.com> wrote:
> >
> > On Thu, Nov 25, 2021 at 11:33 PM Tom de Vries via Binutils
> > <binutils@sourceware.org> wrote:
> > >
> > > In out_dir_and_file_list, if file 0 is copied from file 1, only the filename
> > > is copied, and the dir and md5 fields are left to their default values.
> > >
> > > Fix this by adding the copy of the dir and md5 fields.
> > >
> > > gas/ChangeLog:
> > >
> > > 2021-11-26  Tom de Vries  <tdevries@suse.de>
> > >
> > >         PR 28629
> > >         * dwarf2dbg.c (out_dir_and_file_list): When copying file 1 to file 0,
> > >         also copy dir and md5 fields.
> > >         * testsuite/gas/i386/dwarf5-line-4.d: Adjust expected output.
> > > ---
> > >  gas/dwarf2dbg.c                        | 10 ++++++++--
> > >  gas/testsuite/gas/i386/dwarf5-line-4.d |  2 +-
> > >  2 files changed, 9 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c
> > > index 256412f9c79..7300bfe2648 100644
> > > --- a/gas/dwarf2dbg.c
> > > +++ b/gas/dwarf2dbg.c
> > > @@ -2123,7 +2123,7 @@ out_dir_and_file_list (segT line_seg, int sizeof_offset)
> > >    size_t size;
> > >    const char *dir;
> > >    char *cp;
> > > -  unsigned int i;
> > > +  unsigned int i, j;
> > >    bool emit_md5 = false;
> > >    bool emit_timestamps = true;
> > >    bool emit_filesize = true;
> > > @@ -2275,7 +2275,13 @@ out_dir_and_file_list (segT line_seg, int sizeof_offset)
> > >              .file 0 directive.  If that isn't used, but file 1 is,
> > >              then use that as main file name.  */
> > >           if (DWARF2_LINE_VERSION >= 5 && i == 0 && files_in_use >= 1 && files[0].filename == NULL)
> > > -           files[0].filename = files[1].filename;
> > > +           {
> > > +             files[0].filename = files[1].filename;
> > > +             files[0].dir = files[1].dir;
> > > +             if (emit_md5)
> > > +               for (j = 0; i < NUM_MD5_BYTES; ++j)
> >                                   ^^^^ Should it be j?
> > > +                 files[0].md5[j] = files[1].md5[j];
> > > +           }
> > >           else
> > >             files[i].filename = "";
> > >           if (DWARF2_LINE_VERSION < 5 || i != 0)
> > > diff --git a/gas/testsuite/gas/i386/dwarf5-line-4.d b/gas/testsuite/gas/i386/dwarf5-line-4.d
> > > index 30e1bb2bb89..a3af48eda8c 100644
> > > --- a/gas/testsuite/gas/i386/dwarf5-line-4.d
> > > +++ b/gas/testsuite/gas/i386/dwarf5-line-4.d
> > > @@ -38,7 +38,7 @@ Raw dump of debug contents of section \.z?debug_line:
> > >
> > >   The File Name Table \(offset 0x.*, lines 2, columns 2\):
> > >    Entry        Dir     Name
> > > -  0    0       \(indirect line string, offset: 0x.*\): dwarf5-line-4.s
> > > +  0    1       \(indirect line string, offset: 0x.*\): dwarf5-line-4.s
> > >    1    1       \(indirect line string, offset: 0x.*\): dwarf5-line-4.s
> > >
> > >   Line Number Statements:
> > >
> > > base-commit: c0f9d658279d4d352672e283df53c1072925fc97
> > > --
> > > 2.31.1
> > >
>
> I am checking in this:
>
> diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c
> index 7300bfe2648..8e91bef20ab 100644
> --- a/gas/dwarf2dbg.c
> +++ b/gas/dwarf2dbg.c
> @@ -2279,7 +2279,7 @@ out_dir_and_file_list (segT line_seg, int sizeof_offset)
>         files[0].filename = files[1].filename;
>         files[0].dir = files[1].dir;
>         if (emit_md5)
> - for (j = 0; i < NUM_MD5_BYTES; ++j)
> + for (j = 0; j < NUM_MD5_BYTES; ++j)
>     files[0].md5[j] = files[1].md5[j];
>       }
>     else
> diff --git a/gas/testsuite/gas/elf/dwarf-5-nop-for-line-table.d
> b/gas/testsuite/gas/elf/dwarf-5-nop-for-line-table.d
> index 651a1a20707..1a8a5c96d1e 100644
> --- a/gas/testsuite/gas/elf/dwarf-5-nop-for-line-table.d
> +++ b/gas/testsuite/gas/elf/dwarf-5-nop-for-line-table.d
> @@ -5,7 +5,7 @@
>  #...
>  Contents of the .debug_line section:
>
> -CU: .*
> +dwarf-5-nop-for-line-table.s:
>  File name.*
>  #...
>  .*[ ]+[1-8][ ]+0.*
>
> --
> H.J.

This is what I am checking in.

-- 
H.J.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-gas-Update-commit-4780e5e4933.patch
Type: application/x-patch
Size: 1875 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20211126/2e29cb21/attachment-0001.bin>


More information about the Binutils mailing list