[all-commits] [llvm/llvm-project] e20a21: [ELF] Add convenience TableGen classes to enforce ...

Fangrui Song via All-commits all-commits at lists.llvm.org
Fri May 8 07:37:49 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: e20a215992dc685ed843b1023143f914edbb1211
      https://github.com/llvm/llvm-project/commit/e20a215992dc685ed843b1023143f914edbb1211
  Author: Fangrui Song <maskray at google.com>
  Date:   2020-05-08 (Fri, 08 May 2020)

  Changed paths:
    M lld/ELF/Options.td
    M lld/docs/ReleaseNotes.rst
    M lld/test/ELF/lto/devirt_vcall_vis_public.ll
    M lld/test/ELF/lto/thinlto-emit-imports.ll
    M lld/test/ELF/lto/thinlto-index-file.ll
    M lld/test/ELF/lto/thinlto-obj-path.ll
    M lld/test/ELF/lto/thinlto-object-suffix-replace.ll
    M lld/test/ELF/lto/thinlto-prefix-replace.ll

  Log Message:
  -----------
  [ELF] Add convenience TableGen classes to enforce two dashes for options not supported by GNU ld

Announced on https://lists.llvm.org/pipermail/llvm-dev/2020-May/141416.html

For many options, we have to support either one or two dash to be
compatible with GNU ld. For newer and lld specific options, we can enforce strict double dashes.

Affected options:

* --thinlto-*
* --lto-*
* --shuffle-sections=

This patch does not change `-plugin-opt=*` because clang driver passes
`-plugin-opt=*` and I don't intend to cause churn.

In 2000, GNU ld tried something similar with --omagic
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=e4897a3288f37d5f69e8acd256a6e83e607fe8d8

Reviewed By: tejohnson, psmith

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




More information about the All-commits mailing list