1 /* { dg-do compile { target i?86-*-linux* i?86-*-gnu* x86_64-*-linux* } } */
2 /* { dg-options "-O2" } */
8 typedef __SIZE_TYPE__
size_t;
9 extern void abort (void);
18 for (i
= 0; i
< x
; ++i
)
20 #ifdef __builtin_object_size
21 if (__builtin_object_size (p
, 0) != sizeof (buf
) - 8 - 4 * x
)
23 if (__builtin_object_size (p
, 0) != sizeof (buf
) - 8)
34 for (i
= 0; i
< x
; ++i
)
36 #ifdef __builtin_object_size
37 if (__builtin_object_size (p
, 1) != sizeof (buf
) - 8 - 4 * x
)
39 if (__builtin_object_size (p
, 1) != sizeof (buf
) - 8)
50 for (i
= 0; i
< x
; ++i
)
52 #ifdef __builtin_object_size
53 if (__builtin_object_size (p
, 2) != sizeof (buf
) - 8 - 4 * x
)
55 if (__builtin_object_size (p
, 2) != 0)
66 for (i
= 0; i
< x
; ++i
)
68 #ifdef __builtin_object_size
69 if (__builtin_object_size (p
, 3) != sizeof (buf
) - 8 - 4 * x
)
71 if (__builtin_object_size (p
, 3) != 0)
79 char *p
= &buf
[0x90000004];
80 if (__builtin_object_size (p
+ 2, 0) != 0)
88 if (__builtin_object_size (p
+ 2, 0) != 0)
92 #ifdef __builtin_object_size
96 char *buf2
= __builtin_malloc (8);
97 char *p
= &buf2
[0x90000004];
98 if (__builtin_object_size (p
+ 2, 0) != 0)
103 /* { dg-final { scan-assembler-not "abort" } } */