[PATCH] D152924: [libLTO][AIX] Respect `-f[no]-integrated-as`

Qiongsi Wu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 14 07:53:08 PDT 2023


qiongsiwu1 created this revision.
qiongsiwu1 added reviewers: w2yehia, MaskRay, shchenz, Esme.
qiongsiwu1 added a project: clang.
Herald added subscribers: ormris, steven_wu, hiraditya, inglorion.
Herald added a project: All.
qiongsiwu1 requested review of this revision.
Herald added subscribers: llvm-commits, cfe-commits.
Herald added a project: LLVM.

`libLTO` currently ignores the `-f[no-]integrated-as` flags. This patch teaches `libLTO` to respect them.

The implementation consists of two parts:

1. Migrate `llc`'s `-no-integrated-as` option to a codegen option so that the option is available to `libLTO`/`lld`/`gold`.
2. Teach `clang` to pass `-no-integrated-as` accordingly to `libLTO` depending on the `-f[no-]integrated-as` flags.

`libLTO` cannot use system assemblers on platforms other than AIX. As part of the option processing, a warning is implemented if `-fno-integrated-as` is used for LTO on platforms other than AIX.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D152924

Files:
  clang/include/clang/Basic/DiagnosticDriverKinds.td
  clang/lib/Driver/ToolChains/CommonArgs.cpp
  clang/test/Driver/lto-aix.c
  clang/test/Driver/lto.c
  llvm/include/llvm/CodeGen/CommandFlags.h
  llvm/lib/CodeGen/CommandFlags.cpp
  llvm/lib/LTO/LTOCodeGenerator.cpp
  llvm/test/tools/llvm-lto/aix-sys-as.ll
  llvm/test/tools/llvm-lto/aix.ll
  llvm/tools/llc/llc.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D152924.531334.patch
Type: text/x-patch
Size: 6725 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230614/0075b276/attachment.bin>


More information about the llvm-commits mailing list