; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sve2 < %s 2>%t | FileCheck %s ; RUN: FileCheck --check-prefix=WARN --allow-empty %s <%t ; If this check fails please read test/CodeGen/AArch64/README for instructions on how to resolve it. ; WARN-NOT: warning ; ; ADCLB (vector, long, unpredicated) ; define @adclb_i32( %a, %b, %c) { ; CHECK-LABEL: adclb_i32 ; CHECK: adclb z0.s, z1.s, z2.s ; CHECK-NEXT: ret %res = call @llvm.aarch64.sve.adclb.nxv4i32( %a, %b, %c) ret %res } define @adclb_i64( %a, %b, %c) { ; CHECK-LABEL: adclb_i64 ; CHECK: adclb z0.d, z1.d, z2.d ; CHECK-NEXT: ret %res = call @llvm.aarch64.sve.adclb.nxv2i64( %a, %b, %c) ret %res } ; ; ADCLT (vector, long, unpredicated) ; define @adclt_i32( %a, %b, %c) { ; CHECK-LABEL: adclt_i32 ; CHECK: adclt z0.s, z1.s, z2.s ; CHECK-NEXT: ret %res = call @llvm.aarch64.sve.adclt.nxv4i32( %a, %b, %c) ret %res } define @adclt_i64( %a, %b, %c) { ; CHECK-LABEL: adclt_i64 ; CHECK: adclt z0.d, z1.d, z2.d ; CHECK-NEXT: ret %res = call @llvm.aarch64.sve.adclt.nxv2i64( %a, %b, %c) ret %res } ; ; SBCLB (vector, long, unpredicated) ; define @sbclb_i32( %a, %b, %c) { ; CHECK-LABEL: sbclb_i32 ; CHECK: sbclb z0.s, z1.s, z2.s ; CHECK-NEXT: ret %res = call @llvm.aarch64.sve.sbclb.nxv4i32( %a, %b, %c) ret %res } define @sbclb_i64( %a, %b, %c) { ; CHECK-LABEL: sbclb_i64 ; CHECK: sbclb z0.d, z1.d, z2.d ; CHECK-NEXT: ret %res = call @llvm.aarch64.sve.sbclb.nxv2i64( %a, %b, %c) ret %res } ; ; SBCLT (vector, long, unpredicated) ; define @sbclt_i32( %a, %b, %c) { ; CHECK-LABEL: sbclt_i32 ; CHECK: sbclt z0.s, z1.s, z2.s ; CHECK-NEXT: ret %res = call @llvm.aarch64.sve.sbclt.nxv4i32( %a, %b, %c) ret %res } define @sbclt_i64( %a, %b, %c) { ; CHECK-LABEL: sbclt_i64 ; CHECK: sbclt z0.d, z1.d, z2.d ; CHECK-NEXT: ret %res = call @llvm.aarch64.sve.sbclt.nxv2i64( %a, %b, %c) ret %res } declare @llvm.aarch64.sve.adclb.nxv4i32(,,) declare @llvm.aarch64.sve.adclb.nxv2i64(,,) declare @llvm.aarch64.sve.adclt.nxv4i32(,,) declare @llvm.aarch64.sve.adclt.nxv2i64(,,) declare @llvm.aarch64.sve.sbclb.nxv4i32(,,) declare @llvm.aarch64.sve.sbclb.nxv2i64(,,) declare @llvm.aarch64.sve.sbclt.nxv4i32(,,) declare @llvm.aarch64.sve.sbclt.nxv2i64(,,)