[PATCH] D54099: [Sanitizers] Disable SANITIZER_CAN_FAST_UNWIND on all SPARC targets

Kamil Rytarowski via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 15 05:06:10 PST 2018


krytarowski added a comment.

In https://reviews.llvm.org/D54099#1296841, @ro wrote:

> In https://reviews.llvm.org/D54099#1293960, @krytarowski wrote:
>
> > There is also sparc and sparc64 support in sanitizers on NetBSD... but I cannot say for now how well it works. For sure we run UBSan and ASan for both of them.
>
>
> I still wonder how this works, though: I've just refreshed my patch for SPARC support in compiler-rt (https://reviews.llvm.org/D40900) and tried
>  again with patches on top to enable asan on 32-bit sparc in clang and the 32-bit asan tests in compiler-rt (trivial, but not submitted as pointless).
>
> I immediately ran again into build failures of the compiler-rt asan tests:
>
> fatal error: error in backend: Function "main": over-aligned dynamic alloca not supported.
>  clang-8: error: clang frontend command failed with exit code 70 (use -v to see invocation)
>
> just the same as when I initially had submitted https://reviews.llvm.org/D40900.  If you have a way around this, I'm all ears ;-)
>
> I cannot reasonably try sparcv9 on Solaris, though, due to the particular address space layout used there.
>
> However, as I mentioned since about a week an implementation of the TARGET_ASAN_SHADOW_OFFSET hook for sparc has landed in
>  gcc mainline, where asan works reasonably well.
>
> ubsan should be no problem, admittedly.


This works with GCC and manually patched libfuzzer (GCC 6.x/7.x) by other developers (mainly Christos Zoulas). The LLVM version is as of now much more advanced, beyond basic support for UBSan and ASan.

I'm personally short on time to work on the GCC part myself.


Repository:
  rL LLVM

https://reviews.llvm.org/D54099





More information about the llvm-commits mailing list