[all-commits] [llvm/llvm-project] 83dfa0: [MC] Change ELFOSABI_NONE to ELFOSABI_GNU for STB_...

Fangrui Song via All-commits all-commits at lists.llvm.org
Fri Aug 27 08:54:08 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 83dfa0d098f3176607aecea815eb87979953cdb5
      https://github.com/llvm/llvm-project/commit/83dfa0d098f3176607aecea815eb87979953cdb5
  Author: Fangrui Song <i at maskray.me>
  Date:   2021-08-27 (Fri, 27 Aug 2021)

  Changed paths:
    M llvm/lib/MC/MCELFStreamer.cpp
    M llvm/test/MC/ELF/gnu-type.s
    A llvm/test/MC/ELF/gnu-unique.s

  Log Message:
  -----------
  [MC] Change ELFOSABI_NONE to ELFOSABI_GNU for STB_GNU_UNIQUE

Similar to D97976.
On Linux, most GCC installations are configured with
`--enable-gnu-unique-object` and such GCC emits `@gnu_unique_object` assembly.

The feature is highly controversial and disliked by many folks.
(On glibc DF_1_NODELETE is implicitly enabled and makes dlclose a no-op).

In llvm-project STB_GNU_UNIQUE is assembly only. Clang does not use STB_GNU_UNIQUE.

Use ELFOSABI_GNU to match GNU as behavior and avoid collision with other
OSABI binding values.

Reviewed By: jrtc27

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




More information about the All-commits mailing list