Jump to page: 1 2
Thread overview
[Issue 18527] lldb: `frame variable` works with ldc2, not with dmd
Feb 26, 2018
Timothee Cour
May 14, 2019
Jacob Carlborg
May 18, 2019
Jacob Carlborg
Feb 19, 2020
Jacob Carlborg
Feb 19, 2020
Jacob Carlborg
Feb 19, 2020
Jacob Carlborg
Feb 19, 2020
Jacob Carlborg
Feb 19, 2020
Jacob Carlborg
Dec 17, 2022
Iain Buclaw
Apr 18, 2023
Sönke Ludwig
Apr 18, 2023
Sönke Ludwig
February 26, 2018
https://issues.dlang.org/show_bug.cgi?id=18527

Timothee Cour <timothee.cour2@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |timothee.cour2@gmail.com
           Severity|enhancement                 |major

--
May 14, 2019
https://issues.dlang.org/show_bug.cgi?id=18527

Jacob Carlborg <doob@me.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |doob@me.com

--- Comment #1 from Jacob Carlborg <doob@me.com> ---
It seems like GDB on macOS works, but not LLDB. DMD need to follow the LLVM tools on macOS, not the GNU tools. In this case Clang and LLDB. Bumping to critical.

--
May 18, 2019
https://issues.dlang.org/show_bug.cgi?id=18527

--- Comment #2 from Jacob Carlborg <doob@me.com> ---
*** Issue 18612 has been marked as a duplicate of this issue. ***

--
February 19, 2020
https://issues.dlang.org/show_bug.cgi?id=18527

--- Comment #3 from Jacob Carlborg <doob@me.com> ---
Here's the output of `dwarfdump` for DMD:

main.o: file format Mach-O 64-bit x86-64

.debug_info contents:
0x00000000: Compile Unit: length = 0x00000151 version = 0x0003 abbr_offset =
0x0000 addr_size = 0x08 (next unit at 0x00000155)

0x0000000b: DW_TAG_compile_unit
              DW_AT_producer    ("Digital Mars D v2.090.1")
              DW_AT_language    (DW_LANG_D)
              DW_AT_name        ("main.d")
              DW_AT_comp_dir    ("~/development/d")
              DW_AT_low_pc      (0x0000000000000000)
              DW_AT_entry_pc    (0x0000000000000000)
              DW_AT_ranges      (0x00000000
                 [0x0000000000000538, 0x0000000000000538))
              DW_AT_stmt_list   (0x00000000)

0x0000005e:   DW_TAG_module
                DW_AT_name      ("main")

0x00000064:   DW_TAG_base_type
                DW_AT_name      ("int")
                DW_AT_byte_size (0x04)
                DW_AT_encoding  (DW_ATE_signed)

0x0000006b:   DW_TAG_subprogram
                DW_AT_sibling   (0x000000c2)
                DW_AT_name      ("main.foo")
                DW_AT_MIPS_linkage_name ("_D4main3fooFiZv")
                DW_AT_decl_file ("~/development/d/main.d")
                DW_AT_decl_line (3)
                DW_AT_low_pc    (0x0000000000000538)
                DW_AT_high_pc   (0x0000000000000538)
                DW_AT_frame_base        (0x00000000
                   [0x0000000000000538,  0x0000000000000538): DW_OP_breg7 RSP+8
                   [0x0000000000000538,  0x0000000000000538): DW_OP_breg7
RSP+16
                   [0x0000000000000538,  0x0000000000000538): DW_OP_breg6
RBP+16)

0x000000a0:     DW_TAG_formal_parameter
                  DW_AT_name    ("a")
                  DW_AT_type    (0x00000064 "int")
                  DW_AT_artificial      (0x00)
                  DW_AT_location        (DW_OP_fbreg -24)

0x000000ab:     DW_TAG_variable
                  DW_AT_name    ("b")
                  DW_AT_type    (0x00000064 "int")
                  DW_AT_artificial      (0x00)
                  DW_AT_location        (DW_OP_fbreg -32)

0x000000b6:     DW_TAG_variable
                  DW_AT_name    ("c")
                  DW_AT_type    (0x00000064 "int")
                  DW_AT_artificial      (0x00)
                  DW_AT_location        (DW_OP_fbreg -28)

0x000000c1:     NULL

0x000000c2:   DW_TAG_subprogram
                DW_AT_name      ("D main")
                DW_AT_MIPS_linkage_name ("_Dmain")
                DW_AT_decl_file ("~/development/d/main.d")
                DW_AT_decl_line (11)
                DW_AT_external  (0x01)
                DW_AT_low_pc    (0x0000000000000000)
                DW_AT_high_pc   (0x0000000000000000)
                DW_AT_frame_base        (0x0000004c)

