xref: /llvm-project/llvm/test/Analysis/MemorySSA/scalable-vec.ll (revision 8e44f13c6d294e6b4864441b22045b507782540c)
1ebec984eSEli Friedman; RUN: opt -aa-pipeline=basic-aa -passes='print<memoryssa>' -verify-memoryssa -disable-output < %s 2>&1 | FileCheck %s
2ebec984eSEli Friedman
3ebec984eSEli Friedman; CHECK-LABEL: define <vscale x 4 x i32> @f(
4ebec984eSEli Friedman; CHECK: 1 = MemoryDef(liveOnEntry)
5f96ea53eSNikita Popov; CHECK: MemoryUse(1)
6ebec984eSEli Friedmandefine <vscale x 4 x i32> @f(<vscale x 4 x i32> %z) {
7ebec984eSEli Friedman  %a = alloca <vscale x 4 x i32>
8*8e44f13cSNikita Popov  store <vscale x 4 x i32> %z, ptr %a
9*8e44f13cSNikita Popov  %zz = load <vscale x 4 x i32>, ptr %a
10ebec984eSEli Friedman  ret <vscale x 4 x i32> %zz
11ebec984eSEli Friedman}
12ebec984eSEli Friedman
13ebec984eSEli Friedman; CHECK-LABEL: define i32 @g(
14ebec984eSEli Friedman; CHECK: 1 = MemoryDef(liveOnEntry)
15f96ea53eSNikita Popov; CHECK: MemoryUse(1)
16*8e44f13cSNikita Popovdeclare ptr @gg(ptr %a)
17*8e44f13cSNikita Popovdefine i32 @g(i32 %z, ptr %bb) {
18ebec984eSEli Friedman  %a = alloca <vscale x 4 x i32>
19*8e44f13cSNikita Popov  store i32 %z, ptr %a
20*8e44f13cSNikita Popov  %bbb = call ptr @gg(ptr %a) readnone
21*8e44f13cSNikita Popov  %zz = load i32, ptr %bbb
22ebec984eSEli Friedman  ret i32 %zz
23ebec984eSEli Friedman}
24