This patch starts passing architecture information about a module to llvm-symbolizer and into text reports. This fixed the longstanding x86_64/x86_64h mismatch issue on Darwin. See also https://reviews.llvm.org/D27378.
Details
- Reviewers
kcc glider filcab dvyukov eugenis zaks.anna - Commits
- rGb38f1ca2d5f8: [sanitizer] Use architecture/slice information when symbolizing fat Mach-O…
rCRT291287: [sanitizer] Use architecture/slice information when symbolizing fat Mach-O…
rL291287: [sanitizer] Use architecture/slice information when symbolizing fat Mach-O…
Diff Detail
Event Timeline
This incremental change looks good. I'd rather let @kcc chime in in case he'd rather have it done another way, though.
But in the end, I'm not sure if this applies elsewhere, since most OS we support don't really have fat binaries.
lib/sanitizer_common/sanitizer_common.h | ||
---|---|---|
691 | I'm guessing you added this to two reviews so you commit either first but you'll merge the definitions later, right? | |
lib/sanitizer_common/sanitizer_symbolizer_libcdep.cc | ||
338 | Maybe return buf && ParseSymbolizePCOutput(buf, stack); instead of the if? | |
test/asan/TestCases/Darwin/haswell-symbolication.cc | ||
52 | Why? |
lib/sanitizer_common/sanitizer_symbolizer_libcdep.cc | ||
---|---|---|
338 | OK with me. |
Updating patch, addressing review comments. Added comments that point to other places that have a list of architectures.
I'm guessing you added this to two reviews so you commit either first but you'll merge the definitions later, right?