; RUN: llc -mtriple=riscv64 -mattr='+v' -O0 -global-isel -global-isel-abort=2 -pass-remarks-missed='gisel*' -verify-machineinstrs %s -o %t.out 2> %t.err ; RUN: FileCheck %s --check-prefix=FALLBACK-WITH-REPORT-OUT < %t.out ; RUN: FileCheck %s --check-prefix=FALLBACK-WITH-REPORT-ERR < %t.err declare @llvm.riscv.vadd.nxv1i8.nxv1i8( , , , i64) ; FALLBACK_WITH_REPORT_ERR: :0:0: unable to translate instruction: call: ; FALLBACK-WITH-REPORT-OUT-LABEL: scalable_arg define @scalable_arg( %0, %1, i64 %2) nounwind { entry: %a = call @llvm.riscv.vadd.nxv1i8.nxv1i8( undef, %0, %1, i64 %2) ret %a } ; FALLBACK-WITH-REPORT-ERR: remark: :0:0: unable to translate instruction: call: ; FALLBACK-WITH-REPORT-OUT-LABEL: scalable_inst define @scalable_inst(i64 %0) nounwind { entry: %a = call @llvm.riscv.vadd.nxv1i8.nxv1i8( undef, undef, undef, i64 %0) ret %a } ; FALLBACK-WITH-REPORT-ERR: remark: :0:0: unable to translate instruction: alloca: ; FALLBACK-WITH-REPORT-OUT-LABEL: scalable_alloca define void @scalable_alloca() #1 { %local0 = alloca load volatile , ptr %local0 ret void }