================ @@ -0,0 +1,48 @@ +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 2 +; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sme2,+fp8 -verify-machineinstrs -force-streaming < %s | FileCheck %s + +; F1CVTL / F2CVTL + +define { <vscale x 8 x half>, <vscale x 8 x half> } @f1cvtl(<vscale x 16 x i8> %zm) { +; CHECK-LABEL: f1cvtl: +; CHECK: // %bb.0: +; CHECK-NEXT: f1cvtl { z0.h, z1.h }, z0.b +; CHECK-NEXT: ret + %res = call { <vscale x 8 x half>, <vscale x 8 x half> } @llvm.aarch64.sme.fp8.f1cvtl.x2(<vscale x 16 x i8> %zm) + ret { <vscale x 8 x half>, <vscale x 8 x half> } %res +} + +define { <vscale x 8 x half>, <vscale x 8 x half> } @f2cvtl(<vscale x 16 x i8> %zm) { +; CHECK-LABEL: f2cvtl: +; CHECK: // %bb.0: +; CHECK-NEXT: f2cvtl { z0.h, z1.h }, z0.b +; CHECK-NEXT: ret + %res = call { <vscale x 8 x half>, <vscale x 8 x half> } @llvm.aarch64.sme.fp8.f2cvtl.x2(<vscale x 16 x i8> %zm) + ret { <vscale x 8 x half>, <vscale x 8 x half> } %res +} + +; BF1CVTL / BF2CVTL + +define { <vscale x 8 x bfloat>, <vscale x 8 x bfloat> } @bf1cvtl(<vscale x 16 x i8> %zm) { +; CHECK-LABEL: bf1cvtl: +; CHECK: // %bb.0: +; CHECK-NEXT: bf1cvtl { z0.h, z1.h }, z0.b +; CHECK-NEXT: ret + %res = call { <vscale x 8 x bfloat>, <vscale x 8 x bfloat> } @llvm.aarch64.sme.fp8.bf1cvtl.x2(<vscale x 16 x i8> %zm) + ret { <vscale x 8 x bfloat>, <vscale x 8 x bfloat> } %res +} + +define { <vscale x 8 x bfloat>, <vscale x 8 x bfloat> } @bf2cvtl( <vscale x 16 x i8> %zm) { +; CHECK-LABEL: bf2cvtl: +; CHECK: // %bb.0: +; CHECK-NEXT: bf2cvtl { z0.h, z1.h }, z0.b +; CHECK-NEXT: ret + %res = call { <vscale x 8 x bfloat>, <vscale x 8 x bfloat> } @llvm.aarch64.sme.fp8.bf2cvtl.x2(<vscale x 16 x i8> %zm) + ret { <vscale x 8 x bfloat>, <vscale x 8 x bfloat> } %res +} + + +declare { <vscale x 8 x half>, <vscale x 8 x half> } @llvm.aarch64.sme.fp8.f1cvtl.x2(<vscale x 16 x i8>) ---------------- momchil-velikov wrote:
These declarations are unnecessary. https://github.com/llvm/llvm-project/pull/116959 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits