Skip to content

Commit d3fe088

Browse files
committed
[msan][test] Add another target("aarch64.svcount") test case
This shows a crash that happens because MSan tries to check the shadow of target("aarch64.svcount"). This is the followup to #164315. This also does a drive-by fix of those test cases, to use 'not opt' instead of XFAIL. Forked from llvm/test/CodeGen/AArch64/sme2-intrinsics-add.ll
1 parent c8c86ef commit d3fe088

File tree

4 files changed

+354
-6
lines changed

4 files changed

+354
-6
lines changed

llvm/test/Instrumentation/MemorySanitizer/AArch64/sme-aarch64-svcount-mini.ll

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2-
; RUN: opt -S -passes=msan -mattr=+sme -o - %s | FileCheck %s
3-
4-
; XFAIL: *
2+
; RUN: not opt -S -passes=msan -mattr=+sme -o - %s 2>&1
53

64
; Forked from llvm/test/CodeGen/AArch64/sme-aarch64-svcount.ll
75
; Manually minimized to show MSan leads to a compiler crash

llvm/test/Instrumentation/MemorySanitizer/AArch64/sme-aarch64-svcount.ll

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2-
; RUN: opt -S -passes=msan -mattr=+sme -o - %s | FileCheck %s
3-
4-
; XFAIL: *
2+
; RUN: not opt -S -passes=msan -mattr=+sme -o - %s
53

64
; Forked from llvm/test/CodeGen/AArch64/sme-aarch64-svcount.ll
75

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2+
; RUN: not opt -print-on-crash -S -passes=msan -mattr=+sme2 -mattr=+sme-i16i64 -mattr=+sme-f64f64 -o - %s
3+
4+
; Forked from llvm/test/CodeGen/AArch64/sme2-intrinsics-add.ll
5+
; Manually reduced to show MSan leads to a compiler crash
6+
7+
target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
8+
target triple = "aarch64--linux-android9001"
9+
10+
define void @multi_vector_add_za_vg1x4_f32_tuple(i64 %stride, ptr %ptr) sanitize_memory {
11+
%0 = tail call target("aarch64.svcount") @llvm.aarch64.sve.ptrue.c8()
12+
%1 = tail call { <vscale x 4 x float>, <vscale x 4 x float>, <vscale x 4 x float>, <vscale x 4 x float> } @llvm.aarch64.sve.ld1.pn.x4.nxv4f32(target("aarch64.svcount") %0, ptr %ptr)
13+
ret void
14+
}

0 commit comments

Comments
 (0)