[all-commits] [llvm/llvm-project] 08649d: [DWARFYAML] Implement the .debug_loclists section.

Xing GUO via All-commits all-commits at lists.llvm.org
Mon Aug 3 08:20:57 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 08649d4321bb73c888e03ac316f8ccab600a9533
      https://github.com/llvm/llvm-project/commit/08649d4321bb73c888e03ac316f8ccab600a9533
  Author: Xing GUO <higuoxing at gmail.com>
  Date:   2020-08-03 (Mon, 03 Aug 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
    A llvm/test/tools/yaml2obj/ELF/DWARF/debug-loclists.yaml

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

This patch implements the .debug_loclists section. There are only two
DWARF expressions are implemented in this patch (DW_OP_consts,
DW_OP_stack_value). We will implement more in the future.

The YAML description of the .debug_loclists section is:

```
debug_loclists:
  - Format:              DWARF32 ## Optional
    Length:              0x1234  ## Optional
    Version:             5       ## Optional (5 by default)
    AddressSize:         8       ## Optional
    SegmentSelectorSize: 0       ## Optional (0 by default)
    OffsetEntryCount:    1       ## Optional
    Offsets:             [ 1 ]   ## Optional
    Lists:
      - Entries:
          - Operator:          DW_LLE_startx_endx
            Values:            [ 0x1234, 0x4321 ]
            DescriptorsLength: 0x1234             ## Optional
            Descriptors:
              - Operator: DW_OP_consts
                Values:   [ 0x1234 ]
```

Reviewed By: jhenderson

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




More information about the All-commits mailing list