[PATCH] D123612: [Driver] Support linking to compiler-rt on AVR
Ben Shi via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Sat May 7 00:22:18 PDT 2022
benshi001 added inline comments.
================
Comment at: clang/lib/Driver/ToolChains/AVR.cpp:430
+ // libgcc distributed with avr-gcc always named 'libgcc.a' even on windows.
+ return (Twine("libclang_rt.") + Component + Arch + ".a").str();
+}
----------------
benshi001 wrote:
> MaskRay wrote:
> > benshi001 wrote:
> > > This method decides the file name of compiler-rt, it is expected to be
> > >
> > > `libclang_rt.builtins-avrfamily.a`, such as
> > >
> > > `libclang_rt.builtins-avr51.a`
> > > `libclang_rt.builtins-avrtiny.a`
> > > `libclang_rt.builtins-avrxmega3.a`
> > >
> > >
> > In `-DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=on` mode this should be `lib/clang/$version/lib/$triple/libclang_rt.xxx.a` where there is no `-microarch` infix.
> But I would expect each subarch has its own specific build with specific
> optimization. That is the way in avr-gcc distribution.
This hook `buildCompilerRTBasename` with be called twice by the base class. The first time is called with `AddArch = false`, for which I do not append -microarch infix.
For the second call with `AddArch = true`, I will append -microarch infix.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D123612/new/
https://reviews.llvm.org/D123612
More information about the cfe-commits
mailing list