0x000000e9:   DW_TAG_base_type
                DW_AT_name      ("char")
                DW_AT_byte_size (0x01)
                DW_AT_encoding  (DW_ATE_unsigned_char)

0x000000f1:   DW_TAG_pointer_type
                DW_AT_type      (0x000000e9 "char")

0x000000f6:   DW_TAG_pointer_type
                DW_AT_type      (0x000000f1 "char*")

0x000000fb:   DW_TAG_subprogram
                DW_AT_sibling   (0x00000154)
                DW_AT_name      ("main._d_cmain!().main")
                DW_AT_MIPS_linkage_name ("main")
                DW_AT_decl_file
("~/.dvm/compilers/dmd-2.090.1/osx/bin/../../src/druntime/import/core/internal/entrypoint.d")
                DW_AT_decl_line (32)
                DW_AT_type      (0x00000064 "int")
                DW_AT_external  (0x01)
                DW_AT_low_pc    (0x0000000000000000)
                DW_AT_high_pc   (0x0000000000000000)
                DW_AT_frame_base        (0x00000098)

0x00000137:     DW_TAG_formal_parameter
                  DW_AT_name    ("argc")
                  DW_AT_type    (0x00000064 "int")
                  DW_AT_artificial      (0x00)
                  DW_AT_location        (DW_OP_fbreg -32)

0x00000145:     DW_TAG_formal_parameter
                  DW_AT_name    ("argv")
                  DW_AT_type    (0x000000f6 "char**")
                  DW_AT_artificial      (0x00)
                  DW_AT_location        (DW_OP_fbreg -24)

0x00000153:     NULL

0x00000154:   NULL

--
February 19, 2020
https://issues.dlang.org/show_bug.cgi?id=18527

--- Comment #4 from Jacob Carlborg <doob@me.com> ---
Here's the output of `dwarfdump` for LDC:

main.o: file format Mach-O 64-bit x86-64

.debug_info contents:
0x00000000: Compile Unit: length = 0x000000ef version = 0x0004 abbr_offset =
0x0000 addr_size = 0x08 (next unit at 0x000000f3)

0x0000000b: DW_TAG_compile_unit
              DW_AT_producer    ("LDC 1.20.0 (LLVM 9.0.1)")
              DW_AT_language    (DW_LANG_D)
              DW_AT_name        ("main.d")
              DW_AT_stmt_list   (0x00000000)
              DW_AT_comp_dir    ("~/development/d")
              DW_AT_APPLE_major_runtime_vers    (0x01)
              DW_AT_low_pc      (0x0000000000000000)
              DW_AT_high_pc     (0x000000000000006b)

0x0000002b:   DW_TAG_module
                DW_AT_name      ("main")

0x00000030:     DW_TAG_imported_module
                  DW_AT_import  (0x000000cd)

0x00000035:     DW_TAG_subprogram
                  DW_AT_low_pc  (0x0000000000000000)
                  DW_AT_high_pc (0x0000000000000016)
                  DW_AT_frame_base      (DW_OP_reg6 RBP)
                  DW_AT_linkage_name    ("_D4main3fooFiZv")
                  DW_AT_name    ("foo")
                  DW_AT_decl_file       ("~/development/d/main.d")
                  DW_AT_decl_line       (3)
                  DW_AT_external        (true)

0x0000004e:       DW_TAG_formal_parameter
                    DW_AT_location      (DW_OP_fbreg -4)
                    DW_AT_name  ("a")
                    DW_AT_decl_file     ("~/development/d/main.d")
                    DW_AT_decl_line     (3)
                    DW_AT_type  (0x000000d2 "int")

0x0000005c:       DW_TAG_variable
                    DW_AT_location      (DW_OP_fbreg -8)
                    DW_AT_name  ("b")
                    DW_AT_decl_file     ("~/development/d/main.d")
                    DW_AT_decl_line     (5)
                    DW_AT_type  (0x000000d2 "int")

0x0000006a:       DW_TAG_variable
                    DW_AT_location      (DW_OP_fbreg -12)
                    DW_AT_name  ("c")
                    DW_AT_decl_file     ("~/development/d/main.d")
                    DW_AT_decl_line     (6)
                    DW_AT_type  (0x000000d2 "int")

0x00000078:       NULL

0x00000079:     DW_TAG_subprogram
                  DW_AT_low_pc  (0x0000000000000020)
                  DW_AT_high_pc (0x0000000000000032)
                  DW_AT_frame_base      (DW_OP_reg6 RBP)
                  DW_AT_linkage_name    ("_Dmain")
                  DW_AT_name    ("D main")
                  DW_AT_decl_file       ("~/development/d/main.d")
                  DW_AT_decl_line       (11)
                  DW_AT_external        (true)

