[clang] [compiler-rt] [safestack] Various Solaris fixes (PR #98001)

Rainer Orth via cfe-commits cfe-commits at lists.llvm.org
Thu Jul 11 02:04:02 PDT 2024


rorth wrote:

> > The problem is that -u __safestack_init was passed to the linker after the corresponding version of libclang_rt.safestack-*.a. Since the Solaris linker (like Unix linkers for decades) respect
> 
> I agree this part should be extracted since it affects other systems. Other parts are Solaris specific and since the support is currently broken, it is safe to combine changes. We also don't have Solaris build bots, so the change, if correctly restricted to Solaris, would not cause any problems.

We sure have Solaris buildbots, both [Solaris/sparcv9](https://lab.llvm.org/buildbot/#/builders/13) and [Solaris/amd64](https://lab.llvm.org/staging/#/builders/94).

Actually, two parts of the patch do affect non-Solaris targets:
- The SPARC enablement, which is covered by Linux/sparc64 testing, and
- adding some (otherwise unused) `sanitizer_common` objects to `libclang_rt.safestack-*.a`.  This was tested on both Linux/x86_64 and Linux/sparc64, and I'm resonably certain that unused objects in an archive lib won't affect other targets.

https://github.com/llvm/llvm-project/pull/98001


More information about the cfe-commits mailing list