1 /* Test whether strncmp has not been "optimized" into memcmp
2 nor any code with memcmp semantics. */
3 /* { dg-do run { target i?86-*-linux* x86_64-*-linux* ia64-*-linux* alpha*-*-linux* powerpc*-*-linux* s390*-*-linux* sparc*-*-linux* i?86-*-darwin* powerpc-*-darwin*} } */
4 /* { dg-options "-O2" } */
8 /* Darwin spells this differently */
10 #define MAP_ANONYMOUS MAP_ANON
23 static void __attribute__((noinline)) set (struct Flags *);
24 static void set (struct Flags *fp)
30 static int __attribute__((noinline)) bar (int);
31 static int bar(int x) { return !(x==1); }
34 char *p = mmap (NULL, 131072, PROT_READ | PROT_WRITE,
35 MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
39 if (munmap (p + 65536, 65536) < 0)
41 fp = (struct Flags*)(p + 65536 - sizeof(struct Flags));