xref: /llvm-project/llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/vec-ret-bf16-err.ll (revision 725e599637d9764b60aa09d5d4d3266b6dfc4e60)
1; RUN: not --crash llc -mtriple=riscv32 -mattr=+v -global-isel -stop-after=irtranslator \
2; RUN:   -verify-machineinstrs < %s 2>&1 | FileCheck %s
3; RUN: not --crash llc -mtriple=riscv64 -mattr=+v -global-isel -stop-after=irtranslator \
4; RUN:   -verify-machineinstrs < %s 2>&1 | FileCheck %s
5
6; The purpose of this test is to show that the compiler throws an error when
7; there is no support for bf16 vectors. If the compiler did not throw an error,
8; then it will try to scalarize the argument to an s32, which may drop elements.
9define <vscale x 1 x bfloat> @test_ret_nxv1bf16() {
10entry:
11  ret <vscale x 1 x bfloat> undef
12}
13
14; CHECK: LLVM ERROR: unable to translate instruction: ret (in function: test_ret_nxv1bf16)
15