0x00000092:     DW_TAG_subprogram
                  DW_AT_low_pc  (0x0000000000000040)
                  DW_AT_high_pc (0x000000000000006b)
                  DW_AT_frame_base      (DW_OP_reg6 RBP)
                  DW_AT_linkage_name    ("main")
                  DW_AT_name    ("main")
                  DW_AT_decl_file
("~/Downloads/ldc2-1.20.0-osx-x86_64/bin/../import/core/internal/entrypoint.d")
                  DW_AT_decl_line       (32)
                  DW_AT_type    (0x000000d2 "int")
                  DW_AT_external        (true)

0x000000af:       DW_TAG_formal_parameter
                    DW_AT_location      (DW_OP_fbreg -4)
                    DW_AT_name  ("argc")
                    DW_AT_decl_file
("~/Downloads/ldc2-1.20.0-osx-x86_64/bin/../import/core/internal/entrypoint.d")
                    DW_AT_decl_line     (32)
                    DW_AT_type  (0x000000d2 "int")

0x000000bd:       DW_TAG_formal_parameter
                    DW_AT_location      (DW_OP_fbreg -16)
                    DW_AT_name  ("argv")
                    DW_AT_decl_file
("~/Downloads/ldc2-1.20.0-osx-x86_64/bin/../import/core/internal/entrypoint.d")
                    DW_AT_decl_line     (32)
                    DW_AT_type  (0x000000d9 "char**")

0x000000cb:       NULL

0x000000cc:     NULL

0x000000cd:   DW_TAG_module
                DW_AT_name      ("object")

0x000000d2:   DW_TAG_base_type
                DW_AT_name      ("int")
                DW_AT_encoding  (DW_ATE_signed)
                DW_AT_byte_size (0x04)

0x000000d9:   DW_TAG_pointer_type
                DW_AT_type      (0x000000e2 "char*")
                DW_AT_name      ("char**")

0x000000e2:   DW_TAG_pointer_type
                DW_AT_type      (0x000000eb "char")
                DW_AT_name      ("char*")

0x000000eb:   DW_TAG_base_type
                DW_AT_name      ("char")
                DW_AT_encoding  (DW_ATE_UTF)
                DW_AT_byte_size (0x01)

0x000000f2:   NULL

--
February 19, 2020
https://issues.dlang.org/show_bug.cgi?id=18527

--- Comment #5 from Jacob Carlborg <doob@me.com> ---
Since it might be a bit difficult to see the exact changes due to different formatting and different order I listed the differences here:

DW_TAG_compile_unit:
    DMD extra:
        DW_AT_entry_pc
        DW_AT_ranges

    LDC extra:
        DW_AT_APPLE_major_runtime_vers
        DW_AT_high_pc

DW_TAG_imported_module:
    LDC extra:
        whole tag

DW_TAG_subprogram("_D4main3fooFiZv"):
    DMD extra:
        DW_AT_MIPS_linkage_name
        DW_AT_sibling

        below "DW_AT_frame_base"
            [0x00000000,  0x00000000): DW_OP_breg7 RSP+8
            [0x00000000,  0x00000000): DW_OP_breg7 RSP+16
            [0x00000000,  0x00000000): DW_OP_breg6 RBP+16)

    LDC extra:
        DW_AT_linkage_name
        DW_AT_external

    diff:
        DW_AT_frame_base:
            DMD: (0x00000000)
            LDC: (DW_OP_reg6 RBP)
        DW_AT_name:
            DMD: ("main.foo")
            LDC: ("foo")

DW_TAG_formal_parameter("a"):
    DMD extra:
        DW_AT_artificial

    LDC extra:
        DW_AT_decl_file
        DW_AT_decl_line

    diff:
        DW_AT_location:
            DMD: (DW_OP_fbreg -24)
            LDC: (DW_OP_fbreg -4)

DW_TAG_formal_parameter("b"):
    DMD extra:
        DW_AT_artificial

    LDC extra:
        DW_AT_decl_file
        DW_AT_decl_line

    diff:
        DW_AT_location:
            DMD: (DW_OP_fbreg -32)
            LDC: (DW_OP_fbreg -8)

DW_TAG_formal_parameter("c"):
    DMD extra:
        DW_AT_artificial

    LDC extra:
        DW_AT_decl_file
        DW_AT_decl_line

    diff:
        DW_AT_location:
            DMD: (DW_OP_fbreg -28)
            LDC: (DW_OP_fbreg -12)

