xref: /llvm-project/llvm/test/Bitcode/upgrade-stepvector-intrinsic.ll (revision 95d2d1cba0e1428718bbdce0504292f62b212920)
1; RUN: opt -S < %s | FileCheck %s
2; RUN: llvm-as %s -o - | llvm-dis | FileCheck %s
3
4define <4 x i32> @stepvector_fixed() {
5; CHECK-LABEL: @stepvector_fixed
6; CHECK: %res = call <4 x i32> @llvm.stepvector.v4i32()
7
8  %res = call <4 x i32> @llvm.experimental.stepvector.v4i32()
9  ret <4 x i32> %res
10}
11
12define <vscale x 4 x i32> @stepvector_scalable() {
13; CHECK-LABEL: @stepvector_scalable
14; CHECK: %res = call <vscale x 4 x i32> @llvm.stepvector.nxv4i32()
15
16  %res = call <vscale x 4 x i32> @llvm.experimental.stepvector.nxv4i32()
17  ret <vscale x 4 x i32> %res
18}
19
20
21declare <4 x i32> @llvm.experimental.stepvector.v4i32()
22; CHECK: <4 x i32> @llvm.stepvector.v4i32()
23
24declare <vscale x 4 x i32> @llvm.experimental.stepvector.nxv4i32()
25; CHECK: <vscale x 4 x i32> @llvm.stepvector.nxv4i32()
26
27