[PATCH] D158570: [Darwin][StableABI][ASan] Remove version mismatch check from stable abi shim

Brittany Blue Gaston via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Aug 22 17:50:17 PDT 2023


thetruestblue created this revision.
thetruestblue added reviewers: kubamracek, yln, rsundahl, wrotki, usama54321, MaskRay, vitalybuka.
Herald added a subscriber: Enna1.
Herald added a project: All.
thetruestblue requested review of this revision.
Herald added projects: clang, Sanitizers.
Herald added subscribers: Sanitizers, cfe-commits.

By its nature the stable abi does not require a version check symbol.
This patch sets -asan-guard-against-version-mismatch=0 for stable abi.
And updates tests to reflect this


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D158570

Files:
  clang/lib/Driver/SanitizerArgs.cpp
  compiler-rt/lib/asan_abi/asan_abi_shim.cpp
  compiler-rt/test/asan_abi/TestCases/Darwin/llvm_interface_symbols.cpp


Index: compiler-rt/test/asan_abi/TestCases/Darwin/llvm_interface_symbols.cpp
===================================================================
--- compiler-rt/test/asan_abi/TestCases/Darwin/llvm_interface_symbols.cpp
+++ compiler-rt/test/asan_abi/TestCases/Darwin/llvm_interface_symbols.cpp
@@ -7,7 +7,6 @@
 // RUN: | grep " [TU] "                                           \
 // RUN: | grep -o "\(__asan\)[^ ]*"                               \
 // RUN: | grep -v "\(__asan_abi\)[^ ]*"                           \
-// RUN: | sed -e "s/__asan_version_mismatch_check_v[0-9]+/__asan_version_mismatch_check/" \
 // RUN: > %t.exports
 // RUN: sed -e ':a' -e 'N' -e '$!ba'                              \
 // RUN:     -e 's/ //g'                                           \
@@ -17,7 +16,9 @@
 // RUN: | grep -v -f %p/../../../../lib/asan_abi/asan_abi_tbd.txt \
 // RUN: | grep -e "INTERFACE_\(WEAK_\)\?FUNCTION"                 \
 // RUN: | grep -v "__sanitizer[^ ]*"                              \
-// RUN: | sed -e "s/.*(//" -e "s/).*//" > %t.imports
+// RUN: | sed -e "s/.*(//" -e "s/).*//"                           \
+// RUN: | sed -e "/^__asan_version_mismatch_check/d"              \
+// RUN: > %t.imports
 // RUN: sort %t.imports | uniq > %t.imports-sorted
 // RUN: sort %t.exports | uniq > %t.exports-sorted
 // RUN: diff %t.imports-sorted %t.exports-sorted
Index: compiler-rt/lib/asan_abi/asan_abi_shim.cpp
===================================================================
--- compiler-rt/lib/asan_abi/asan_abi_shim.cpp
+++ compiler-rt/lib/asan_abi/asan_abi_shim.cpp
@@ -49,7 +49,7 @@
 
   __asan_abi_init();
 }
-void __asan_version_mismatch_check_v8(void) {}
+
 void __asan_handle_no_return(void) { __asan_abi_handle_no_return(); }
 
 // Variables concerning RTL state. These provisionally exist for completeness
Index: clang/lib/Driver/SanitizerArgs.cpp
===================================================================
--- clang/lib/Driver/SanitizerArgs.cpp
+++ clang/lib/Driver/SanitizerArgs.cpp
@@ -1287,6 +1287,8 @@
     CmdArgs.push_back("-asan-instrumentation-with-call-threshold=0");
     CmdArgs.push_back("-mllvm");
     CmdArgs.push_back("-asan-max-inline-poisoning-size=0");
+    CmdArgs.push_back("-mllvm");
+    CmdArgs.push_back("-asan-guard-against-version-mismatch=0");
   }
 
   // Only pass the option to the frontend if the user requested,


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D158570.552548.patch
Type: text/x-patch
Size: 2370 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20230823/11958cee/attachment-0001.bin>


More information about the cfe-commits mailing list