[all-commits] [llvm/llvm-project] 400103: [yaml2obj/obj2yaml] - Add support of 'Size' and 'C...

Georgii Rymar via All-commits all-commits at lists.llvm.org
Thu Oct 15 01:12:25 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 400103f3d5f1f1d3e7dd02531f9db71a049ac507
      https://github.com/llvm/llvm-project/commit/400103f3d5f1f1d3e7dd02531f9db71a049ac507
  Author: Georgii Rymar <grimar at accesssoftek.com>
  Date:   2020-10-15 (Thu, 15 Oct 2020)

  Changed paths:
    M llvm/include/llvm/ObjectYAML/ELFYAML.h
    M llvm/lib/ObjectYAML/ELFEmitter.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/test/tools/yaml2obj/ELF/arm-exidx-section.yaml
    M llvm/test/tools/yaml2obj/ELF/call-graph-profile-section.yaml
    M llvm/test/tools/yaml2obj/ELF/dynamic-section-raw-content.yaml
    M llvm/test/tools/yaml2obj/ELF/gnu-hash-section.yaml
    A llvm/test/tools/yaml2obj/ELF/group.yaml
    M llvm/test/tools/yaml2obj/ELF/hash-section.yaml
    M llvm/test/tools/yaml2obj/ELF/linker-options.yaml
    M llvm/test/tools/yaml2obj/ELF/llvm-addrsig-section.yaml
    M llvm/test/tools/yaml2obj/ELF/llvm-deplibs-section.yaml
    M llvm/test/tools/yaml2obj/ELF/mips-abi-flags.yaml
    A llvm/test/tools/yaml2obj/ELF/nobits.yaml
    M llvm/test/tools/yaml2obj/ELF/note-section.yaml
    A llvm/test/tools/yaml2obj/ELF/reloc-sec.yaml
    M llvm/test/tools/yaml2obj/ELF/relr-section.yaml
    M llvm/test/tools/yaml2obj/ELF/sht-symtab-shndx.yaml
    M llvm/test/tools/yaml2obj/ELF/stack-sizes.yaml
    M llvm/test/tools/yaml2obj/ELF/verdef-section.yaml
    M llvm/test/tools/yaml2obj/ELF/verneed-section.yaml
    M llvm/test/tools/yaml2obj/ELF/versym-section.yaml
    M llvm/tools/obj2yaml/elf2yaml.cpp

  Log Message:
  -----------
  [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections.

Many sections either do not have a support of `Size`/`Content` or support just a
one of them, e.g only `Content`.

`Section` is the base class for sections. This patch adds `Content` and `Size` members
to it and removes similar members from derived classes. This allows to cleanup and
generalize the code and adds a support of these keys for all sections (`SHT_MIPS_ABIFLAGS`
is a only exception, it requires unrelated specific changes to be done).

I had to update/add many tests to test the new functionality properly.

Differential revision: https://reviews.llvm.org/D89039




More information about the All-commits mailing list