|
4 | 4 | // mode to a new platform, but is not in and of itself a test of the profiling |
5 | 5 | // runtime. |
6 | 6 |
|
7 | | -// REQUIRES: darwin |
| 7 | +// REQUIRES: darwin, target={{arm64.*}} |
8 | 8 |
|
9 | 9 | // Align counters and data to the maximum expected page size (16K). |
10 | 10 | // RUN: %clang -g -o %t %s \ |
11 | | -// RUN: -Wl,-sectalign,__DATA,__pcnts,0x1000 \ |
12 | | -// RUN: -Wl,-sectalign,__DATA,__pdata,0x1000 |
| 11 | +// RUN: -Wl,-sectalign,__DATA,__pcnts,0x4000 \ |
| 12 | +// RUN: -Wl,-sectalign,__DATA,__pdata,0x4000 |
13 | 13 |
|
14 | 14 | // Create a 'profile' using mmap() and validate it. |
15 | 15 | // RUN: %run %t create %t.tmpfile |
|
24 | 24 |
|
25 | 25 | __attribute__((section("__DATA,__pcnts"))) int counters[] = {0xbad}; |
26 | 26 | extern int cnts_start __asm("section$start$__DATA$__pcnts"); |
27 | | -const size_t cnts_len = 0x1000; |
| 27 | +const size_t cnts_len = 0x4000; |
28 | 28 |
|
29 | 29 | __attribute__((section("__DATA,__pdata"))) int data[] = {1, 2, 3}; |
30 | 30 | extern int data_start __asm("section$start$__DATA$__pdata"); |
@@ -131,12 +131,12 @@ int main(int argc, char **argv) { |
131 | 131 | fprintf(stderr, "__pcnts is not page-aligned: 0x%lx.\n", cnts_start_int); |
132 | 132 | return EXIT_FAILURE; |
133 | 133 | } |
134 | | - if (data_start_int % 0x1000 != 0) { |
| 134 | + if (data_start_int % 0x4000 != 0) { |
135 | 135 | fprintf(stderr, "__pdata is not correctly aligned: 0x%lx.\n", |
136 | 136 | data_start_int); |
137 | 137 | return EXIT_FAILURE; |
138 | 138 | } |
139 | | - if (cnts_start_int + 0x1000 != data_start_int) { |
| 139 | + if (cnts_start_int + 0x4000 != data_start_int) { |
140 | 140 | fprintf(stderr, "__pdata not ordered after __pcnts.\n"); |
141 | 141 | return EXIT_FAILURE; |
142 | 142 | } |
|
0 commit comments