[all-commits] [llvm/llvm-project] 2d59ed: [yaml2obj] - Add a way to override the sh_addralig...

Georgii Rymar via All-commits all-commits at lists.llvm.org
Tue Oct 27 03:04:18 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 2d59ed4e62a9842be428f32976760dbb9cf336af
      https://github.com/llvm/llvm-project/commit/2d59ed4e62a9842be428f32976760dbb9cf336af
  Author: Georgii Rymar <grimar at accesssoftek.com>
  Date:   2020-10-27 (Tue, 27 Oct 2020)

  Changed paths:
    M llvm/include/llvm/ObjectYAML/ELFYAML.h
    M llvm/lib/ObjectYAML/ELFEmitter.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    A llvm/test/tools/yaml2obj/ELF/override-shaddralign.yaml

  Log Message:
  -----------
  [yaml2obj] - Add a way to override the sh_addralign field of a section.

Imagine the following declaration of a section:
```
Sections:
  - Name:         .dynsym
    Type:         SHT_DYNSYM
    AddressAlign: 0x1111111111111111
```

The aligment is large and yaml2obj reports an error currently:
"the desired output size is greater than permitted. Use the --max-size option to change the limit"

This patch implements the "ShAddrAlign" key, which is similar to other "Sh*" keys we have.
With it it is possible to override the `sh_addralign` field, ignoring the writing of alignment bytes.

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




More information about the All-commits mailing list