[all-commits] [llvm/llvm-project] 1ab3d6: [DWARFYAML] Implement the .debug_rnglists section.

Xing GUO via All-commits all-commits at lists.llvm.org
Sun Jul 19 19:43:05 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 1ab3d6c81902022da245707697dfe173cc5a07a2
      https://github.com/llvm/llvm-project/commit/1ab3d6c81902022da245707697dfe173cc5a07a2
  Author: Xing GUO <higuoxing at gmail.com>
  Date:   2020-07-20 (Mon, 20 Jul 2020)

  Changed paths:
    M llvm/include/llvm/ObjectYAML/DWARFEmitter.h
    M llvm/include/llvm/ObjectYAML/DWARFYAML.h
    M llvm/lib/ObjectYAML/DWARFEmitter.cpp
    M llvm/lib/ObjectYAML/DWARFYAML.cpp
    M llvm/lib/ObjectYAML/ELFEmitter.cpp
    A llvm/test/tools/yaml2obj/ELF/DWARF/debug-rnglists.yaml

  Log Message:
  -----------
  [DWARFYAML] Implement the .debug_rnglists section.

This patch implements the .debug_rnglists section. We are able to
produce the .debug_rnglists section by the following syntax.

```
debug_rnglists:
  - Format:              DWARF32 ## Optional
    Length:              0x1234  ## Optional
    Version:             5       ## Optional
    AddressSize:         0x08    ## Optional
    SegmentSelectorSize: 0x00    ## Optional
    OffsetEntryCount:    2       ## Optional
    Offsets:             [1, 2]  ## Optional
    Lists:
      - Entries:
          - Operator: DW_RLE_base_address
            Values:   [ 0x1234 ]
```

The generated .debug_rnglists is verified by llvm-dwarfdump, except for
the operator DW_RLE_startx_endx, since llvm-dwarfdump doesn't support
it.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D83624




More information about the All-commits mailing list