Annotation of qemu/tests/cris/check_settls1.c, revision 1.1.1.1

1.1       root        1: #include <stdio.h>
                      2: #include <stdlib.h>
                      3: #include <errno.h>
                      4: #include <unistd.h>
                      5: 
                      6: #include <sys/syscall.h>
                      7: 
                      8: #ifndef SYS_set_thread_area
                      9: #define SYS_set_thread_area 243
                     10: #endif
                     11: 
                     12: int main (void)
                     13: {
                     14:     unsigned long tp;
                     15:     int ret;
                     16: 
                     17:     ret = syscall (SYS_set_thread_area, 0xf0);
                     18:     if (ret != -1 || errno != EINVAL) {
                     19:         perror ("Invalid thread area accepted:");
                     20:         abort();
                     21:     }
                     22: 
                     23:     ret = syscall (SYS_set_thread_area, 0xeddeed00);
                     24:     if (ret != 0) {
                     25:         perror ("Valid thread area not accepted: ");
                     26:         abort ();
                     27:     }
                     28: 
                     29:     asm ("move $pid,%0" : "=r" (tp));
                     30:     tp &= ~0xff;
                     31: 
                     32:     if (tp != 0xeddeed00) {
                     33:         perror ("tls2");
                     34:         abort ();
                     35:     }
                     36: 
                     37:     printf ("pass\n");
                     38:     return EXIT_SUCCESS;
                     39: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.