DW_TAG_subprogram("_Dmain"):
    diff:
        DW_AT_external:
            DMD: (0x00000000)
            LDC: (true)

        DW_AT_frame_base:
            DMD: (0x00000000)
            LDC: (DW_OP_reg6 RBP)

DW_TAG_subprogram("main")
    DMD extra:
        DW_AT_MIPS_linkage_name
        DW_AT_sibling

    LDC extra:
        DW_AT_linkage_name

    diff:
        DW_AT_external:
            DMD: (0x00000000)
            LDC: (true)

        DW_AT_frame_base:
            DMD: (0x00000000)
            LDC: (DW_OP_reg6 RBP)

        DW_AT_name
            DMD: ("main._d_cmain!().main")
            LDC: ("main")

DW_TAG_formal_parameter("argc"):
    DMD extra:
        DW_AT_artificial

    LDC extra:
        DW_AT_decl_file
        DW_AT_decl_line

    diff:
        DW_AT_location:
            DMD: (DW_OP_fbreg -32)
            LDC: (DW_OP_fbreg -4)

DW_TAG_formal_parameter("argv"):
    DMD extra:
        DW_AT_artificial

    LDC extra:
        DW_AT_decl_file
        DW_AT_decl_line

    diff:
        DW_AT_location:
            DMD: (DW_OP_fbreg -24)
            LDC: (DW_OP_fbreg -16)

DW_TAG_module:
    LDC extra:
        whole tag

DW_TAG_pointer_type("char**"):
    LDC extra:
        DW_AT_name      ("char**")

DW_TAG_pointer_type("char*"):
    LDC extra:
        DW_AT_name      ("char*")

DW_TAG_base_type("char")
    diff:
        DW_AT_encoding:
            DMD: DW_ATE_unsigned_char
            LDC: DW_ATE_UTF

--
February 19, 2020
https://issues.dlang.org/show_bug.cgi?id=18527

--- Comment #6 from Jacob Carlborg <doob@me.com> ---
DWARF related output from `dumpobj` for DMD:

[7] 000e0 0000 0006b0    0 0000   0 02000000 00 00 __debug_str __DWARF
[8] 000e0 0040 0006b0    0 0b78   6 02000000 00 00 __debug_ranges __DWARF
 0000:  38  5  0  0  0  0  0  0 38  5  0  0  0  0  0  0   8.......8.......
 0010:   0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0   ................
 0020:   0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0   ................
 0030:   0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0   ................
  [0] address x0000 section 15 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [1] address x0008 section 15 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [2] address x0010 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [3] address x0018 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [4] address x0020 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [5] address x0028 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
[9] 00120 00e4 0006f0    0 0ba8  18 02000000 00 00 __debug_loc __DWARF
 0000:  38  5  0  0  0  0  0  0 38  5  0  0  0  0  0  0   8.......8.......
 0010:   2  0 77  8 38  5  0  0  0  0  0  0 38  5  0  0   ..w.8.......8...
 0020:   0  0  0  0  2  0 77 10 38  5  0  0  0  0  0  0   ......w.8.......
 0030:  38  5  0  0  0  0  0  0  2  0 76 10  0  0  0  0   8.........v.....
 0040:   0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0   ................
 0050:   0  0  0  0  0  0  0  0  0  0  0  0  2  0 77  8   ..............w.
 0060:   0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0   ................
 0070:   2  0 77 10  0  0  0  0  0  0  0  0  0  0  0  0   ..w.............
 0080:   0  0  0  0  2  0 76 10  0  0  0  0  0  0  0  0   ......v.........
 0090:   0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0   ................
 00a0:   0  0  0  0  0  0  0  0  2  0 77  8  0  0  0  0   ..........w.....
 00b0:   0  0  0  0  0  0  0  0  0  0  0  0  2  0 77 10   ..............w.
 00c0:   0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0   ................
 00d0:   2  0 76 10  0  0  0  0  0  0  0  0  0  0  0  0   ..v.............
 00e0:   0  0  0  0                                       ....
  [0] address x0000 section 15 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [1] address x0008 section 15 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [2] address x0014 section 15 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [3] address x001c section 15 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [4] address x0028 section 15 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [5] address x0030 section 15 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [6] address x004c section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [7] address x0054 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [8] address x0060 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [9] address x0068 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [10] address x0074 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [11] address x007c section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [12] address x0098 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [13] address x00a0 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [14] address x00ac section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [15] address x00b4 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [16] address x00c0 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [17] address x00c8 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
