]>
Commit | Line | Data |
---|---|---|
a5b1b2a1 RB |
1 | /* { dg-do run } */ |
2 | /* { dg-options "-O3 -fno-tree-pta" } */ | |
3 | ||
4 | typedef __SIZE_TYPE__ size_t; | |
5 | ||
6 | __attribute__((__noipa__)) | |
7 | void BUF_reverse (unsigned char *out, const unsigned char *in, size_t size) | |
8 | { | |
9 | size_t i; | |
10 | if (in) | |
11 | { | |
12 | out += size - 1; | |
13 | for (i = 0; i < size; i++) | |
14 | *out++ = *in++; | |
15 | } | |
16 | else | |
17 | { | |
18 | unsigned char *q; | |
19 | char c; | |
20 | q = out + size - 1; | |
21 | for (i = 0; i < size ; i++) | |
22 | { | |
23 | *out++ = 1; | |
24 | } | |
25 | } | |
26 | } | |
27 | ||
28 | int | |
29 | main (void) | |
30 | { | |
31 | unsigned char buf[40]; | |
32 | unsigned char buf1[40]; | |
33 | for (unsigned i = 0; i < sizeof (buf); i++) | |
34 | buf[i] = i; | |
35 | BUF_reverse (buf, 0, sizeof (buf)); | |
36 | for (unsigned i = 0; i < sizeof (buf); i++) | |
37 | if (buf[i] != 1) | |
38 | __builtin_abort (); | |
39 | ||
40 | return 0; | |
41 | } |