1 ; RUN: llc -O1 -mtriple=aarch64-none-linux-gnu -mattr=+mops -o - %s | FileCheck %s
3 define void @call_memset_intrinsic() #0 {
4 ; CHECK-LABEL: call_memset_intrinsic:
5 ; CHECK: // %bb.0: // %entry
6 ; CHECK: setp [x{{[0-9]+}}]!, x{{[0-9]+}}!, x{{[0-9]+}}
7 ; CHECK-NOT: setp [x{{[0-9]+}}]!, x[[REG:[0-9]+]]!, x[[REG]]
8 ; CHECK-NEXT: setm [x{{[0-9]+}}]!, x{{[0-9]+}}!, x{{[0-9]+}}
9 ; CHECK-NOT: setm [x{{[0-9]+}}]!, x[[REG:[0-9]+]]!, x[[REG]]
10 ; CHECK-NEXT: sete [x{{[0-9]+}}]!, x{{[0-9]+}}!, x{{[0-9]+}}
11 ; CHECK-NOT: sete [x{{[0-9]+}}]!, x[[REG:[0-9]+]]!, x[[REG]]
14 %V0 = alloca [65 x i8], align 1
15 call void @llvm.memset.p0.i64(ptr noundef nonnull align 1 dereferenceable(64) %V0, i8 64, i64 64, i1 false)
16 %add.ptr = getelementptr inbounds i8, ptr %V0, i64 64
17 call void @llvm.memset.p0.i64(ptr noundef nonnull align 1 dereferenceable(64) %add.ptr, i8 64, i64 64, i1 false)
21 attributes #0 = { "target-cpu"="generic" "target-features"="+mops,+strict-align,+v9.3a" }