From 8b574a1e51339e0bf44cd4ded9c704e50ecb5850 Mon Sep 17 00:00:00 2001 From: Blue Gaston Date: Tue, 26 Apr 2022 14:33:08 -0700 Subject: [PATCH] [Darwin][UBSan][Sanitizer] abort_on_error ubsan test fix for arm64 The current darwin abort_on_error test specifically tests for a division by zero undefined behavior. However arm does not trap by default for this behavior. x86 signals the abort, which is why the test passes on x86. This patch updates the test to test for a case where the ubsan runtime specifically calls Die() to trigger an abort by default. rdar://92108564 Differential Revision: https://reviews.llvm.org/D124480 --- .../test/sanitizer_common/TestCases/Darwin/abort_on_error.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/compiler-rt/test/sanitizer_common/TestCases/Darwin/abort_on_error.cpp b/compiler-rt/test/sanitizer_common/TestCases/Darwin/abort_on_error.cpp index a7bd7174a455..f94bd51ed9e0 100644 --- a/compiler-rt/test/sanitizer_common/TestCases/Darwin/abort_on_error.cpp +++ b/compiler-rt/test/sanitizer_common/TestCases/Darwin/abort_on_error.cpp @@ -16,8 +16,8 @@ int global; int main() { #if defined(USING_ubsan) - int value = 5; - int computation = value / 0; // Division by zero. + volatile int *null = 0; + *null = 0; #else volatile int *a = new int[100]; delete[] a;