FreeBSD/mips64 uses the same shadow offset as MIPS64 on Linux.
Details
Diff Detail
- Repository
- rCRT Compiler Runtime
- Build Status
Buildable 20811 Build 20811: arc lint + arc unit
Event Timeline
The LLVM changes to use the correct shadow offset on FreeBSD/mips64 are in D49939.
lib/sanitizer_common/sanitizer_linux.cc | ||
---|---|---|
1249 | Rather than adding '&& SANITIZER_LINUX' to the #ifdef for each architecture as they are ported to other systems, we might consider wrapping all of the 'internal_clone' implementations in a single '#if SANITIZER_LINUX'. | |
lib/sanitizer_common/sanitizer_syscall_generic.inc | ||
46 | __syscall is valid for all FreeBSD platforms. |
lib/asan/asan_mapping.h | ||
---|---|---|
220 | Is there a reason why you don't just hoist the __mips64 case up to line 215 to come before this, like is done for 32-bit MIPS on line 188? |
lib/sanitizer_common/sanitizer_syscall_generic.inc | ||
---|---|---|
46 | NetBSD will switch away from the syscall(2)/__syscall(2) approach and use libc natively. These indirect syscall functions are not portable enough and generate problems for various ABIs. |
lib/asan/asan_mapping.h | ||
---|---|---|
220 | Actually, I meant to ask that as a comment when I posted this in terms of what do folks think is the better approach. Thanks for the reminder. |
Sorry for the delay. This does still need review from folks familiar with sanitizers. I haven't yet rebased it to a more recent tree due to lack of review feedback. If there is interest in reviewing it I can update it to a newer tree and retest (or if there is feedback on the current patches I'm happy to update them).
Is there a reason why you don't just hoist the __mips64 case up to line 215 to come before this, like is done for 32-bit MIPS on line 188?