Index: compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_report.cc =================================================================== --- compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_report.cc +++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_report.cc @@ -103,7 +103,7 @@ GET_CALLER_PC_BP_SP; (void)sp; bool fast = common_flags()->fast_unwind_on_fatal; - if (fast) + if (StackTrace::WillUseFastUnwind(fast)) GetThreadStackTopAndBottom(false, &top, &bottom); stack->Unwind(kStackTraceMax, pc, bp, nullptr, top, bottom, fast); Index: compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc =================================================================== --- compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc +++ compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc @@ -331,7 +331,8 @@ uptr top = 0; uptr bottom = 0; bool fast = common_flags()->fast_unwind_on_fatal; - if (fast) GetThreadStackTopAndBottom(false, &top, &bottom); + if (StackTrace::WillUseFastUnwind(fast)) + GetThreadStackTopAndBottom(false, &top, &bottom); stack->Unwind(kStackTraceMax, sig.pc, sig.bp, sig.context, top, bottom, fast); } Index: compiler-rt/trunk/lib/ubsan/ubsan_diag.cc =================================================================== --- compiler-rt/trunk/lib/ubsan/ubsan_diag.cc +++ compiler-rt/trunk/lib/ubsan/ubsan_diag.cc @@ -30,7 +30,7 @@ uptr bp, void *context, bool fast) { uptr top = 0; uptr bottom = 0; - if (fast) + if (StackTrace::WillUseFastUnwind(fast)) GetThreadStackTopAndBottom(false, &top, &bottom); stack->Unwind(max_depth, pc, bp, context, top, bottom, fast); } Index: compiler-rt/trunk/test/sanitizer_common/TestCases/Posix/dedup_token_length_test.cc =================================================================== --- compiler-rt/trunk/test/sanitizer_common/TestCases/Posix/dedup_token_length_test.cc +++ compiler-rt/trunk/test/sanitizer_common/TestCases/Posix/dedup_token_length_test.cc @@ -10,8 +10,8 @@ // XFAIL: netbsd && !asan -// FIXME(dliew): Make this test work with other sanitizers -// XFAIL: darwin && (tsan || ubsan) +// FIXME(dliew): Make this test work with TSan +// XFAIL: darwin && tsan volatile int *null = 0;