[10] 00204 00d5 0007d4    0 0c38   3 00000000 00 00 __debug_line __DWARF
 0000:  d1  0  0  0  2  0 81  0  0  0  1  1 fb  e  a  0   ................
 0010:   1  1  1  1  0  0  0  1  0 6d 61 69 6e 2e 64  0   .........main.d.
 0020:   0  0  0 2f 55 73 65 72 73 2f 64 6f 6f 62 2f 2e   .../Users/doob/.
 0030:  64 76 6d 2f 63 6f 6d 70 69 6c 65 72 73 2f 64 6d   dvm/compilers/dm
 0040:  64 2d 32 2e 30 39 30 2e 31 2f 6f 73 78 2f 62 69   d-2.090.1/osx/bi
 0050:  6e 2f 2e 2e 2f 2e 2e 2f 73 72 63 2f 64 72 75 6e   n/../../src/drun
 0060:  74 69 6d 65 2f 69 6d 70 6f 72 74 2f 63 6f 72 65   time/import/core
 0070:  2f 69 6e 74 65 72 6e 61 6c 2f 65 6e 74 72 79 70   /internal/entryp
 0080:  6f 69 6e 74 2e 64  0  0  0  0  0  0  9  2  0  0   oint.d..........
 0090:   0  0  0  0  0  0  4  1  3  a  1 49 b8  2 2c  0   ...........I..,.
 00a0:   1  1  0  9  2  0  0  0  0  0  0  0  0  4  2  3   ................
 00b0:  1f  2 18  1 e3  3  1  2 13  1  2  2  0  1  1  0   ................
 00c0:   9  2 38  5  0  0  0  0  0  0  4  1 11 ab 72 66   ..8...........rf
 00d0:   2  2  0  1  1                                    .....
  [0] address x008e section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [1] address x00a5 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [2] address x00c2 section 15 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
[11] 002d9 008f 0008a9    0 0000   0 02000000 00 00 __debug_abbrev __DWARF
 0000:   1 11  1 25  8 13  b  3  8 1b  8 11  1 52  1 55   ...%.........R.U
 0010:   6 10  6  0  0  2 1e  0  3  8  0  0  3 24  0  3   .............$..
 0020:   8  b  b 3e  b  0  0  4  5  0  3  8 49 13 34  c   ...>........I.4.
 0030:   2  a  0  0  5 34  0  3  8 49 13 34  c  2  a  0   .....4...I.4....
 0040:   0  6 2e  1  1 13  3  8 87 40  8 3a  b 3b  5 11   .........@.:.;..
 0050:   1 12  1 40  6  0  0  7 2e  0  3  8 87 40  8 3a   ...@.........@.:
 0060:   b 3b  5 3f  c 11  1 12  1 40  6  0  0  8  f  0   .;.?.....@......
 0070:  49 13  0  0  9 2e  1  1 13  3  8 87 40  8 3a  b   I...........@.:.
 0080:  3b  5 49 13 3f  c 11  1 12  1 40  6  0  0  0      ;.I.?.....@....
[12] 00368 0155 000938    0 0c50   6 02000000 00 00 __debug_info __DWARF
 0000:  51  1  0  0  3  0  0  0  0  0  8  1 44 69 67 69   Q...........Digi
 0010:  74 61 6c 20 4d 61 72 73 20 44 20 76 32 2e 30 39   tal Mars D v2.09
 0020:  30 2e 31  0 13 6d 61 69 6e 2e 64  0 2f 55 73 65   0.1..main.d./Use
 0030:  72 73 2f 64 6f 6f 62 2f 64 65 76 65 6c 6f 70 6d   rs/doob/developm
 0040:  65 6e 74 2f 64  0  0  0  0  0  0  0  0  0  0  0   ent/d...........
 0050:   0  0  0  0  0  0  0  0  0  0  0  0  0  0  2 6d   ...............m
 0060:  61 69 6e  0  3 69 6e 74  0  4  5  6 c2  0  0  0   ain..int........
 0070:  6d 61 69 6e 2e 66 6f 6f  0 5f 44 34 6d 61 69 6e   main.foo._D4main
 0080:  33 66 6f 6f 46 69 5a 76  0  1  3  0 38  5  0  0   3fooFiZv....8...
 0090:   0  0  0  0 38  5  0  0  0  0  0  0  0  0  0  0   ....8...........
 00a0:   4 61  0 64  0  0  0  0  2 91 68  5 62  0 64  0   .a.d......h.b.d.
 00b0:   0  0  0  2 91 60  5 63  0 64  0  0  0  0  2 91   .....`.c.d......
 00c0:  64  0  7 44 20 6d 61 69 6e  0 5f 44 6d 61 69 6e   d..D main._Dmain
 00d0:   0  1  b  0  1  0  0  0  0  0  0  0  0  0  0  0   ................
 00e0:   0  0  0  0  0 4c  0  0  0  3 63 68 61 72  0  1   .....L....char..
 00f0:   8  8 e9  0  0  0  8 f1  0  0  0  9 54  1  0  0   ............T...
 0100:  6d 61 69 6e 2e 5f 64 5f 63 6d 61 69 6e 21 28 29   main._d_cmain!()
 0110:  2e 6d 61 69 6e  0 6d 61 69 6e  0  2 20  0 64  0   .main.main.. .d.
 0120:   0  0  1  0  0  0  0  0  0  0  0  0  0  0  0  0   ................
 0130:   0  0  0 98  0  0  0  4 61 72 67 63  0 64  0  0   ........argc.d..
 0140:   0  0  2 91 60  4 61 72 67 76  0 f6  0  0  0  0   ....`.argv......
 0150:   2 91 68  0  0                                    ..h..
  [0] address x008c section 15 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [1] address x0094 section 15 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [2] address x00d5 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [3] address x00dd section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [4] address x0123 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [5] address x012b section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
