@@ -217,6 +217,8 @@ define amdgpu_kernel void @test_double16(<16 x double> %a) !kernel_arg_addr_spac
217
217
; CHECK-NEXT: .long 8
218
218
; CHECK-NEXT: .byte 10
219
219
; CHECK-NEXT: .long 8
220
+ ; CHECK-NEXT: .byte 32
221
+ ; CHECK-NEXT: .long 4
220
222
; CHECK-NEXT: .byte 11
221
223
; CHECK-NEXT: .long 5
222
224
; CHECK-NEXT: .ascii "int *"
@@ -331,6 +333,8 @@ define amdgpu_kernel void @test_queue(%opencl.queue_t addrspace(1)* %a) !kernel_
331
333
; CHECK-NEXT: .long 4
332
334
; CHECK-NEXT: .byte 10
333
335
; CHECK-NEXT: .long 4
336
+ ; CHECK-NEXT: .byte 32
337
+ ; CHECK-NEXT: .long 4
334
338
; CHECK-NEXT: .byte 11
335
339
; CHECK-NEXT: .long 8
336
340
; CHECK-NEXT: .ascii "struct A"
@@ -444,6 +448,8 @@ define amdgpu_kernel void @test_multi_arg(i32 %a, <2 x i16> %b, <3 x i8> %c) !ke
444
448
; CHECK-NEXT: .long 8
445
449
; CHECK-NEXT: .byte 10
446
450
; CHECK-NEXT: .long 8
451
+ ; CHECK-NEXT: .byte 32
452
+ ; CHECK-NEXT: .long 4
447
453
; CHECK-NEXT: .byte 11
448
454
; CHECK-NEXT: .long 5
449
455
; CHECK-NEXT: .ascii "int *"
@@ -461,6 +467,8 @@ define amdgpu_kernel void @test_multi_arg(i32 %a, <2 x i16> %b, <3 x i8> %c) !ke
461
467
; CHECK-NEXT: .long 8
462
468
; CHECK-NEXT: .byte 10
463
469
; CHECK-NEXT: .long 8
470
+ ; CHECK-NEXT: .byte 32
471
+ ; CHECK-NEXT: .long 4
464
472
; CHECK-NEXT: .byte 11
465
473
; CHECK-NEXT: .long 5
466
474
; CHECK-NEXT: .ascii "int *"
@@ -478,6 +486,8 @@ define amdgpu_kernel void @test_multi_arg(i32 %a, <2 x i16> %b, <3 x i8> %c) !ke
478
486
; CHECK-NEXT: .long 4
479
487
; CHECK-NEXT: .byte 10
480
488
; CHECK-NEXT: .long 4
489
+ ; CHECK-NEXT: .byte 32
490
+ ; CHECK-NEXT: .long 4
481
491
; CHECK-NEXT: .byte 11
482
492
; CHECK-NEXT: .long 5
483
493
; CHECK-NEXT: .ascii "int *"
@@ -507,6 +517,8 @@ define amdgpu_kernel void @test_addr_space(i32 addrspace(1)* %g, i32 addrspace(2
507
517
; CHECK-NEXT: .long 8
508
518
; CHECK-NEXT: .byte 10
509
519
; CHECK-NEXT: .long 8
520
+ ; CHECK-NEXT: .byte 32
521
+ ; CHECK-NEXT: .long 4
510
522
; CHECK-NEXT: .byte 11
511
523
; CHECK-NEXT: .long 5
512
524
; CHECK-NEXT: .ascii "int *"
@@ -525,6 +537,8 @@ define amdgpu_kernel void @test_addr_space(i32 addrspace(1)* %g, i32 addrspace(2
525
537
; CHECK-NEXT: .long 8
526
538
; CHECK-NEXT: .byte 10
527
539
; CHECK-NEXT: .long 8
540
+ ; CHECK-NEXT: .byte 32
541
+ ; CHECK-NEXT: .long 4
528
542
; CHECK-NEXT: .byte 11
529
543
; CHECK-NEXT: .long 5
530
544
; CHECK-NEXT: .ascii "int *"
@@ -915,6 +929,8 @@ define amdgpu_kernel void @test_wgs_hint_vec_type_hint(i32 %a) !kernel_arg_addr_
915
929
; CHECK-NEXT: .long 8
916
930
; CHECK-NEXT: .byte 10
917
931
; CHECK-NEXT: .long 8
932
+ ; CHECK-NEXT: .byte 32
933
+ ; CHECK-NEXT: .long 4
918
934
; CHECK-NEXT: .byte 11
919
935
; CHECK-NEXT: .long 6
920
936
; CHECK-NEXT: .ascii "int **"
@@ -944,6 +960,8 @@ define amdgpu_kernel void @test_arg_ptr_to_ptr(i32 * addrspace(1)* %a) !kernel_a
944
960
; CHECK-NEXT: .long 4
945
961
; CHECK-NEXT: .byte 10
946
962
; CHECK-NEXT: .long 4
963
+ ; CHECK-NEXT: .byte 32
964
+ ; CHECK-NEXT: .long 8
947
965
; CHECK-NEXT: .byte 11
948
966
; CHECK-NEXT: .long 8
949
967
; CHECK-NEXT: .ascii "struct B"
@@ -1018,6 +1036,151 @@ define amdgpu_kernel void @test_arg_unknown_builtin_type(%opencl.clk_event_t add
1018
1036
ret void
1019
1037
}
1020
1038
1039
+ ; CHECK-LABEL:{{^}}test_pointee_align:
1040
+ ; CHECK: .section .AMDGPU.runtime_metadata
1041
+ ; CHECK-NEXT: .byte 4
1042
+ ; CHECK-NEXT: .byte 6
1043
+ ; CHECK-NEXT: .long 18
1044
+ ; CHECK-NEXT: .ascii "test_pointee_align"
1045
+ ; CHECK-NEXT: .byte 7
1046
+ ; CHECK-NEXT: .byte 9
1047
+ ; CHECK-NEXT: .long 8
1048
+ ; CHECK-NEXT: .byte 10
1049
+ ; CHECK-NEXT: .long 8
1050
+ ; CHECK-NEXT: .byte 32
1051
+ ; CHECK-NEXT: .long 8
1052
+ ; CHECK-NEXT: .byte 11
1053
+ ; CHECK-NEXT: .long 6
1054
+ ; CHECK-NEXT: .ascii "long *"
1055
+ ; CHECK-NEXT: .byte 13
1056
+ ; CHECK-NEXT: .byte 1
1057
+ ; CHECK-NEXT: .byte 14
1058
+ ; CHECK-NEXT: .short 9
1059
+ ; CHECK-NEXT: .byte 16
1060
+ ; CHECK-NEXT: .byte 0
1061
+ ; CHECK-NEXT: .byte 15
1062
+ ; CHECK-NEXT: .byte 1
1063
+ ; CHECK-NEXT: .byte 8
1064
+ ; CHECK-NEXT: .byte 7
1065
+ ; CHECK-NEXT: .byte 9
1066
+ ; CHECK-NEXT: .long 4
1067
+ ; CHECK-NEXT: .byte 10
1068
+ ; CHECK-NEXT: .long 4
1069
+ ; CHECK-NEXT: .byte 32
1070
+ ; CHECK-NEXT: .long 1
1071
+ ; CHECK-NEXT: .byte 11
1072
+ ; CHECK-NEXT: .long 6
1073
+ ; CHECK-NEXT: .ascii "char *"
1074
+ ; CHECK-NEXT: .byte 13
1075
+ ; CHECK-NEXT: .byte 1
1076
+ ; CHECK-NEXT: .byte 14
1077
+ ; CHECK-NEXT: .short 1
1078
+ ; CHECK-NEXT: .byte 16
1079
+ ; CHECK-NEXT: .byte 0
1080
+ ; CHECK-NEXT: .byte 15
1081
+ ; CHECK-NEXT: .byte 3
1082
+ ; CHECK-NEXT: .byte 8
1083
+ ; CHECK-NEXT: .byte 7
1084
+ ; CHECK-NEXT: .byte 9
1085
+ ; CHECK-NEXT: .long 4
1086
+ ; CHECK-NEXT: .byte 10
1087
+ ; CHECK-NEXT: .long 4
1088
+ ; CHECK-NEXT: .byte 32
1089
+ ; CHECK-NEXT: .long 2
1090
+ ; CHECK-NEXT: .byte 11
1091
+ ; CHECK-NEXT: .long 7
1092
+ ; CHECK-NEXT: .ascii "char2 *"
1093
+ ; CHECK-NEXT: .byte 13
1094
+ ; CHECK-NEXT: .byte 1
1095
+ ; CHECK-NEXT: .byte 14
1096
+ ; CHECK-NEXT: .short 1
1097
+ ; CHECK-NEXT: .byte 16
1098
+ ; CHECK-NEXT: .byte 0
1099
+ ; CHECK-NEXT: .byte 15
1100
+ ; CHECK-NEXT: .byte 3
1101
+ ; CHECK-NEXT: .byte 8
1102
+ ; CHECK-NEXT: .byte 7
1103
+ ; CHECK-NEXT: .byte 9
1104
+ ; CHECK-NEXT: .long 4
1105
+ ; CHECK-NEXT: .byte 10
1106
+ ; CHECK-NEXT: .long 4
1107
+ ; CHECK-NEXT: .byte 32
1108
+ ; CHECK-NEXT: .long 4
1109
+ ; CHECK-NEXT: .byte 11
1110
+ ; CHECK-NEXT: .long 7
1111
+ ; CHECK-NEXT: .ascii "char3 *"
1112
+ ; CHECK-NEXT: .byte 13
1113
+ ; CHECK-NEXT: .byte 1
1114
+ ; CHECK-NEXT: .byte 14
1115
+ ; CHECK-NEXT: .short 1
1116
+ ; CHECK-NEXT: .byte 16
1117
+ ; CHECK-NEXT: .byte 0
1118
+ ; CHECK-NEXT: .byte 15
1119
+ ; CHECK-NEXT: .byte 3
1120
+ ; CHECK-NEXT: .byte 8
1121
+ ; CHECK-NEXT: .byte 7
1122
+ ; CHECK-NEXT: .byte 9
1123
+ ; CHECK-NEXT: .long 4
1124
+ ; CHECK-NEXT: .byte 10
1125
+ ; CHECK-NEXT: .long 4
1126
+ ; CHECK-NEXT: .byte 32
1127
+ ; CHECK-NEXT: .long 4
1128
+ ; CHECK-NEXT: .byte 11
1129
+ ; CHECK-NEXT: .long 7
1130
+ ; CHECK-NEXT: .ascii "char4 *"
1131
+ ; CHECK-NEXT: .byte 13
1132
+ ; CHECK-NEXT: .byte 1
1133
+ ; CHECK-NEXT: .byte 14
1134
+ ; CHECK-NEXT: .short 1
1135
+ ; CHECK-NEXT: .byte 16
1136
+ ; CHECK-NEXT: .byte 0
1137
+ ; CHECK-NEXT: .byte 15
1138
+ ; CHECK-NEXT: .byte 3
1139
+ ; CHECK-NEXT: .byte 8
1140
+ ; CHECK-NEXT: .byte 7
1141
+ ; CHECK-NEXT: .byte 9
1142
+ ; CHECK-NEXT: .long 4
1143
+ ; CHECK-NEXT: .byte 10
1144
+ ; CHECK-NEXT: .long 4
1145
+ ; CHECK-NEXT: .byte 32
1146
+ ; CHECK-NEXT: .long 8
1147
+ ; CHECK-NEXT: .byte 11
1148
+ ; CHECK-NEXT: .long 7
1149
+ ; CHECK-NEXT: .ascii "char8 *"
1150
+ ; CHECK-NEXT: .byte 13
1151
+ ; CHECK-NEXT: .byte 1
1152
+ ; CHECK-NEXT: .byte 14
1153
+ ; CHECK-NEXT: .short 1
1154
+ ; CHECK-NEXT: .byte 16
1155
+ ; CHECK-NEXT: .byte 0
1156
+ ; CHECK-NEXT: .byte 15
1157
+ ; CHECK-NEXT: .byte 3
1158
+ ; CHECK-NEXT: .byte 8
1159
+ ; CHECK-NEXT: .byte 7
1160
+ ; CHECK-NEXT: .byte 9
1161
+ ; CHECK-NEXT: .long 4
1162
+ ; CHECK-NEXT: .byte 10
1163
+ ; CHECK-NEXT: .long 4
1164
+ ; CHECK-NEXT: .byte 32
1165
+ ; CHECK-NEXT: .long 16
1166
+ ; CHECK-NEXT: .byte 11
1167
+ ; CHECK-NEXT: .long 8
1168
+ ; CHECK-NEXT: .ascii "char16 *"
1169
+ ; CHECK-NEXT: .byte 13
1170
+ ; CHECK-NEXT: .byte 1
1171
+ ; CHECK-NEXT: .byte 14
1172
+ ; CHECK-NEXT: .short 1
1173
+ ; CHECK-NEXT: .byte 16
1174
+ ; CHECK-NEXT: .byte 0
1175
+ ; CHECK-NEXT: .byte 15
1176
+ ; CHECK-NEXT: .byte 3
1177
+ ; CHECK-NEXT: .byte 8
1178
+ ; CHECK-NEXT: .byte 5
1179
+
1180
+ define amdgpu_kernel void @test_pointee_align (i64 addrspace (1 )* %a , i8 addrspace (3 )* %b , <2 x i8 > addrspace (3 )* %c , <3 x i8 > addrspace (3 )* %d , <4 x i8 > addrspace (3 )* %e , <8 x i8 > addrspace (3 )* %f , <16 x i8 > addrspace (3 )* %g ) !kernel_arg_addr_space !91 !kernel_arg_access_qual !92 !kernel_arg_type !93 !kernel_arg_base_type !93 !kernel_arg_type_qual !94 {
1181
+ ret void
1182
+ }
1183
+
1021
1184
!1 = !{i32 0 }
1022
1185
!2 = !{!"none" }
1023
1186
!3 = !{!"int" }
@@ -1063,3 +1226,7 @@ define amdgpu_kernel void @test_arg_unknown_builtin_type(%opencl.clk_event_t add
1063
1226
!84 = !{!"clk_event_t" }
1064
1227
!opencl.ocl.version = !{!90 }
1065
1228
!90 = !{i32 2 , i32 0 }
1229
+ !91 = !{i32 0 , i32 3 , i32 3 , i32 3 , i32 3 , i32 3 , i32 3 }
1230
+ !92 = !{!"none" , !"none" , !"none" , !"none" , !"none" , !"none" , !"none" }
1231
+ !93 = !{!"long *" , !"char *" , !"char2 *" , !"char3 *" , !"char4 *" , !"char8 *" , !"char16 *" }
1232
+ !94 = !{!"" , !"" , !"" , !"" , !"" , !"" , !"" }
0 commit comments