bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gas/28386] Incorrect source file path in DWARF5 debuginfo for assem


From: hjl.tools at gmail dot com
Subject: [Bug gas/28386] Incorrect source file path in DWARF5 debuginfo for assembly file specified with relative path
Date: Sun, 26 Sep 2021 02:33:24 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=28386

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |WAITING
   Last reconfirmed|                            |2021-09-26

--- Comment #1 from H.J. Lu <hjl.tools at gmail dot com> ---
It looks like a valid DWARF5 feature:

[hjl@gnu-gram-1 obj]$ readelf -w test.o
Raw dump of debug contents of section .debug_line:

  Offset:                      0x0
  Length:                      71
  DWARF Version:               5
  Address size (bytes):        8
  Segment selector (bytes):    0
  Prologue Length:             46
  Minimum Instruction Length:  1
  Maximum Ops per Instruction: 1
  Initial value of 'is_stmt':  1
  Line Base:                   -5
  Line Range:                  14
  Opcode Base:                 13

 Opcodes:
  Opcode 1 has 0 args
  Opcode 2 has 1 arg
  Opcode 3 has 1 arg
  Opcode 4 has 1 arg
  Opcode 5 has 1 arg
  Opcode 6 has 0 args
  Opcode 7 has 0 args
  Opcode 8 has 0 args
  Opcode 9 has 1 arg
  Opcode 10 has 0 args
  Opcode 11 has 0 args
  Opcode 12 has 1 arg

 The Directory Table (offset 0x22, lines 2, columns 1):
  Entry Name
  0     (indirect line string, offset: 0x0): /tmp/obj
  1     (indirect line string, offset: 0x9): ..

 The File Name Table (offset 0x30, lines 2, columns 2):
  Entry Dir     Name
  0     0       (indirect line string, offset: 0xc): test.S
  1     1       (indirect line string, offset: 0x13): test.S

 Line Number Statements:
  [0x0000003a]  Extended opcode 2: set Address to 0x0
  [0x00000045]  Special opcode 7: advance Address by 0 to 0x0 and Line by 2 to
3
  [0x00000046]  Advance PC by 1 to 0x1
  [0x00000048]  Extended opcode 1: End of Sequence


Contents of the .debug_line_str section:

  0x00000000 2f746d70 2f6f626a 002e2e00 74657374 /tmp/obj....test
  0x00000010 2e530074 6573742e 5300              .S.test.S.

Contents of the .debug_info section:

  Compilation Unit @ offset 0x0:
   Length:        0x24 (32-bit)
   Version:       5
   Unit Type:     DW_UT_compile (1)
   Abbrev Offset: 0x0
   Pointer Size:  8
 <0><c>: Abbrev Number: 1 (DW_TAG_compile_unit)
    <d>   DW_AT_stmt_list   : 0x0
    <11>   DW_AT_low_pc      : 0x0
    <19>   DW_AT_high_pc     : 1
    <1a>   DW_AT_name        : (indirect string, offset: 0x0): test.S
    <1e>   DW_AT_comp_dir    : (indirect string, offset: 0x7): /tmp/obj
    <22>   DW_AT_producer    : (indirect string, offset: 0x10): GNU AS
2.37.50.0.1
    <26>   DW_AT_language    : 32769    (MIPS assembler)

Contents of the .debug_abbrev section:

  Number TAG (0x0)
   1      DW_TAG_compile_unit    [no children]
    DW_AT_stmt_list    DW_FORM_sec_offset
    DW_AT_low_pc       DW_FORM_addr
    DW_AT_high_pc      DW_FORM_udata
    DW_AT_name         DW_FORM_strp
    DW_AT_comp_dir     DW_FORM_strp
    DW_AT_producer     DW_FORM_strp
    DW_AT_language     DW_FORM_data2
    DW_AT value: 0     DW_FORM value: 0

Contents of the .debug_aranges section:

  Length:                   44
  Version:                  2
  Offset into .debug_info:  0x0
  Pointer Size:             8
  Segment Size:             0

    Address            Length
    0000000000000000 0000000000000001 
    0000000000000000 0000000000000000 

Contents of the .debug_str section:

  0x00000000 74657374 2e53002f 746d702f 6f626a00 test.S./tmp/obj.
  0x00000010 474e5520 41532032 2e33372e 35302e30 GNU AS 2.37.50.0
  0x00000020 2e3100                              .1.

[hjl@gnu-gram-1 obj]$ objdump -S test.o

test.o:     file format elf64-x86-64


Disassembly of section .text:

0000000000000000 <foo>:
.global foo
foo:
    ret
   0:   c3                      ret    
[hjl@gnu-gram-1 obj]$

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]