1*83311b2bSchenli; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py 2*83311b2bSchenli; RUN: llc --mtriple=loongarch64 --mattr=+lasx < %s | FileCheck %s 3*83311b2bSchenli 4*83311b2bSchenlideclare <32 x i8> @llvm.loongarch.lasx.xvclz.b(<32 x i8>) 5*83311b2bSchenli 6*83311b2bSchenlidefine <32 x i8> @lasx_xvclz_b(<32 x i8> %va) nounwind { 7*83311b2bSchenli; CHECK-LABEL: lasx_xvclz_b: 8*83311b2bSchenli; CHECK: # %bb.0: # %entry 9*83311b2bSchenli; CHECK-NEXT: xvclz.b $xr0, $xr0 10*83311b2bSchenli; CHECK-NEXT: ret 11*83311b2bSchenlientry: 12*83311b2bSchenli %res = call <32 x i8> @llvm.loongarch.lasx.xvclz.b(<32 x i8> %va) 13*83311b2bSchenli ret <32 x i8> %res 14*83311b2bSchenli} 15*83311b2bSchenli 16*83311b2bSchenlideclare <16 x i16> @llvm.loongarch.lasx.xvclz.h(<16 x i16>) 17*83311b2bSchenli 18*83311b2bSchenlidefine <16 x i16> @lasx_xvclz_h(<16 x i16> %va) nounwind { 19*83311b2bSchenli; CHECK-LABEL: lasx_xvclz_h: 20*83311b2bSchenli; CHECK: # %bb.0: # %entry 21*83311b2bSchenli; CHECK-NEXT: xvclz.h $xr0, $xr0 22*83311b2bSchenli; CHECK-NEXT: ret 23*83311b2bSchenlientry: 24*83311b2bSchenli %res = call <16 x i16> @llvm.loongarch.lasx.xvclz.h(<16 x i16> %va) 25*83311b2bSchenli ret <16 x i16> %res 26*83311b2bSchenli} 27*83311b2bSchenli 28*83311b2bSchenlideclare <8 x i32> @llvm.loongarch.lasx.xvclz.w(<8 x i32>) 29*83311b2bSchenli 30*83311b2bSchenlidefine <8 x i32> @lasx_xvclz_w(<8 x i32> %va) nounwind { 31*83311b2bSchenli; CHECK-LABEL: lasx_xvclz_w: 32*83311b2bSchenli; CHECK: # %bb.0: # %entry 33*83311b2bSchenli; CHECK-NEXT: xvclz.w $xr0, $xr0 34*83311b2bSchenli; CHECK-NEXT: ret 35*83311b2bSchenlientry: 36*83311b2bSchenli %res = call <8 x i32> @llvm.loongarch.lasx.xvclz.w(<8 x i32> %va) 37*83311b2bSchenli ret <8 x i32> %res 38*83311b2bSchenli} 39*83311b2bSchenli 40*83311b2bSchenlideclare <4 x i64> @llvm.loongarch.lasx.xvclz.d(<4 x i64>) 41*83311b2bSchenli 42*83311b2bSchenlidefine <4 x i64> @lasx_xvclz_d(<4 x i64> %va) nounwind { 43*83311b2bSchenli; CHECK-LABEL: lasx_xvclz_d: 44*83311b2bSchenli; CHECK: # %bb.0: # %entry 45*83311b2bSchenli; CHECK-NEXT: xvclz.d $xr0, $xr0 46*83311b2bSchenli; CHECK-NEXT: ret 47*83311b2bSchenlientry: 48*83311b2bSchenli %res = call <4 x i64> @llvm.loongarch.lasx.xvclz.d(<4 x i64> %va) 49*83311b2bSchenli ret <4 x i64> %res 50*83311b2bSchenli} 51