[clang] [TySan][Clang] Add clang flag to use tysan outlined instrumentation a… (PR #166170)
Matthew Nagy via cfe-commits
cfe-commits at lists.llvm.org
Mon Nov 3 07:32:06 PST 2025
================
@@ -0,0 +1,23 @@
+// RUN: %clang -S -fsanitize=type -emit-llvm -o - -fsanitize=type %s \
+// RUN: | FileCheck %s --check-prefixes=CHECK-NO-OUTLINE
+// RUN: %clang -S -fsanitize=type -emit-llvm -o - -fsanitize=type %s \
+// RUN: -fsanitize-type-outline-instrumentation \
+// RUN: | FileCheck %s --check-prefixes=CHECK-OUTLINE
+
+// RUN: %clang -S -fsanitize=type -emit-llvm -o - -fsanitize=type %s \
+// RUN: -fsanitize-type-outline-instrumentation \
+// RUN: -fsanitize-type-verify-outlined-instrumentation \
+// RUN: | FileCheck %s --check-prefixes=CHECK-OUTLINE-VERIFY
+// RUN: %clang -S -fsanitize=type -emit-llvm -o - -fsanitize=type %s \
+// RUN: -fsanitize-type-verify-outlined-instrumentation \
+// RUN: | FileCheck %s --check-prefixes=CHECK-VERIFY
+
+// CHECK-NO-OUTLINE-NOT: call{{.*}}@__tysan_instrument_mem_inst
----------------
gbMattN wrote:
Both __tysan_instrument_mem_inst and __tysan_instrument_with_shadow_update are functions which can be inserted when outlining is enabled, so either (perhaps better if both) can be used to check that the outlining of instrumentation is occurring. I made this test mimicking the minimal one ASan has but on second thought maybe I should make it a bit more verbose to properly check for all possible outlined functions
https://github.com/llvm/llvm-project/pull/166170
More information about the cfe-commits
mailing list