[13] 004bd 003a 000a8d    0 0000   0 02000000 00 00 __debug_pubnames __DWARF
 0000:  36  0  0  0  2  0  0  0  0  0 55  1  0  0 6b  0   6.........U...k.
 0010:   0  0 5f 44 34 6d 61 69 6e 33 66 6f 6f 46 69 5a   .._D4main3fooFiZ
 0020:  76  0 c2  0  0  0 5f 44 6d 61 69 6e  0 fb  0  0   v....._Dmain....
 0030:   0 6d 61 69 6e  0  0  0  0  0                     .main.....
[14] 004f7 0040 000ac7    0 0c80   2 02000000 00 00 __debug_aranges __DWARF
 0000:  3c  0  0  0  2  0  0  0  0  0  8  0  0  0  0  0   <...............
 0010:  38  5  0  0  0  0  0  0 1a  0  0  0  0  0  0  0   8...............
 0020:   0  0  0  0  0  0  0  0 3c  0  0  0  0  0  0  0   ........<.......
 0030:   0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0   ................
  [0] address x0010 section 15 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [1] address x0020 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED

--
February 19, 2020
https://issues.dlang.org/show_bug.cgi?id=18527

--- Comment #7 from Jacob Carlborg <doob@me.com> ---
DWARF related output from `dumpobj` for LDC (segment contents):

[8] 00120 008d 000740    0 0000   0 02000000 00 00 __debug_str __DWARF
 0000:  4c 44 43 20 31 2e 32 30 2e 30 20 28 4c 4c 56 4d   LDC 1.20.0 (LLVM
 0010:  20 39 2e 30 2e 31 29  0 6d 61 69 6e 2e 64  0 2f    9.0.1).main.d./
 0020:  55 73 65 72 73 2f 64 6f 6f 62 2f 64 65 76 65 6c   Users/doob/devel
 0030:  6f 70 6d 65 6e 74 2f 64  0 6d 61 69 6e  0 6f 62   opment/d.main.ob
 0040:  6a 65 63 74  0 66 6f 6f  0 5f 44 34 6d 61 69 6e   ject.foo._D4main
 0050:  33 66 6f 6f 46 69 5a 76  0 44 20 6d 61 69 6e  0   3fooFiZv.D main.
 0060:  5f 44 6d 61 69 6e  0 69 6e 74  0 61  0 62  0 63   _Dmain.int.a.b.c
 0070:   0 61 72 67 63  0 61 72 67 76  0 63 68 61 72 2a   .argc.argv.char*
 0080:  2a  0 63 68 61 72 2a  0 63 68 61 72  0            *.char*.char.
[9] 001ad 009f 0007cd    0 0000   0 02000000 00 00 __debug_abbrev __DWARF
 0000:   1 11  1 25  e 13  5  3  e 10 17 1b  e e5 7f  b   ...%............
 0010:  11  1 12  6  0  0  2 1e  1  3  e  0  0  3 3a  0   ..............:.
 0020:  18 13  0  0  4 2e  1 11  1 12  6 40 18 6e  e  3   ...........@.n..
 0030:   e 3a  b 3b  b 3f 19  0  0  5  5  0  2 18  3  e   .:.;.?..........
 0040:  3a  b 3b  b 49 13  0  0  6 34  0  2 18  3  e 3a   :.;.I....4.....:
 0050:   b 3b  b 49 13  0  0  7 2e  0 11  1 12  6 40 18   .;.I..........@.
 0060:  6e  e  3  e 3a  b 3b  b 3f 19  0  0  8 2e  1 11   n...:.;.?.......
 0070:   1 12  6 40 18 6e  e  3  e 3a  b 3b  b 49 13 3f   ...@.n...:.;.I.?
 0080:  19  0  0  9 1e  0  3  e  0  0  a 24  0  3  e 3e   ...........$...>
 0090:   b  b  b  0  0  b  f  0 49 13  3  e  0  0  0      ........I......
