[PATCH] D140959: RFC: Multilib prototype
Michael Platings via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed Jan 4 01:27:22 PST 2023
michaelplatings created this revision.
michaelplatings added a project: clang.
Herald added subscribers: s.egerton, ormris, abidh, mgrang, simoncook, kristof.beyls.
Herald added a project: All.
michaelplatings requested review of this revision.
Herald added subscribers: cfe-commits, MaskRay.
This is a prototype of a new approach to multilib.
The `multilib.yaml` file is a new interface that allows customising (a) which system library variants are available; and (b) how a library variant is identified as compatible with the clang arguments provided by the user.
The file clang/test/Driver/Inputs/baremetal_multilib/arm-none-eabi/multilib.yaml is an example that contains comments explaining how it is used.
The project I'm working on is LLVM Embedded Toolchain for Arm <https://github.com/ARM-software/LLVM-embedded-toolchain-for-Arm> so the design is made with that in mind, but it's intended to be flexible enough to work with other toolchains with many system library variants.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D140959
Files:
clang/include/clang/Driver/Multilib2.h
clang/lib/Driver/CMakeLists.txt
clang/lib/Driver/Multilib2.cpp
clang/lib/Driver/ToolChains/BareMetal.cpp
clang/test/Driver/Inputs/baremetal_multilib/arm-none-eabi/multilib.yaml
clang/test/Driver/arm-compiler-rt.c
clang/test/Driver/baremetal-multilib.cpp
clang/test/Driver/baremetal.cpp
clang/test/Driver/print-libgcc-file-name-clangrt.c
clang/unittests/Driver/CMakeLists.txt
clang/unittests/Driver/Multilib2Test.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D140959.486193.patch
Type: text/x-patch
Size: 39595 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20230104/e006ee3a/attachment-0001.bin>
More information about the cfe-commits
mailing list