@@ -704,80 +704,87 @@ define amdgpu_kernel void @align2_align4_virtreg() {
704
704
define amdgpu_kernel void @kernel_uses_write_register_a55 () {
705
705
; CHECK-LABEL: define amdgpu_kernel void @kernel_uses_write_register_a55(
706
706
; CHECK-SAME: ) #[[ATTR3:[0-9]+]] {
707
- ; CHECK-NEXT: call void @llvm.write_register.i32(metadata !"a55" , i32 0)
707
+ ; CHECK-NEXT: call void @llvm.write_register.i32(metadata [[META0:![0-9]+]] , i32 0)
708
708
; CHECK-NEXT: ret void
709
709
;
710
- call void @llvm.write_register.i64 (metadata !"a55" , i32 0 )
710
+ call void @llvm.write_register.i64 (metadata !0 , i32 0 )
711
711
ret void
712
712
}
713
713
714
714
define amdgpu_kernel void @kernel_uses_write_register_v55 () {
715
715
; CHECK-LABEL: define amdgpu_kernel void @kernel_uses_write_register_v55(
716
716
; CHECK-SAME: ) #[[ATTR4:[0-9]+]] {
717
- ; CHECK-NEXT: call void @llvm.write_register.i32(metadata !"v55" , i32 0)
717
+ ; CHECK-NEXT: call void @llvm.write_register.i32(metadata [[META1:![0-9]+]] , i32 0)
718
718
; CHECK-NEXT: ret void
719
719
;
720
- call void @llvm.write_register.i64 (metadata !"v55" , i32 0 )
720
+ call void @llvm.write_register.i64 (metadata !1 , i32 0 )
721
721
ret void
722
722
}
723
723
724
724
define amdgpu_kernel void @kernel_uses_write_register_a55_57 () {
725
725
; CHECK-LABEL: define amdgpu_kernel void @kernel_uses_write_register_a55_57(
726
726
; CHECK-SAME: ) #[[ATTR3]] {
727
- ; CHECK-NEXT: call void @llvm.write_register.i96(metadata !"a[55:57]" , i96 0)
727
+ ; CHECK-NEXT: call void @llvm.write_register.i96(metadata [[META2:![0-9]+]] , i96 0)
728
728
; CHECK-NEXT: ret void
729
729
;
730
- call void @llvm.write_register.i64 (metadata !"a[55:57]" , i96 0 )
730
+ call void @llvm.write_register.i64 (metadata !2 , i96 0 )
731
731
ret void
732
732
}
733
733
734
734
define amdgpu_kernel void @kernel_uses_read_register_a55 (ptr addrspace (1 ) %ptr ) {
735
735
; CHECK-LABEL: define amdgpu_kernel void @kernel_uses_read_register_a55(
736
736
; CHECK-SAME: ptr addrspace(1) [[PTR:%.*]]) #[[ATTR3]] {
737
- ; CHECK-NEXT: [[REG:%.*]] = call i32 @llvm.read_register.i32(metadata !"a55" )
737
+ ; CHECK-NEXT: [[REG:%.*]] = call i32 @llvm.read_register.i32(metadata [[META0]] )
738
738
; CHECK-NEXT: store i32 [[REG]], ptr addrspace(1) [[PTR]], align 4
739
739
; CHECK-NEXT: ret void
740
740
;
741
- %reg = call i32 @llvm.read_register.i64 (metadata !"a55" )
741
+ %reg = call i32 @llvm.read_register.i64 (metadata !0 )
742
742
store i32 %reg , ptr addrspace (1 ) %ptr
743
743
ret void
744
744
}
745
745
746
746
define amdgpu_kernel void @kernel_uses_read_volatile_register_a55 (ptr addrspace (1 ) %ptr ) {
747
747
; CHECK-LABEL: define amdgpu_kernel void @kernel_uses_read_volatile_register_a55(
748
748
; CHECK-SAME: ptr addrspace(1) [[PTR:%.*]]) #[[ATTR3]] {
749
- ; CHECK-NEXT: [[REG:%.*]] = call i32 @llvm.read_volatile_register.i32(metadata !"a55" )
749
+ ; CHECK-NEXT: [[REG:%.*]] = call i32 @llvm.read_volatile_register.i32(metadata [[META0]] )
750
750
; CHECK-NEXT: store i32 [[REG]], ptr addrspace(1) [[PTR]], align 4
751
751
; CHECK-NEXT: ret void
752
752
;
753
- %reg = call i32 @llvm.read_volatile_register.i64 (metadata !"a55" )
753
+ %reg = call i32 @llvm.read_volatile_register.i64 (metadata !0 )
754
754
store i32 %reg , ptr addrspace (1 ) %ptr
755
755
ret void
756
756
}
757
757
758
758
define amdgpu_kernel void @kernel_uses_read_register_a56_59 (ptr addrspace (1 ) %ptr ) {
759
759
; CHECK-LABEL: define amdgpu_kernel void @kernel_uses_read_register_a56_59(
760
760
; CHECK-SAME: ptr addrspace(1) [[PTR:%.*]]) #[[ATTR3]] {
761
- ; CHECK-NEXT: [[REG:%.*]] = call i128 @llvm.read_register.i128(metadata !"a[56:59]" )
761
+ ; CHECK-NEXT: [[REG:%.*]] = call i128 @llvm.read_register.i128(metadata [[META3:![0-9]+]] )
762
762
; CHECK-NEXT: store i128 [[REG]], ptr addrspace(1) [[PTR]], align 8
763
763
; CHECK-NEXT: ret void
764
764
;
765
- %reg = call i128 @llvm.read_register.i64 (metadata !"a[56:59]" )
765
+ %reg = call i128 @llvm.read_register.i64 (metadata !3 )
766
766
store i128 %reg , ptr addrspace (1 ) %ptr
767
767
ret void
768
768
}
769
769
770
770
define amdgpu_kernel void @kernel_uses_write_register_out_of_bounds_a256 () {
771
771
; CHECK-LABEL: define amdgpu_kernel void @kernel_uses_write_register_out_of_bounds_a256(
772
772
; CHECK-SAME: ) #[[ATTR3]] {
773
- ; CHECK-NEXT: call void @llvm.write_register.i32(metadata !"a256" , i32 0)
773
+ ; CHECK-NEXT: call void @llvm.write_register.i32(metadata [[META4:![0-9]+]] , i32 0)
774
774
; CHECK-NEXT: ret void
775
775
;
776
- call void @llvm.write_register.i64 (metadata !"a256" , i32 0 )
776
+ call void @llvm.write_register.i64 (metadata !4 , i32 0 )
777
777
ret void
778
778
}
779
779
780
780
attributes #0 = { "amdgpu-agpr-alloc" ="0" }
781
+
782
+ !0 = !{!"a55" }
783
+ !1 = !{!"v55" }
784
+ !2 = !{!"a[55:57]" }
785
+ !3 = !{!"a[56:59]" }
786
+ !4 = !{!"a256" }
787
+
781
788
;.
782
789
; CHECK: attributes #[[ATTR0]] = { "amdgpu-agpr-alloc"="0" "target-cpu"="gfx90a" "uniform-work-group-size"="false" }
783
790
; CHECK: attributes #[[ATTR1]] = { "target-cpu"="gfx90a" "uniform-work-group-size"="false" }
@@ -791,3 +798,9 @@ attributes #0 = { "amdgpu-agpr-alloc"="0" }
791
798
; CHECK: attributes #[[ATTR9:[0-9]+]] = { nocallback nounwind "target-cpu"="gfx90a" }
792
799
; CHECK: attributes #[[ATTR10]] = { "amdgpu-agpr-alloc"="0" }
793
800
;.
801
+ ; CHECK: [[META0]] = !{!"a55"}
802
+ ; CHECK: [[META1]] = !{!"v55"}
803
+ ; CHECK: [[META2]] = !{!"a[55:57]"}
804
+ ; CHECK: [[META3]] = !{!"a[56:59]"}
805
+ ; CHECK: [[META4]] = !{!"a256"}
806
+ ;.
0 commit comments