[10] 0024c 00f3 00086c    0 0cec   4 02000000 00 00 __debug_info __DWARF
 0000:  ef  0  0  0  4  0  0  0  0  0  8  1  0  0  0  0   ................
 0010:  13  0 18  0  0  0  0  0  0  0 1f  0  0  0  1  0   ................
 0020:   0  0  0  0  0  0  0 6b  0  0  0  2 39  0  0  0   .......k....9...
 0030:   3 cd  0  0  0  4  0  0  0  0  0  0  0  0 16  0   ................
 0040:   0  0  1 56 49  0  0  0 45  0  0  0  1  3  5  2   ...VI...E.......
 0050:  91 7c 6b  0  0  0  1  3 d2  0  0  0  6  2 91 78   .|k............x
 0060:  6d  0  0  0  1  5 d2  0  0  0  6  2 91 74 6f  0   m............to.
 0070:   0  0  1  6 d2  0  0  0  0  7 20  0  0  0  0  0   .......... .....
 0080:   0  0 12  0  0  0  1 56 60  0  0  0 59  0  0  0   .......V`...Y...
 0090:   1  b  8 40  0  0  0  0  0  0  0 2b  0  0  0  1   ...@.......+....
 00a0:  56 39  0  0  0 39  0  0  0  2 20 d2  0  0  0  5   V9...9.... .....
 00b0:   2 91 7c 71  0  0  0  2 20 d2  0  0  0  5  2 91   ..|q.... .......
 00c0:  70 76  0  0  0  2 20 d9  0  0  0  0  0  9 3e  0   pv.... .......>.
 00d0:   0  0  a 67  0  0  0  5  4  b e2  0  0  0 7b  0   ...g..........{.
 00e0:   0  0  b eb  0  0  0 82  0  0  0  a 88  0  0  0   ................
 00f0:  10  1  0                                          ...
  [0] address x0093 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [1] address x007a section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [2] address x0036 section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
  [3] address x001f section 1 pcrel 0 length 3 extern 0 type 0 RELOC_UNSIGNED
[11] 0033f 0001 00095f    0 0000   0 02000000 00 00 __debug_macinfo __DWARF
 0000:   0                                                .
[12] 00340 00ac 000960    0 0000   0 02000000 00 00 __apple_names __DWARF
 0000:  48 53 41 48  1  0  0  0  5  0  0  0  5  0  0  0   HSAH............
 0010:   c  0  0  0  0  0  0  0  1  0  0  0  1  0  6  0   ................
 0020:   0  0  0  0  1  0  0  0 ff ff ff ff  2  0  0  0   ................
 0030:   4  0  0  0 ad  a 85 ea 6a 7f 9a 7c 8e 4f fe a8   ........j..|.O..
 0040:  97 b7 50 ea 89 73 88  b 5c  0  0  0 6c  0  0  0   ..P..s..\...l...
 0050:  7c  0  0  0 8c  0  0  0 9c  0  0  0 60  0  0  0   |...........`...
 0060:   1  0  0  0 79  0  0  0  0  0  0  0 39  0  0  0   ....y.......9...
 0070:   1  0  0  0 92  0  0  0  0  0  0  0 59  0  0  0   ............Y...
 0080:   1  0  0  0 79  0  0  0  0  0  0  0 49  0  0  0   ....y.......I...
 0090:   1  0  0  0 35  0  0  0  0  0  0  0 45  0  0  0   ....5.......E...
 00a0:   1  0  0  0 35  0  0  0  0  0  0  0               ....5.......
[13] 003ec 0024 000a0c    0 0000   0 02000000 00 00 __apple_objc __DWARF
 0000:  48 53 41 48  1  0  0  0  1  0  0  0  0  0  0  0   HSAH............
 0010:   c  0  0  0  0  0  0  0  1  0  0  0  1  0  6  0   ................
 0020:  ff ff ff ff                                       ....
[14] 00410 0024 000a30    0 0000   0 02000000 00 00 __apple_namespac __DWARF
 0000:  48 53 41 48  1  0  0  0  1  0  0  0  0  0  0  0   HSAH............
 0010:   c  0  0  0  0  0  0  0  1  0  0  0  1  0  6  0   ................
 0020:  ff ff ff ff                                       ....
