/* #notarget: cris*-*-elf */ #define _GNU_SOURCE #include #include #include #include #include #include #include int main (int argc, char *argv[]) { volatile unsigned char *a; /* Check that we can map a non-multiple of a page and still get a full page. */ a = mmap (NULL, 0x4c, PROT_READ | PROT_WRITE | PROT_EXEC, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); if (a == NULL || a == (unsigned char *) -1) abort (); a[0] = 0xbe; a[8191] = 0xef; memset ((char *) a + 1, 0, 8190); if (a[0] != 0xbe || a[8191] != 0xef) abort (); printf ("pass\n"); exit (0); }