29 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc < %s -mtriple=aarch64-none-linux-gnu -mattr=+neon,+sve | FileCheck %s3 4define <16 x i8> @subsubii8(<16 x i8> %a, i8 %b) {5; CHECK-LABEL: subsubii8:6; CHECK: // %bb.0: // %entry7; CHECK-NEXT: dup v0.16b, w08; CHECK-NEXT: ret9entry:10 %sub = sub i8 0, %b11 %0 = insertelement <16 x i8> poison, i8 %sub, i32 012 %sh_prom = shufflevector <16 x i8> %0, <16 x i8> poison, <16 x i32> zeroinitializer13 %sub2 = sub <16 x i8> zeroinitializer, %sh_prom14 ret <16 x i8> %sub215}16 17define <vscale x 16 x i8> @subsubni8(<vscale x 16 x i8> %a, i8 %b) {18; CHECK-LABEL: subsubni8:19; CHECK: // %bb.0: // %entry20; CHECK-NEXT: mov z0.b, w021; CHECK-NEXT: ret22entry:23 %sub = sub i8 0, %b24 %0 = insertelement <vscale x 16 x i8> poison, i8 %sub, i32 025 %sh_prom = shufflevector <vscale x 16 x i8> %0, <vscale x 16 x i8> poison, <vscale x 16 x i32> zeroinitializer26 %sub2 = sub <vscale x 16 x i8> zeroinitializer, %sh_prom27 ret <vscale x 16 x i8> %sub228}29