[15] 00434 00a4 000a54    0 0000   0 02000000 00 00 __apple_types __DWARF
 0000:  48 53 41 48  1  0  0  0  4  0  0  0  4  0  0  0   HSAH............
 0010:  14  0  0  0  0  0  0  0  3  0  0  0  1  0  6  0   ................
 0020:   3  0  5  0  4  0  b  0  0  0  0  0  1  0  0  0   ................
 0030:  ff ff ff ff  2  0  0  0 30 80 88  b ed 2c 39  f   ........0....,9.
 0040:  63 20 95 7c b7 ca 5e f6 58  0  0  0 6b  0  0  0   c .|..^.X...k...
 0050:  7e  0  0  0 91  0  0  0 67  0  0  0  1  0  0  0   ~.......g.......
 0060:  d2  0  0  0 24  0  0  0  0  0  0 82  0  0  0  1   ....$...........
 0070:   0  0  0 e2  0  0  0  f  0  0  0  0  0  0 88  0   ................
 0080:   0  0  1  0  0  0 eb  0  0  0 24  0  0  0  0  0   ..........$.....
 0090:   0 7b  0  0  0  1  0  0  0 d9  0  0  0  f  0  0   .{..............
 00a0:   0  0  0  0                                       ....
[16] 004d8 00d0 000af8    3 0000   0 6800000b 00 00 __eh_frame __TEXT
 0000:  14  0  0  0  0  0  0  0  1 7a 52  0  1 78 10  1   .........zR..x..
 0010:  10  c  7  8 90  1  0  0 24  0  0  0 1c  0  0  0   ........$.......
 0020:   8 fb ff ff ff ff ff ff 16  0  0  0  0  0  0  0   ................
 0030:   0 41  e 10 86  2 43  d  6  0  0  0  0  0  0  0   .A....C.........
 0040:  24  0  0  0 44  0  0  0  0 fb ff ff ff ff ff ff   $...D...........
 0050:  12  0  0  0  0  0  0  0  0 41  e 10 86  2 43  d   .........A....C.
 0060:   6  0  0  0  0  0  0  0 24  0  0  0 6c  0  0  0   ........$...l...
 0070:  f8 fa ff ff ff ff ff ff 2b  0  0  0  0  0  0  0   ........+.......
 0080:   0 41  e 10 86  2 43  d  6  0  0  0  0  0  0  0   .A....C.........
 0090:  1c  0  0  0 94  0  0  0  0 fb ff ff ff ff ff ff   ................
 00a0:  4c  0  0  0  0  0  0  0  0 44  e 30  0  0  0  0   L........D.0....
 00b0:  1c  0  0  0 b4  0  0  0 30 fb ff ff ff ff ff ff   ........0.......
 00c0:   c  0  0  0  0  0  0  0  0 41  e 10  0  0  0  0   .........A......
[17] 005a8 00b3 000bc8    0 0d0c   1 00000000 00 00 __debug_line __DWARF
 0000:  af  0  0  0  4  0 77  0  0  0  1  1  1 fb  e  d   ......w.........
 0010:   0  1  1  1  1  0  0  0  1  0  0  1 2f 55 73 65   ............/Use
 0020:  72 73 2f 64 6f 6f 62 2f 44 6f 77 6e 6c 6f 61 64   rs/doob/Download
 0030:  73 2f 6c 64 63 32 2d 31 2e 32 30 2e 30 2d 6f 73   s/ldc2-1.20.0-os
 0040:  78 2d 78 38 36 5f 36 34 2f 62 69 6e 2f 2e 2e 2f   x-x86_64/bin/../
 0050:  69 6d 70 6f 72 74 2f 63 6f 72 65 2f 69 6e 74 65   import/core/inte
 0060:  72 6e 61 6c  0  0 6d 61 69 6e 2e 64  0  0  0  0   rnal..main.d....
 0070:  65 6e 74 72 79 70 6f 69 6e 74 2e 64  0  1  0  0   entrypoint.d....
 0080:   0  0  9  2  0  0  0  0  0  0  0  0 14  5  6  a   ................
 0090:  4a  5  5 3e 75  5  1 69  5  0 bc  5  5  a 4c  5   J..>u..i......L.
 00a0:   1 bb  4  2  5  0  3 12 f2  5  d  a e4 77  2 76   .............w.v
 00b0:   0  1  1                                          ...
  [0] address x0084 symbolnum 3 pcrel 0 length 3 extern 1 type 0 RELOC_UNSIGNED

--
December 17, 2022
https://issues.dlang.org/show_bug.cgi?id=18527

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P1                          |P2

--
April 18, 2023
https://issues.dlang.org/show_bug.cgi?id=18527

Sönke Ludwig <sludwig@outerproduct.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |sludwig@outerproduct.org

--
« First   ‹ Prev
1 2