@@ -151,12 +151,11 @@ define void @dont_coalesce_arg_f16(half %arg, ptr %ptr) #0 {
151151; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
152152; CHECK-NEXT: sub sp, sp, #16
153153; CHECK-NEXT: addvl sp, sp, #-1
154- ; CHECK-NEXT: // kill: def $h0 killed $h0 def $z0
155154; CHECK-NEXT: add x8, sp, #16
156155; CHECK-NEXT: mov x19, x0
157- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
158- ; CHECK-NEXT: // kill: def $h0 killed $h0 killed $z0
159156; CHECK-NEXT: str h0, [sp, #14] // 2-byte Folded Spill
157+ ; CHECK-NEXT: // kill: def $h0 killed $h0 def $z0
158+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
160159; CHECK-NEXT: smstop sm
161160; CHECK-NEXT: ldr h0, [sp, #14] // 2-byte Folded Reload
162161; CHECK-NEXT: bl use_f16
@@ -190,12 +189,11 @@ define void @dont_coalesce_arg_f32(float %arg, ptr %ptr) #0 {
190189; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
191190; CHECK-NEXT: sub sp, sp, #16
192191; CHECK-NEXT: addvl sp, sp, #-1
193- ; CHECK-NEXT: // kill: def $s0 killed $s0 def $z0
194192; CHECK-NEXT: add x8, sp, #16
195193; CHECK-NEXT: mov x19, x0
196- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
197- ; CHECK-NEXT: // kill: def $s0 killed $s0 killed $z0
198194; CHECK-NEXT: str s0, [sp, #12] // 4-byte Folded Spill
195+ ; CHECK-NEXT: // kill: def $s0 killed $s0 def $z0
196+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
199197; CHECK-NEXT: smstop sm
200198; CHECK-NEXT: ldr s0, [sp, #12] // 4-byte Folded Reload
201199; CHECK-NEXT: bl use_f32
@@ -229,12 +227,11 @@ define void @dont_coalesce_arg_f64(double %arg, ptr %ptr) #0 {
229227; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
230228; CHECK-NEXT: sub sp, sp, #16
231229; CHECK-NEXT: addvl sp, sp, #-1
232- ; CHECK-NEXT: // kill: def $d0 killed $d0 def $z0
233230; CHECK-NEXT: add x8, sp, #16
234231; CHECK-NEXT: mov x19, x0
235- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
236- ; CHECK-NEXT: // kill: def $d0 killed $d0 killed $z0
237232; CHECK-NEXT: str d0, [sp, #8] // 8-byte Folded Spill
233+ ; CHECK-NEXT: // kill: def $d0 killed $d0 def $z0
234+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
238235; CHECK-NEXT: smstop sm
239236; CHECK-NEXT: ldr d0, [sp, #8] // 8-byte Folded Reload
240237; CHECK-NEXT: bl use_f64
@@ -273,12 +270,11 @@ define void @dont_coalesce_arg_v1i8(<1 x i8> %arg, ptr %ptr) #0 {
273270; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
274271; CHECK-NEXT: sub sp, sp, #16
275272; CHECK-NEXT: addvl sp, sp, #-1
276- ; CHECK-NEXT: // kill: def $d0 killed $d0 def $z0
277273; CHECK-NEXT: add x8, sp, #16
278274; CHECK-NEXT: mov x19, x0
279- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
280- ; CHECK-NEXT: // kill: def $d0 killed $d0 killed $z0
281275; CHECK-NEXT: str d0, [sp, #8] // 8-byte Folded Spill
276+ ; CHECK-NEXT: // kill: def $d0 killed $d0 def $z0
277+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
282278; CHECK-NEXT: smstop sm
283279; CHECK-NEXT: ldr d0, [sp, #8] // 8-byte Folded Reload
284280; CHECK-NEXT: bl use_v16i8
@@ -313,12 +309,11 @@ define void @dont_coalesce_arg_v1i16(<1 x i16> %arg, ptr %ptr) #0 {
313309; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
314310; CHECK-NEXT: sub sp, sp, #16
315311; CHECK-NEXT: addvl sp, sp, #-1
316- ; CHECK-NEXT: // kill: def $d0 killed $d0 def $z0
317312; CHECK-NEXT: add x8, sp, #16
318313; CHECK-NEXT: mov x19, x0
319- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
320- ; CHECK-NEXT: // kill: def $d0 killed $d0 killed $z0
321314; CHECK-NEXT: str d0, [sp, #8] // 8-byte Folded Spill
315+ ; CHECK-NEXT: // kill: def $d0 killed $d0 def $z0
316+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
322317; CHECK-NEXT: smstop sm
323318; CHECK-NEXT: ldr d0, [sp, #8] // 8-byte Folded Reload
324319; CHECK-NEXT: bl use_v8i16
@@ -353,12 +348,11 @@ define void @dont_coalesce_arg_v1i32(<1 x i32> %arg, ptr %ptr) #0 {
353348; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
354349; CHECK-NEXT: sub sp, sp, #16
355350; CHECK-NEXT: addvl sp, sp, #-1
356- ; CHECK-NEXT: // kill: def $d0 killed $d0 def $z0
357351; CHECK-NEXT: add x8, sp, #16
358352; CHECK-NEXT: mov x19, x0
359- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
360- ; CHECK-NEXT: // kill: def $d0 killed $d0 killed $z0
361353; CHECK-NEXT: str d0, [sp, #8] // 8-byte Folded Spill
354+ ; CHECK-NEXT: // kill: def $d0 killed $d0 def $z0
355+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
362356; CHECK-NEXT: smstop sm
363357; CHECK-NEXT: ldr d0, [sp, #8] // 8-byte Folded Reload
364358; CHECK-NEXT: bl use_v4i32
@@ -393,12 +387,11 @@ define void @dont_coalesce_arg_v1i64(<1 x i64> %arg, ptr %ptr) #0 {
393387; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
394388; CHECK-NEXT: sub sp, sp, #16
395389; CHECK-NEXT: addvl sp, sp, #-1
396- ; CHECK-NEXT: // kill: def $d0 killed $d0 def $z0
397390; CHECK-NEXT: add x8, sp, #16
398391; CHECK-NEXT: mov x19, x0
399- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
400- ; CHECK-NEXT: // kill: def $d0 killed $d0 killed $z0
401392; CHECK-NEXT: str d0, [sp, #8] // 8-byte Folded Spill
393+ ; CHECK-NEXT: // kill: def $d0 killed $d0 def $z0
394+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
402395; CHECK-NEXT: smstop sm
403396; CHECK-NEXT: ldr d0, [sp, #8] // 8-byte Folded Reload
404397; CHECK-NEXT: bl use_v2i64
@@ -433,12 +426,11 @@ define void @dont_coalesce_arg_v1f16(<1 x half> %arg, ptr %ptr) #0 {
433426; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
434427; CHECK-NEXT: sub sp, sp, #16
435428; CHECK-NEXT: addvl sp, sp, #-1
436- ; CHECK-NEXT: // kill: def $h0 killed $h0 def $z0
437429; CHECK-NEXT: add x8, sp, #16
438430; CHECK-NEXT: mov x19, x0
439- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
440- ; CHECK-NEXT: // kill: def $h0 killed $h0 killed $z0
441431; CHECK-NEXT: str h0, [sp, #14] // 2-byte Folded Spill
432+ ; CHECK-NEXT: // kill: def $h0 killed $h0 def $z0
433+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
442434; CHECK-NEXT: smstop sm
443435; CHECK-NEXT: ldr h0, [sp, #14] // 2-byte Folded Reload
444436; CHECK-NEXT: bl use_v8f16
@@ -513,12 +505,11 @@ define void @dont_coalesce_arg_v1f64(<1 x double> %arg, ptr %ptr) #0 {
513505; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
514506; CHECK-NEXT: sub sp, sp, #16
515507; CHECK-NEXT: addvl sp, sp, #-1
516- ; CHECK-NEXT: // kill: def $d0 killed $d0 def $z0
517508; CHECK-NEXT: add x8, sp, #16
518509; CHECK-NEXT: mov x19, x0
519- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
520- ; CHECK-NEXT: // kill: def $d0 killed $d0 killed $z0
521510; CHECK-NEXT: str d0, [sp, #8] // 8-byte Folded Spill
511+ ; CHECK-NEXT: // kill: def $d0 killed $d0 def $z0
512+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
522513; CHECK-NEXT: smstop sm
523514; CHECK-NEXT: ldr d0, [sp, #8] // 8-byte Folded Reload
524515; CHECK-NEXT: bl use_v2f64
@@ -557,12 +548,11 @@ define void @dont_coalesce_arg_v16i8(<16 x i8> %arg, ptr %ptr) #0 {
557548; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
558549; CHECK-NEXT: sub sp, sp, #16
559550; CHECK-NEXT: addvl sp, sp, #-1
560- ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
561551; CHECK-NEXT: add x8, sp, #16
562552; CHECK-NEXT: mov x19, x0
563- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
564- ; CHECK-NEXT: // kill: def $q0 killed $q0 killed $z0
565553; CHECK-NEXT: str q0, [sp] // 16-byte Folded Spill
554+ ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
555+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
566556; CHECK-NEXT: smstop sm
567557; CHECK-NEXT: ldr q0, [sp] // 16-byte Folded Reload
568558; CHECK-NEXT: bl use_v16i8
@@ -596,12 +586,11 @@ define void @dont_coalesce_arg_v8i16(<8 x i16> %arg, ptr %ptr) #0 {
596586; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
597587; CHECK-NEXT: sub sp, sp, #16
598588; CHECK-NEXT: addvl sp, sp, #-1
599- ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
600589; CHECK-NEXT: add x8, sp, #16
601590; CHECK-NEXT: mov x19, x0
602- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
603- ; CHECK-NEXT: // kill: def $q0 killed $q0 killed $z0
604591; CHECK-NEXT: str q0, [sp] // 16-byte Folded Spill
592+ ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
593+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
605594; CHECK-NEXT: smstop sm
606595; CHECK-NEXT: ldr q0, [sp] // 16-byte Folded Reload
607596; CHECK-NEXT: bl use_v8i16
@@ -635,12 +624,11 @@ define void @dont_coalesce_arg_v4i32(<4 x i32> %arg, ptr %ptr) #0 {
635624; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
636625; CHECK-NEXT: sub sp, sp, #16
637626; CHECK-NEXT: addvl sp, sp, #-1
638- ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
639627; CHECK-NEXT: add x8, sp, #16
640628; CHECK-NEXT: mov x19, x0
641- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
642- ; CHECK-NEXT: // kill: def $q0 killed $q0 killed $z0
643629; CHECK-NEXT: str q0, [sp] // 16-byte Folded Spill
630+ ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
631+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
644632; CHECK-NEXT: smstop sm
645633; CHECK-NEXT: ldr q0, [sp] // 16-byte Folded Reload
646634; CHECK-NEXT: bl use_v4i32
@@ -674,12 +662,11 @@ define void @dont_coalesce_arg_v2i64(<2 x i64> %arg, ptr %ptr) #0 {
674662; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
675663; CHECK-NEXT: sub sp, sp, #16
676664; CHECK-NEXT: addvl sp, sp, #-1
677- ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
678665; CHECK-NEXT: add x8, sp, #16
679666; CHECK-NEXT: mov x19, x0
680- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
681- ; CHECK-NEXT: // kill: def $q0 killed $q0 killed $z0
682667; CHECK-NEXT: str q0, [sp] // 16-byte Folded Spill
668+ ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
669+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
683670; CHECK-NEXT: smstop sm
684671; CHECK-NEXT: ldr q0, [sp] // 16-byte Folded Reload
685672; CHECK-NEXT: bl use_v2i64
@@ -713,12 +700,11 @@ define void @dont_coalesce_arg_v8f16(<8 x half> %arg, ptr %ptr) #0 {
713700; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
714701; CHECK-NEXT: sub sp, sp, #16
715702; CHECK-NEXT: addvl sp, sp, #-1
716- ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
717703; CHECK-NEXT: add x8, sp, #16
718704; CHECK-NEXT: mov x19, x0
719- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
720- ; CHECK-NEXT: // kill: def $q0 killed $q0 killed $z0
721705; CHECK-NEXT: str q0, [sp] // 16-byte Folded Spill
706+ ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
707+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
722708; CHECK-NEXT: smstop sm
723709; CHECK-NEXT: ldr q0, [sp] // 16-byte Folded Reload
724710; CHECK-NEXT: bl use_v8f16
@@ -752,12 +738,11 @@ define void @dont_coalesce_arg_v8bf16(<8 x bfloat> %arg, ptr %ptr) #0 {
752738; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
753739; CHECK-NEXT: sub sp, sp, #16
754740; CHECK-NEXT: addvl sp, sp, #-1
755- ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
756741; CHECK-NEXT: add x8, sp, #16
757742; CHECK-NEXT: mov x19, x0
758- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
759- ; CHECK-NEXT: // kill: def $q0 killed $q0 killed $z0
760743; CHECK-NEXT: str q0, [sp] // 16-byte Folded Spill
744+ ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
745+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
761746; CHECK-NEXT: smstop sm
762747; CHECK-NEXT: ldr q0, [sp] // 16-byte Folded Reload
763748; CHECK-NEXT: bl use_v8bf16
@@ -791,12 +776,11 @@ define void @dont_coalesce_arg_v4f32(<4 x float> %arg, ptr %ptr) #0 {
791776; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
792777; CHECK-NEXT: sub sp, sp, #16
793778; CHECK-NEXT: addvl sp, sp, #-1
794- ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
795779; CHECK-NEXT: add x8, sp, #16
796780; CHECK-NEXT: mov x19, x0
797- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
798- ; CHECK-NEXT: // kill: def $q0 killed $q0 killed $z0
799781; CHECK-NEXT: str q0, [sp] // 16-byte Folded Spill
782+ ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
783+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
800784; CHECK-NEXT: smstop sm
801785; CHECK-NEXT: ldr q0, [sp] // 16-byte Folded Reload
802786; CHECK-NEXT: bl use_v4f32
@@ -830,12 +814,11 @@ define void @dont_coalesce_arg_v2f64(<2 x double> %arg, ptr %ptr) #0 {
830814; CHECK-NEXT: stp x30, x19, [sp, #80] // 16-byte Folded Spill
831815; CHECK-NEXT: sub sp, sp, #16
832816; CHECK-NEXT: addvl sp, sp, #-1
833- ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
834817; CHECK-NEXT: add x8, sp, #16
835818; CHECK-NEXT: mov x19, x0
836- ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
837- ; CHECK-NEXT: // kill: def $q0 killed $q0 killed $z0
838819; CHECK-NEXT: str q0, [sp] // 16-byte Folded Spill
820+ ; CHECK-NEXT: // kill: def $q0 killed $q0 def $z0
821+ ; CHECK-NEXT: str z0, [x8] // 16-byte Folded Spill
839822; CHECK-NEXT: smstop sm
840823; CHECK-NEXT: ldr q0, [sp] // 16-byte Folded Reload
841824; CHECK-NEXT: bl use_v2f64
0 commit comments