You can see mips64 port of this functionality here: http://reviews.llvm.org/D7013
On Mon, Jan 19, 2015 at 12:44 PM, Venkataramanan Kumar <[email protected]> wrote: > Hi Dmitry, > > The internal_clone function is called from "StopTheWorld" in > "sanitizer_stoptheworld_linux_libcdep.cc" under GCC trunk. > > When I tired to use the built executable with tsan, I got a link error, > > /work/GCC_Team/vekumar/tsan/install-trunk/lib/gcc/aarch64-unknown-linux-gnu/5.0.0/../../../../lib64/libtsan.so: > undefined reference to `__sanitizer::StopTheWorld(void > (__sanitizer::SuspendedThreadsList const&, void*), void*)' > collect2: error: ld returned 1 exit status > > > The whole file sanitizer_stoptheworld_linux_libcdep.cc. > is conditionally compiled with > #if SANITIZER_LINUX && defined(__x86_64__) > #endif > > On enabling this for Aarch64, I need to define my own internel_clone > function for Aarch64. > > regards, > Venkat. > > On 19 January 2015 at 14:00, Dmitry Vyukov <[email protected]> wrote: >> On Mon, Jan 19, 2015 at 11:17 AM, Venkataramanan Kumar >> <[email protected]> wrote: >>> Hi Dmitry, >>> >>> I am seeing some internal_syscalls like internel_clone, internal_mmap >>> written for x86_64 and I am trying to duplicate them for Aarch64. >>> >>> Have you been seeing this done for MIPS port in LLVM? >>> >>> regards, >>> Venkat, >> >> >> +address-sanitizer group >> >> Hi Venkat, >> >> I am sure that asan works on several arches other than x86_64. So >> there must be some support for such ports. >> Can't find internel_clone function, where is it defined? >> >> For simpler syscalls we do: >> >> #include <sys/syscall.h> >> >> uptr internal_read(fd_t fd, void *buf, uptr count) { >> sptr res; >> HANDLE_EINTR(res, (sptr)internal_syscall(SYSCALL(read), fd, (uptr)buf, >> count)); >> return res; >> } >> >> I think it should work for aarch64 as well. >> >> Do you see any concrete issues, compilation errors or difficulties with >> porting? -- You received this message because you are subscribed to the Google Groups "address-sanitizer" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
