@@ -86,19 +86,9 @@ class C {
86
86
87
87
#pragma omp declare mapper(id: C s) map(s.a, s.b[0:2])
88
88
89
- // CK0: define {{.*}}void [[MPRFUNC:@[.]omp_mapper[.].*C[.]id]](ptr{{.*}}, ptr{{.*}}, ptr{{.*}}, i64{{.*}}, i64{{.*}}, ptr{{.*}})
90
- // CK0: store ptr %{{[^,]+}}, ptr [[HANDLEADDR:%[^,]+]]
91
- // CK0: store ptr %{{[^,]+}}, ptr [[BPTRADDR:%[^,]+]]
92
- // CK0: store ptr %{{[^,]+}}, ptr [[VPTRADDR:%[^,]+]]
93
- // CK0: store i64 %{{[^,]+}}, ptr [[SIZEADDR:%[^,]+]]
94
- // CK0: store i64 %{{[^,]+}}, ptr [[TYPEADDR:%[^,]+]]
95
- // CK0-DAG: [[BYTESIZE:%.+]] = load i64, ptr [[SIZEADDR]]
89
+ // CK0: define {{.*}}void [[MPRFUNC:@[.]omp_mapper[.].*C[.]id]](ptr noundef [[HANDLE:%.+]], ptr noundef [[BPTR:%.+]], ptr noundef [[BEGIN:%.+]], i64 noundef [[BYTESIZE:%.+]], i64 noundef [[TYPE:%.+]], ptr{{.*}})
96
90
// CK0-64-DAG: [[SIZE:%.+]] = udiv exact i64 [[BYTESIZE]], 16
97
91
// CK0-32-DAG: [[SIZE:%.+]] = udiv exact i64 [[BYTESIZE]], 8
98
- // CK0-DAG: [[TYPE:%.+]] = load i64, ptr [[TYPEADDR]]
99
- // CK0-DAG: [[HANDLE:%.+]] = load ptr, ptr [[HANDLEADDR]]
100
- // CK0-DAG: [[BPTR:%.+]] = load ptr, ptr [[BPTRADDR]]
101
- // CK0-DAG: [[BEGIN:%.+]] = load ptr, ptr [[VPTRADDR]]
102
92
// CK0-DAG: [[ISARRAY:%.+]] = icmp sgt i64 [[SIZE]], 1
103
93
// CK0-DAG: [[PTREND:%.+]] = getelementptr %class.C, ptr [[BEGIN]], i64 [[SIZE]]
104
94
// CK0-DAG: [[PTRSNE:%.+]] = icmp ne ptr [[BPTR]], [[BEGIN]]
@@ -597,18 +587,8 @@ class C {
597
587
598
588
#pragma omp declare mapper(id: C<int> s) map(s.a)
599
589
600
- // CK1-LABEL: define {{.*}}void @.omp_mapper.{{.*}}C{{.*}}.id{{.*}}(ptr{{.*}}, ptr{{.*}}, ptr{{.*}}, i64{{.*}}, i64{{.*}}, ptr{{.*}})
601
- // CK1: store ptr %{{[^,]+}}, ptr [[HANDLEADDR:%[^,]+]]
602
- // CK1: store ptr %{{[^,]+}}, ptr [[BPTRADDR:%[^,]+]]
603
- // CK1: store ptr %{{[^,]+}}, ptr [[VPTRADDR:%[^,]+]]
604
- // CK1: store i64 %{{[^,]+}}, ptr [[SIZEADDR:%[^,]+]]
605
- // CK1: store i64 %{{[^,]+}}, ptr [[TYPEADDR:%[^,]+]]
606
- // CK1-DAG: [[BYTESIZE:%.+]] = load i64, ptr [[SIZEADDR]]
590
+ // CK1: define {{.*}}void @.omp_mapper.{{.*}}C{{.*}}.id{{.*}}(ptr noundef [[HANDLE:%.+]], ptr noundef [[BPTR:%.+]], ptr noundef [[BEGIN:%.+]], i64 noundef [[BYTESIZE:%.+]], i64 noundef [[TYPE:%.+]], ptr{{.*}})
607
591
// CK1-DAG: [[SIZE:%.+]] = udiv exact i64 [[BYTESIZE]], 4
608
- // CK1-DAG: [[TYPE:%.+]] = load i64, ptr [[TYPEADDR]]
609
- // CK1-DAG: [[HANDLE:%.+]] = load ptr, ptr [[HANDLEADDR]]
610
- // CK1-DAG: [[BPTR:%.+]] = load ptr, ptr [[BPTRADDR]]
611
- // CK1-DAG: [[BEGIN:%.+]] = load ptr, ptr [[VPTRADDR]]
612
592
// CK1-DAG: [[PTREND:%.+]] = getelementptr %class.C, ptr [[BEGIN]], i64 [[SIZE]]
613
593
// CK1-DAG: [[ISARRAY:%.+]] = icmp sgt i64 [[SIZE]], 1
614
594
// CK1-DAG: [[PTRSNE:%.+]] = icmp ne ptr [[BPTR]], [[BEGIN]]
@@ -717,18 +697,8 @@ class C {
717
697
718
698
// CK2: define {{.*}}void [[BMPRFUNC:@[.]omp_mapper[.].*B[.]default]](ptr{{.*}}, ptr{{.*}}, ptr{{.*}}, i64{{.*}}, i64{{.*}}, ptr{{.*}})
719
699
720
- // CK2-LABEL: define {{.*}}void @.omp_mapper.{{.*}}C{{.*}}.id(ptr{{.*}}, ptr{{.*}}, ptr{{.*}}, i64{{.*}}, i64{{.*}}, ptr{{.*}})
721
- // CK2: store ptr %{{[^,]+}}, ptr [[HANDLEADDR:%[^,]+]]
722
- // CK2: store ptr %{{[^,]+}}, ptr [[BPTRADDR:%[^,]+]]
723
- // CK2: store ptr %{{[^,]+}}, ptr [[VPTRADDR:%[^,]+]]
724
- // CK2: store i64 %{{[^,]+}}, ptr [[SIZEADDR:%[^,]+]]
725
- // CK2: store i64 %{{[^,]+}}, ptr [[TYPEADDR:%[^,]+]]
726
- // CK2-DAG: [[BYTESIZE:%.+]] = load i64, ptr [[SIZEADDR]]
700
+ // CK2: define {{.*}}void @.omp_mapper.{{.*}}C{{.*}}.id(ptr noundef [[HANDLE:%.+]], ptr noundef [[BPTR:%.+]], ptr noundef [[BEGIN:%.+]], i64 noundef [[BYTESIZE:%.+]], i64 noundef [[TYPE:%.+]], ptr{{.*}})
727
701
// CK2-DAG: [[SIZE:%.+]] = udiv exact i64 [[BYTESIZE]], 16
728
- // CK2-DAG: [[TYPE:%.+]] = load i64, ptr [[TYPEADDR]]
729
- // CK2-DAG: [[HANDLE:%.+]] = load ptr, ptr [[HANDLEADDR]]
730
- // CK2-DAG: [[BPTR:%.+]] = load ptr, ptr [[BPTRADDR]]
731
- // CK2-DAG: [[BEGIN:%.+]] = load ptr, ptr [[VPTRADDR]]
732
702
// CK2-DAG: [[PTREND:%.+]] = getelementptr %class.C, ptr [[BEGIN]], i64 [[SIZE]]
733
703
// CK2-DAG: [[ISARRAY:%.+]] = icmp sgt i64 [[SIZE]], 1
734
704
// CK2-DAG: [[PTRSNE:%.+]] = icmp ne ptr [[BPTR]], [[BEGIN]]
@@ -921,19 +891,9 @@ class C {
921
891
922
892
#pragma omp declare mapper(id: C s) map(s.a, s.b[0:2])
923
893
924
- // CK4: define {{.*}}void [[MPRFUNC:@[.]omp_mapper[.].*C[.]id]](ptr{{.*}}, ptr{{.*}}, ptr{{.*}}, i64{{.*}}, i64{{.*}}, ptr{{.*}})
925
- // CK4: store ptr %{{[^,]+}}, ptr [[HANDLEADDR:%[^,]+]]
926
- // CK4: store ptr %{{[^,]+}}, ptr [[BPTRADDR:%[^,]+]]
927
- // CK4: store ptr %{{[^,]+}}, ptr [[VPTRADDR:%[^,]+]]
928
- // CK4: store i64 %{{[^,]+}}, ptr [[SIZEADDR:%[^,]+]]
929
- // CK4: store i64 %{{[^,]+}}, ptr [[TYPEADDR:%[^,]+]]
930
- // CK4-DAG: [[BYTESIZE:%.+]] = load i64, ptr [[SIZEADDR]]
894
+ // CK4: define {{.*}}void [[MPRFUNC:@[.]omp_mapper[.].*C[.]id]](ptr noundef [[HANDLE:%.+]], ptr noundef [[BPTR:%.+]], ptr noundef [[BEGIN:%.+]], i64 noundef [[BYTESIZE:%.+]], i64 noundef [[TYPE:%.+]], ptr{{.*}})
931
895
// CK4-64-DAG: [[SIZE:%.+]] = udiv exact i64 [[BYTESIZE]], 16
932
896
// CK4-32-DAG: [[SIZE:%.+]] = udiv exact i64 [[BYTESIZE]], 8
933
- // CK4-DAG: [[TYPE:%.+]] = load i64, ptr [[TYPEADDR]]
934
- // CK4-DAG: [[HANDLE:%.+]] = load ptr, ptr [[HANDLEADDR]]
935
- // CK4-DAG: [[BPTR:%.+]] = load ptr, ptr [[BPTRADDR]]
936
- // CK4-DAG: [[BEGIN:%.+]] = load ptr, ptr [[VPTRADDR]]
937
897
// CK4-DAG: [[PTREND:%.+]] = getelementptr %class.C, ptr [[BEGIN]], i64 [[SIZE]]
938
898
// CK4-DAG: [[ISARRAY:%.+]] = icmp sgt i64 [[SIZE]], 1
939
899
// CK4-DAG: [[PTRSNE:%.+]] = icmp ne ptr [[BPTR]], [[BEGIN]]
0 commit comments