34 lines · plain
1; RUN: not llc --mtriple=loongarch64 --mattr=+lsx < %s 2>&1 | FileCheck %s2 3declare i64 @llvm.loongarch.lsx.vpickve2gr.d(<2 x i64>, i32)4 5define i64 @lsx_vpickve2gr_d_lo(<2 x i64> %va) nounwind {6; CHECK: llvm.loongarch.lsx.vpickve2gr.d: argument out of range7entry:8 %res = call i64 @llvm.loongarch.lsx.vpickve2gr.d(<2 x i64> %va, i32 -1)9 ret i64 %res10}11 12define i64 @lsx_vpickve2gr_d_hi(<2 x i64> %va) nounwind {13; CHECK: llvm.loongarch.lsx.vpickve2gr.d: argument out of range14entry:15 %res = call i64 @llvm.loongarch.lsx.vpickve2gr.d(<2 x i64> %va, i32 2)16 ret i64 %res17}18 19declare i64 @llvm.loongarch.lsx.vpickve2gr.du(<2 x i64>, i32)20 21define i64 @lsx_vpickve2gr_du_lo(<2 x i64> %va) nounwind {22; CHECK: llvm.loongarch.lsx.vpickve2gr.du: argument out of range23entry:24 %res = call i64 @llvm.loongarch.lsx.vpickve2gr.du(<2 x i64> %va, i32 -1)25 ret i64 %res26}27 28define i64 @lsx_vpickve2gr_du_hi(<2 x i64> %va) nounwind {29; CHECK: llvm.loongarch.lsx.vpickve2gr.du: argument out of range30entry:31 %res = call i64 @llvm.loongarch.lsx.vpickve2gr.du(<2 x i64> %va, i32 2)32 ret i64 %res33}34