]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/testsuite/gcc.dg/pr98190.c
Update copyright years.
[thirdparty/gcc.git] / gcc / testsuite / gcc.dg / pr98190.c
CommitLineData
3e60ddeb
JJ
1/* PR middle-end/98190 */
2/* { dg-do run } */
3/* { dg-options "-O2" } */
4
5static int __attribute__((noipa))
6foo (const char *p, const char *q, const int len)
7{
8 for (int i = 0; i < len; p++, q++, i++)
9 {
10 int equal;
11 _Bool x, y;
12 __builtin_memcpy ((char *) &x, p, sizeof x);
13 __builtin_memcpy ((char *) &y, q, sizeof y);
14 equal = (x == y);
15 if (equal <= 0)
16 return equal;
17 }
18 return 1;
19}
20
21int
22main ()
23{
24 const _Bool buf[4] = { 1, 0, 0, 0 };
25#ifdef __aarch64__
26 register long x4 asm ("x4") = 0xdeadbeefULL;
27 register long x5 asm ("x5") = 0xcafebabeULL;
28 asm volatile (""::"r" (x4), "r" (x5));
29#endif
30 if (foo ((char *) &buf[0], (char *) &buf[0], 1) != 1)
31 __builtin_abort ();
32 return 0;
33}