summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cc2
-rw-r--r--compiler-rt/lib/tsan/rtl/tsan_rtl.cc3
-rw-r--r--compiler-rt/lib/ubsan/ubsan_diag.cc2
-rw-r--r--compiler-rt/test/sanitizer_common/TestCases/Posix/dedup_token_length_test.cc4
4 files changed, 6 insertions, 5 deletions
diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cc b/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cc
index 111c3f6469e..ed1407b998d 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cc
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cc
@@ -103,7 +103,7 @@ void ReportMmapWriteExec(int prot) {
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);
diff --git a/compiler-rt/lib/tsan/rtl/tsan_rtl.cc b/compiler-rt/lib/tsan/rtl/tsan_rtl.cc
index 6b03ad543c6..c0dab4deb93 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_rtl.cc
+++ b/compiler-rt/lib/tsan/rtl/tsan_rtl.cc
@@ -331,7 +331,8 @@ static void OnStackUnwind(const SignalContext &sig, const void *,
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);
}
diff --git a/compiler-rt/lib/ubsan/ubsan_diag.cc b/compiler-rt/lib/ubsan/ubsan_diag.cc
index df75c2d102e..83b40e5d2a6 100644
--- a/compiler-rt/lib/ubsan/ubsan_diag.cc
+++ b/compiler-rt/lib/ubsan/ubsan_diag.cc
@@ -30,7 +30,7 @@ void __ubsan::GetStackTrace(BufferedStackTrace *stack, uptr max_depth, uptr pc,
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);
}
diff --git a/compiler-rt/test/sanitizer_common/TestCases/Posix/dedup_token_length_test.cc b/compiler-rt/test/sanitizer_common/TestCases/Posix/dedup_token_length_test.cc
index 10a47482cda..f1fbbbcd049 100644
--- a/compiler-rt/test/sanitizer_common/TestCases/Posix/dedup_token_length_test.cc
+++ b/compiler-rt/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;
OpenPOWER on IntegriCloud