On Mon, Jun 6, 2016 at 10:15 AM, Cupertino Miranda <[email protected]> wrote: > Hi all, > > I am part of the team developing the GNU toolchain for the ARC architecture > from Synopsys. Our toolchain supports two platforms: > - Baremetal - with libc support through newlib, > - Linux - currently using uClibc (glibc is being ported). > > Recently, we have noticed an increasingly interest in your tools from our > customers/users and we would very much like to contribute with a port to our > architecture. > > From all I read, it seems that support for any of the already supported > platforms should be relatively easy, considering that instrumentation occurs > early in a generic phase (at least in GCC). > So we don't expect any big difficulty porting it to Linux. > > However, our problem and my questions are: > - How difficult or what would be the expected challenges making the > AddressSanitizer support a baremetal environment? > - Is an operating system a real requirement? > - Is anyone else working on this?
Hi Cupertino, We've ported asan to Linux kernel: https://www.kernel.org/doc/Documentation/kasan.txt The main difficulty is mapping direct shadow memory. Reporting and interception of non-instrumented libraries is more or less trivial. We've also ported tsan to Linux kernel: https://github.com/google/ktsan It's far more challenging. Basically you need to rewrite all race detection logic and hook into scheduler and all synchronization primitives. Nobody is working on a baremetal implementation as far as I can tell. -- 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.
