Lines Matching +full:0 +full:x19

2 ; RUN: llc -aarch64-streaming-hazard-size=0 < %s | FileCheck %s
15 define void @dont_coalesce_arg_i8(i8 %arg, ptr %ptr) #0 {
17 ; CHECK: // %bb.0:
24 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
27 ; CHECK-NEXT: mov x19, x1
34 ; CHECK-NEXT: st1b { z0.b }, p0, [x19]
37 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
43 %vec = insertelement <vscale x 16 x i8> poison, i8 %arg, i32 0
49 define void @dont_coalesce_arg_i16(i16 %arg, ptr %ptr) #0 {
51 ; CHECK: // %bb.0:
58 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
61 ; CHECK-NEXT: mov x19, x1
68 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
71 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
77 %vec = insertelement <vscale x 8 x i16> poison, i16 %arg, i32 0
83 define void @dont_coalesce_arg_i32(i32 %arg, ptr %ptr) #0 {
85 ; CHECK: // %bb.0:
92 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
95 ; CHECK-NEXT: mov x19, x1
102 ; CHECK-NEXT: st1w { z0.s }, p0, [x19]
105 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
111 %vec = insertelement <vscale x 4 x i32> poison, i32 %arg, i32 0
117 define void @dont_coalesce_arg_i64(i64 %arg, ptr %ptr) #0 {
119 ; CHECK: // %bb.0:
126 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
129 ; CHECK-NEXT: mov x19, x1
136 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
139 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
145 %vec = insertelement <vscale x 2 x i64> poison, i64 %arg, i32 0
151 define void @dont_coalesce_arg_f16(half %arg, ptr %ptr) #0 {
153 ; CHECK: // %bb.0:
160 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
165 ; CHECK-NEXT: mov x19, x0
176 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
180 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
186 %vec = insertelement <vscale x 8 x half> poison, half %arg, i32 0
192 define void @dont_coalesce_arg_f32(float %arg, ptr %ptr) #0 {
194 ; CHECK: // %bb.0:
201 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
206 ; CHECK-NEXT: mov x19, x0
217 ; CHECK-NEXT: st1w { z0.s }, p0, [x19]
221 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
227 %vec = insertelement <vscale x 4 x float> poison, float %arg, i32 0
233 define void @dont_coalesce_arg_f64(double %arg, ptr %ptr) #0 {
235 ; CHECK: // %bb.0:
242 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
247 ; CHECK-NEXT: mov x19, x0
258 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
262 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
268 %vec = insertelement <vscale x 2 x double> poison, double %arg, i32 0
279 define void @dont_coalesce_arg_v1i8(<1 x i8> %arg, ptr %ptr) #0 {
281 ; CHECK: // %bb.0:
288 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
293 ; CHECK-NEXT: mov x19, x0
304 ; CHECK-NEXT: st1b { z0.b }, p0, [x19]
308 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
314 %elt = extractelement <1 x i8> %arg, i32 0
315 %vec = insertelement <vscale x 16 x i8> poison, i8 %elt, i32 0
321 define void @dont_coalesce_arg_v1i16(<1 x i16> %arg, ptr %ptr) #0 {
323 ; CHECK: // %bb.0:
330 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
335 ; CHECK-NEXT: mov x19, x0
346 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
350 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
356 %elt = extractelement <1 x i16> %arg, i32 0
357 %vec = insertelement <vscale x 8 x i16> poison, i16 %elt, i32 0
363 define void @dont_coalesce_arg_v1i32(<1 x i32> %arg, ptr %ptr) #0 {
365 ; CHECK: // %bb.0:
372 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
377 ; CHECK-NEXT: mov x19, x0
388 ; CHECK-NEXT: st1w { z0.s }, p0, [x19]
392 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
398 %elt = extractelement <1 x i32> %arg, i32 0
399 %vec = insertelement <vscale x 4 x i32> poison, i32 %elt, i32 0
405 define void @dont_coalesce_arg_v1i64(<1 x i64> %arg, ptr %ptr) #0 {
407 ; CHECK: // %bb.0:
414 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
419 ; CHECK-NEXT: mov x19, x0
430 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
434 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
440 %elt = extractelement <1 x i64> %arg, i32 0
441 %vec = insertelement <vscale x 2 x i64> poison, i64 %elt, i32 0
447 define void @dont_coalesce_arg_v1f16(<1 x half> %arg, ptr %ptr) #0 {
449 ; CHECK: // %bb.0:
456 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
461 ; CHECK-NEXT: mov x19, x0
472 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
476 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
482 %elt = extractelement <1 x half> %arg, i32 0
483 %vec = insertelement <vscale x 8 x half> poison, half %elt, i32 0
489 define void @dont_coalesce_arg_v1f32(<1 x float> %arg, ptr %ptr) #0 {
491 ; CHECK: // %bb.0:
498 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
503 ; CHECK-NEXT: mov x19, x0
514 ; CHECK-NEXT: st1w { z0.s }, p0, [x19]
518 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
524 %elt = extractelement <1 x float> %arg, i32 0
525 %vec = insertelement <vscale x 4 x float> poison, float %elt, i32 0
531 define void @dont_coalesce_arg_v1f64(<1 x double> %arg, ptr %ptr) #0 {
533 ; CHECK: // %bb.0:
540 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
545 ; CHECK-NEXT: mov x19, x0
556 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
560 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
566 %elt = extractelement <1 x double> %arg, i32 0
567 %vec = insertelement <vscale x 2 x double> poison, double %elt, i32 0
577 define void @dont_coalesce_arg_v16i8(<16 x i8> %arg, ptr %ptr) #0 {
579 ; CHECK: // %bb.0:
586 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
591 ; CHECK-NEXT: mov x19, x0
602 ; CHECK-NEXT: st1b { z0.b }, p0, [x19]
606 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
612 %vec = call <vscale x 16 x i8> @llvm.vector.insert.nxv16i8.v16i8(<vscale x 16 x i8> poison, <16 x i8> %arg, i64 0)
618 define void @dont_coalesce_arg_v8i16(<8 x i16> %arg, ptr %ptr) #0 {
620 ; CHECK: // %bb.0:
627 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
632 ; CHECK-NEXT: mov x19, x0
643 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
647 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
653 %vec = call <vscale x 8 x i16> @llvm.vector.insert.nxv8i16.v8i16(<vscale x 8 x i16> poison, <8 x i16> %arg, i64 0)
659 define void @dont_coalesce_arg_v4i32(<4 x i32> %arg, ptr %ptr) #0 {
661 ; CHECK: // %bb.0:
668 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
673 ; CHECK-NEXT: mov x19, x0
684 ; CHECK-NEXT: st1w { z0.s }, p0, [x19]
688 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
694 %vec = call <vscale x 4 x i32> @llvm.vector.insert.nxv4i32.v4i32(<vscale x 4 x i32> poison, <4 x i32> %arg, i64 0)
700 define void @dont_coalesce_arg_v2i64(<2 x i64> %arg, ptr %ptr) #0 {
702 ; CHECK: // %bb.0:
709 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
714 ; CHECK-NEXT: mov x19, x0
725 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
729 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
735 %vec = call <vscale x 2 x i64> @llvm.vector.insert.nxv2i64.v2i64(<vscale x 2 x i64> poison, <2 x i64> %arg, i64 0)
741 define void @dont_coalesce_arg_v8f16(<8 x half> %arg, ptr %ptr) #0 {
743 ; CHECK: // %bb.0:
750 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
755 ; CHECK-NEXT: mov x19, x0
766 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
770 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
776 %vec = call <vscale x 8 x half> @llvm.vector.insert.nxv8f16.v8f16(<vscale x 8 x half> poison, <8 x half> %arg, i64 0)
782 define void @dont_coalesce_arg_v8bf16(<8 x bfloat> %arg, ptr %ptr) #0 {
784 ; CHECK: // %bb.0:
791 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
796 ; CHECK-NEXT: mov x19, x0
807 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
811 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
817 %vec = call <vscale x 8 x bfloat> @llvm.vector.insert.nxv8bf16.v8bf16(<vscale x 8 x bfloat> poison, <8 x bfloat> %arg, i64 0)
823 define void @dont_coalesce_arg_v4f32(<4 x float> %arg, ptr %ptr) #0 {
825 ; CHECK: // %bb.0:
832 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
837 ; CHECK-NEXT: mov x19, x0
848 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
852 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
858 %vec = call <vscale x 4 x float> @llvm.vector.insert.nxv4f32.v4f32(<vscale x 4 x float> poison, <4 x float> %arg, i64 0)
864 define void @dont_coalesce_arg_v2f64(<2 x double> %arg, ptr %ptr) #0 {
866 ; CHECK: // %bb.0:
873 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
878 ; CHECK-NEXT: mov x19, x0
889 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
893 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
899 %vec = call <vscale x 2 x double> @llvm.vector.insert.nxv2f64.v2f64(<vscale x 2 x double> poison, <2 x double> %arg, i64 0)
908 define void @dont_coalesce_arg_v8i1(<8 x i1> %arg, ptr %ptr) #0 {
910 ; CHECK: // %bb.0:
917 ; CHECK-NEXT: stp x9, x19, [sp, #80] // 16-byte Folded Spill
924 ; CHECK-NEXT: mov x19, x0
926 ; CHECK-NEXT: and z1.b, z1.b, #0x1
927 ; CHECK-NEXT: cmpne p0.b, p0/z, z1.b, #0
936 ; CHECK-NEXT: str p0, [x19]
940 ; CHECK-NEXT: ldr x19, [sp, #88] // 8-byte Folded Reload
946 %vec = call <vscale x 16 x i1> @llvm.vector.insert.nxv8i1.v8i1(<vscale x 16 x i1> poison, <8 x i1> %arg, i64 0)
956 define void @dont_coalesce_res_i8(ptr %ptr) #0 {
958 ; CHECK: // %bb.0:
965 ; CHECK-NEXT: str x19, [sp, #80] // 8-byte Folded Spill
966 ; CHECK-NEXT: mov x19, x0
973 ; CHECK-NEXT: st1b { z0.b }, p0, [x19]
975 ; CHECK-NEXT: ldr x19, [sp, #80] // 8-byte Folded Reload
981 %vec = insertelement <vscale x 16 x i8> poison, i8 %res, i32 0
986 define void @dont_coalesce_res_i16(ptr %ptr) #0 {
988 ; CHECK: // %bb.0:
995 ; CHECK-NEXT: str x19, [sp, #80] // 8-byte Folded Spill
996 ; CHECK-NEXT: mov x19, x0
1003 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
1005 ; CHECK-NEXT: ldr x19, [sp, #80] // 8-byte Folded Reload
1011 %vec = insertelement <vscale x 8 x i16> poison, i16 %res, i32 0
1016 define void @dont_coalesce_res_i32(ptr %ptr) #0 {
1018 ; CHECK: // %bb.0:
1025 ; CHECK-NEXT: str x19, [sp, #80] // 8-byte Folded Spill
1026 ; CHECK-NEXT: mov x19, x0
1033 ; CHECK-NEXT: st1w { z0.s }, p0, [x19]
1035 ; CHECK-NEXT: ldr x19, [sp, #80] // 8-byte Folded Reload
1041 %vec = insertelement <vscale x 4 x i32> poison, i32 %res, i32 0
1046 define void @dont_coalesce_res_i64(ptr %ptr) #0 {
1048 ; CHECK: // %bb.0:
1055 ; CHECK-NEXT: str x19, [sp, #80] // 8-byte Folded Spill
1056 ; CHECK-NEXT: mov x19, x0
1063 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
1065 ; CHECK-NEXT: ldr x19, [sp, #80] // 8-byte Folded Reload
1071 %vec = insertelement <vscale x 2 x i64> poison, i64 %res, i32 0
1076 define void @dont_coalesce_res_f16(ptr %ptr) #0 {
1078 ; CHECK: // %bb.0:
1086 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1087 ; CHECK-NEXT: mov x19, x0
1096 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
1098 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1105 %vec = insertelement <vscale x 8 x half> poison, half %res, i32 0
1110 define void @dont_coalesce_res_f32(ptr %ptr) #0 {
1112 ; CHECK: // %bb.0:
1120 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1121 ; CHECK-NEXT: mov x19, x0
1129 ; CHECK-NEXT: st1w { z0.s }, p0, [x19]
1131 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1138 %vec = insertelement <vscale x 4 x float> poison, float %res, i32 0
1143 define void @dont_coalesce_res_f64(ptr %ptr) #0 {
1145 ; CHECK: // %bb.0:
1153 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1154 ; CHECK-NEXT: mov x19, x0
1162 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
1164 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1171 %vec = insertelement <vscale x 2 x double> poison, double %res, i32 0
1180 define void @dont_coalesce_res_v1i8(ptr %ptr) #0 {
1182 ; CHECK: // %bb.0:
1190 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1191 ; CHECK-NEXT: mov x19, x0
1199 ; CHECK-NEXT: st1b { z0.b }, p0, [x19]
1201 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1208 %elt = extractelement <1 x i8> %res, i32 0
1209 %vec = insertelement <vscale x 16 x i8> poison, i8 %elt, i32 0
1214 define void @dont_coalesce_res_v1i16(ptr %ptr) #0 {
1216 ; CHECK: // %bb.0:
1224 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1225 ; CHECK-NEXT: mov x19, x0
1233 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
1235 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1242 %elt = extractelement <1 x i16> %res, i32 0
1243 %vec = insertelement <vscale x 8 x i16> poison, i16 %elt, i32 0
1248 define void @dont_coalesce_res_v1i32(ptr %ptr) #0 {
1250 ; CHECK: // %bb.0:
1258 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1259 ; CHECK-NEXT: mov x19, x0
1267 ; CHECK-NEXT: st1w { z0.s }, p0, [x19]
1269 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1276 %elt = extractelement <1 x i32> %res, i32 0
1277 %vec = insertelement <vscale x 4 x i32> poison, i32 %elt, i32 0
1282 define void @dont_coalesce_res_v1i64(ptr %ptr) #0 {
1284 ; CHECK: // %bb.0:
1292 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1293 ; CHECK-NEXT: mov x19, x0
1301 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
1303 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1310 %elt = extractelement <1 x i64> %res, i32 0
1311 %vec = insertelement <vscale x 2 x i64> poison, i64 %elt, i32 0
1316 define void @dont_coalesce_res_v1f16(ptr %ptr) #0 {
1318 ; CHECK: // %bb.0:
1326 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1327 ; CHECK-NEXT: mov x19, x0
1336 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
1338 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1345 %elt = extractelement <1 x half> %res, i32 0
1346 %vec = insertelement <vscale x 8 x half> poison, half %elt, i32 0
1351 define void @dont_coalesce_res_v1f32(ptr %ptr) #0 {
1353 ; CHECK: // %bb.0:
1361 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1362 ; CHECK-NEXT: mov x19, x0
1370 ; CHECK-NEXT: st1w { z0.s }, p0, [x19]
1372 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1379 %elt = extractelement <1 x float> %res, i32 0
1380 %vec = insertelement <vscale x 4 x float> poison, float %elt, i32 0
1385 define void @dont_coalesce_res_v1f64(ptr %ptr) #0 {
1387 ; CHECK: // %bb.0:
1395 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1396 ; CHECK-NEXT: mov x19, x0
1404 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
1406 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1413 %elt = extractelement <1 x double> %res, i32 0
1414 %vec = insertelement <vscale x 2 x double> poison, double %elt, i32 0
1423 define void @dont_coalesce_res_v16i8(ptr %ptr) #0 {
1425 ; CHECK: // %bb.0:
1433 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1434 ; CHECK-NEXT: mov x19, x0
1443 ; CHECK-NEXT: st1b { z0.b }, p0, [x19]
1445 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1452 %vec = call <vscale x 16 x i8> @llvm.vector.insert.nxv16i8.v16i8(<vscale x 16 x i8> poison, <16 x i8> %res, i64 0)
1457 define void @dont_coalesce_res_v8i16(ptr %ptr) #0 {
1459 ; CHECK: // %bb.0:
1467 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1468 ; CHECK-NEXT: mov x19, x0
1477 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
1479 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1486 %vec = call <vscale x 8 x i16> @llvm.vector.insert.nxv8i16.v8i16(<vscale x 8 x i16> poison, <8 x i16> %res, i64 0)
1491 define void @dont_coalesce_res_v4i32(ptr %ptr) #0 {
1493 ; CHECK: // %bb.0:
1501 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1502 ; CHECK-NEXT: mov x19, x0
1511 ; CHECK-NEXT: st1w { z0.s }, p0, [x19]
1513 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1520 %vec = call <vscale x 4 x i32> @llvm.vector.insert.nxv4i32.v4i32(<vscale x 4 x i32> poison, <4 x i32> %res, i64 0)
1525 define void @dont_coalesce_res_v2i64(ptr %ptr) #0 {
1527 ; CHECK: // %bb.0:
1535 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1536 ; CHECK-NEXT: mov x19, x0
1545 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
1547 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1554 %vec = call <vscale x 2 x i64> @llvm.vector.insert.nxv2i64.v2i64(<vscale x 2 x i64> poison, <2 x i64> %res, i64 0)
1559 define void @dont_coalesce_res_v8f16(ptr %ptr) #0 {
1561 ; CHECK: // %bb.0:
1569 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1570 ; CHECK-NEXT: mov x19, x0
1579 ; CHECK-NEXT: st1h { z0.h }, p0, [x19]
1581 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1588 %vec = call <vscale x 8 x half> @llvm.vector.insert.nxv8f16.v8f16(<vscale x 8 x half> poison, <8 x half> %res, i64 0)
1593 define void @dont_coalesce_res_v4f32(ptr %ptr) #0 {
1595 ; CHECK: // %bb.0:
1603 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1604 ; CHECK-NEXT: mov x19, x0
1613 ; CHECK-NEXT: st1w { z0.s }, p0, [x19]
1615 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1622 %vec = call <vscale x 4 x float> @llvm.vector.insert.nxv4f32.v4f32(<vscale x 4 x float> poison, <4 x float> %res, i64 0)
1627 define void @dont_coalesce_res_v2f64(ptr %ptr) #0 {
1629 ; CHECK: // %bb.0:
1637 ; CHECK-NEXT: str x19, [sp, #96] // 8-byte Folded Spill
1638 ; CHECK-NEXT: mov x19, x0
1647 ; CHECK-NEXT: st1d { z0.d }, p0, [x19]
1649 ; CHECK-NEXT: ldr x19, [sp, #96] // 8-byte Folded Reload
1656 %vec = call <vscale x 2 x double> @llvm.vector.insert.nxv2f64.v2f64(<vscale x 2 x double> poison, <2 x double> %res, i64 0)
1718 attributes #0 = { nounwind "aarch64_pstate_sm_enabled" "target-features"="+sve,+sme" }