xref: /llvm-project/llvm/test/Bitcode/upgrade-vector-reverse-intrinsic.ll (revision bfc0317153dca75137fba00b5c28758d6f720963)
1*bfc03171SMaciej Gabka; RUN: opt -S < %s | FileCheck %s
2*bfc03171SMaciej Gabka; RUN: llvm-as %s -o - | llvm-dis | FileCheck %s
3*bfc03171SMaciej Gabka
4*bfc03171SMaciej Gabkadefine <16 x i8> @reverse_fixed(<16 x i8> %a) {
5*bfc03171SMaciej Gabka; CHECK-LABEL: @reverse_fixed
6*bfc03171SMaciej Gabka; CHECK: %res = call <16 x i8> @llvm.vector.reverse.v16i8(<16 x i8> %a)
7*bfc03171SMaciej Gabka
8*bfc03171SMaciej Gabka  %res = call <16 x i8> @llvm.experimental.vector.reverse.v16i8(<16 x i8> %a)
9*bfc03171SMaciej Gabka  ret <16 x i8> %res
10*bfc03171SMaciej Gabka}
11*bfc03171SMaciej Gabka
12*bfc03171SMaciej Gabkadefine <vscale x 16 x i8> @reverse_scalable(<vscale x 16 x i8> %a) {
13*bfc03171SMaciej Gabka; CHECK-LABEL: @reverse_scalable
14*bfc03171SMaciej Gabka; CHECK: %res = call <vscale x 16 x i8> @llvm.vector.reverse.nxv16i8(<vscale x 16 x i8> %a)
15*bfc03171SMaciej Gabka
16*bfc03171SMaciej Gabka  %res = call <vscale x 16 x i8> @llvm.experimental.vector.reverse.nxv16i8(<vscale x 16 x i8> %a)
17*bfc03171SMaciej Gabka  ret <vscale x 16 x i8> %res
18*bfc03171SMaciej Gabka}
19*bfc03171SMaciej Gabka
20*bfc03171SMaciej Gabkadeclare <16 x i8> @llvm.experimental.vector.reverse.v16i8(<16 x i8>)
21*bfc03171SMaciej Gabka; CHECK: declare <16 x i8> @llvm.vector.reverse.v16i8(<16 x i8>)
22*bfc03171SMaciej Gabka
23*bfc03171SMaciej Gabkadeclare <vscale x 16 x i8> @llvm.experimental.vector.reverse.nxv16i8(<vscale x 16 x i8>)
24*bfc03171SMaciej Gabka; CHECK: declare <vscale x 16 x i8> @llvm.vector.reverse.nxv16i8(<vscale x 16 x i8>)
25