@@ -583,67 +583,67 @@ entry:
583
583
584
584
585
585
586
- declare void @streaming_body () "aarch64_pstate_sm_enabled"
586
+ declare void @nonstreaming_body ()
587
587
588
- define void @streaming_caller_single_streaming_callee () #0 "aarch64_pstate_sm_enabled" {
589
- ; CHECK-LABEL: define void @streaming_caller_single_streaming_callee
590
- ; CHECK-SAME: () #[[ATTR2 ]] {
591
- ; CHECK-NEXT: call void @streaming_body ()
588
+ define void @nonstreaming_caller_single_nonstreaming_callee () #0 {
589
+ ; CHECK-LABEL: define void @nonstreaming_caller_single_nonstreaming_callee
590
+ ; CHECK-SAME: () #[[ATTR1 ]] {
591
+ ; CHECK-NEXT: call void @nonstreaming_body ()
592
592
; CHECK-NEXT: ret void
593
593
;
594
- call void @streaming_body ()
594
+ call void @nonstreaming_body ()
595
595
ret void
596
596
}
597
597
598
- define void @streaming_caller_multiple_streaming_callees () #0 "aarch64_pstate_sm_enabled" {
599
- ; CHECK-LABEL: define void @streaming_caller_multiple_streaming_callees
600
- ; CHECK-SAME: () #[[ATTR2 ]] {
601
- ; CHECK-NEXT: call void @streaming_body ()
602
- ; CHECK-NEXT: call void @streaming_body ()
598
+ define void @nonstreaming_caller_multiple_nonstreaming_callees () #0 {
599
+ ; CHECK-LABEL: define void @nonstreaming_caller_multiple_nonstreaming_callees
600
+ ; CHECK-SAME: () #[[ATTR1 ]] {
601
+ ; CHECK-NEXT: call void @nonstreaming_body ()
602
+ ; CHECK-NEXT: call void @nonstreaming_body ()
603
603
; CHECK-NEXT: ret void
604
604
;
605
- call void @streaming_body ()
606
- call void @streaming_body ()
605
+ call void @nonstreaming_body ()
606
+ call void @nonstreaming_body ()
607
607
ret void
608
608
}
609
609
610
610
; Allow inlining, as inline it would not increase the number of streaming-mode changes.
611
- define void @streaming_caller_single_streaming_callee_inline () #0 {
611
+ define void @streaming_caller_to_nonstreaming_callee_with_single_nonstreaming_callee_inline () #0 "aarch64_pstate_sm_enabled" {
612
612
; CHECK-LABEL: define void @streaming_caller_single_streaming_callee_inline
613
- ; CHECK-SAME: () #[[ATTR1 ]] {
614
- ; CHECK-NEXT: call void @streaming_caller_single_streaming_callee ()
613
+ ; CHECK-SAME: () #[[ATTR2 ]] {
614
+ ; CHECK-NEXT: call void @nonstreaming_body ()
615
615
; CHECK-NEXT: ret void
616
616
;
617
- call void @streaming_caller_single_streaming_callee ()
617
+ call void @nonstreaming_caller_single_nonstreaming_callee ()
618
618
ret void
619
619
}
620
620
621
- ; Prevent inlining, as inline it would lead to multiple streaming-mode changes.
622
- define void @streaming_caller_multiple_streaming_callees_dont_inline () #0 {
623
- ; CHECK-LABEL: define void @streaming_caller_multiple_streaming_callees_dont_inline
624
- ; CHECK-SAME: () #[[ATTR1 ]] {
625
- ; CHECK-NEXT: call void @streaming_caller_multiple_streaming_callees ()
621
+ ; Prevent inlining, as inlining it would lead to multiple streaming-mode changes.
622
+ define void @streaming_caller_to_nonstreaming_callee_with_multiple_nonstreaming_callees_dont_inline () #0 "aarch64_pstate_sm_enabled" {
623
+ ; CHECK-LABEL: define void @call_to_nonstreaming_caller_with_multiple_nonstreaming_callees_dont_inline
624
+ ; CHECK-SAME: () #[[ATTR2 ]] {
625
+ ; CHECK-NEXT: call void @nonstreaming_caller_multiple_nonstreaming_callees ()
626
626
; CHECK-NEXT: ret void
627
627
;
628
- call void @streaming_caller_multiple_streaming_callees ()
628
+ call void @streaming_caller_to_nonstreaming_callee_with_multiple_nonstreaming_callees_dont_inline ()
629
629
ret void
630
630
}
631
631
632
632
declare void @streaming_compatible_body () "aarch64_pstate_sm_compatible"
633
633
634
- define void @streaming_caller_single_streaming_compatible_callee () #0 "aarch64_pstate_sm_enabled" {
635
- ; CHECK-LABEL: define void @streaming_caller_single_streaming_compatible_callee
636
- ; CHECK-SAME: () #[[ATTR2 ]] {
634
+ define void @nonstreaming_caller_single_streaming_compatible_callee () #0 {
635
+ ; CHECK-LABEL: define void @nonstreaming_caller_single_streaming_compatible_callee
636
+ ; CHECK-SAME: () #[[ATTR1 ]] {
637
637
; CHECK-NEXT: call void @streaming_compatible_body()
638
638
; CHECK-NEXT: ret void
639
639
;
640
640
call void @streaming_compatible_body ()
641
641
ret void
642
642
}
643
643
644
- define void @streaming_caller_multiple_streaming_compatible_callees () #0 "aarch64_pstate_sm_enabled" {
645
- ; CHECK-LABEL: define void @streaming_caller_multiple_streaming_compatible_callees
646
- ; CHECK-SAME: () #[[ATTR2 ]] {
644
+ define void @nonstreaming_caller_multiple_streaming_compatible_callees () #0 {
645
+ ; CHECK-LABEL: define void @nonstreaming_caller_multiple_streaming_compatible_callees
646
+ ; CHECK-SAME: () #[[ATTR1 ]] {
647
647
; CHECK-NEXT: call void @streaming_compatible_body()
648
648
; CHECK-NEXT: call void @streaming_compatible_body()
649
649
; CHECK-NEXT: ret void
@@ -654,24 +654,25 @@ define void @streaming_caller_multiple_streaming_compatible_callees() #0 "aarch
654
654
}
655
655
656
656
; Allow inlining, as inline would remove a streaming-mode change.
657
- define void @streaming_caller_single_streaming_compatible_callee_inline () #0 {
658
- ; CHECK-LABEL: define void @streaming_caller_single_streaming_compatible_callee_inline
659
- ; CHECK-SAME: () #[[ATTR1 ]] {
660
- ; CHECK-NEXT: call void @streaming_caller_single_streaming_compatible_callee ()
657
+ define void @streaming_caller_to_nonstreaming_callee_with_single_streamingcompatible_callee_inline () #0 "aarch64_pstate_sm_enabled" {
658
+ ; CHECK-LABEL: define void @streaming_caller_to_nonstreaming_callee_with_single_streamingcompatible_callee_inline
659
+ ; CHECK-SAME: () #[[ATTR2 ]] {
660
+ ; CHECK-NEXT: call void @streaming_compatible_body ()
661
661
; CHECK-NEXT: ret void
662
662
;
663
- call void @streaming_caller_single_streaming_compatible_callee ()
663
+ call void @nonstreaming_caller_single_streaming_compatible_callee ()
664
664
ret void
665
665
}
666
666
667
- ; Allow inlining, as inline would remove several stremaing-mode changes.
668
- define void @streaming_caller_multiple_streaming_compatible_callees_inline () #0 {
669
- ; CHECK-LABEL: define void @streaming_caller_multiple_streaming_compatible_callees_inline
670
- ; CHECK-SAME: () #[[ATTR1]] {
671
- ; CHECK-NEXT: call void @streaming_caller_multiple_streaming_compatible_callees()
667
+ ; Allow inlining, as inline would remove several streaming-mode changes.
668
+ define void @streaming_caller_to_nonstreaming_callee_with_multiple_streamingcompatible_callees_inline () #0 "aarch64_pstate_sm_enabled" {
669
+ ; CHECK-LABEL: define void @streaming_caller_to_nonstreaming_callee_with_multiple_streamingcompatible_callees_inline
670
+ ; CHECK-SAME: () #[[ATTR2]] {
671
+ ; CHECK-NEXT: call void @streaming_compatible_body()
672
+ ; CHECK-NEXT: call void @streaming_compatible_body()
672
673
; CHECK-NEXT: ret void
673
674
;
674
- call void @streaming_caller_multiple_streaming_compatible_callees ()
675
+ call void @nonstreaming_caller_multiple_streaming_compatible_callees ()
675
676
ret void
676
677
}
677
678
0 commit comments