diff options
Diffstat (limited to 'test/tls/tst-tlsmod18a.c')
| -rw-r--r-- | test/tls/tst-tlsmod18a.c | 21 | 
1 files changed, 21 insertions, 0 deletions
| diff --git a/test/tls/tst-tlsmod18a.c b/test/tls/tst-tlsmod18a.c new file mode 100644 index 000000000..9aba607ed --- /dev/null +++ b/test/tls/tst-tlsmod18a.c @@ -0,0 +1,21 @@ +#include <stdio.h> + +#ifndef N +# define N 0 +#endif + +static __thread int var = 4; + +int +test (void) +{ +  int *p = &var; +  /* GCC assumes &var is never NULL, add optimization barrier.  */ +  __asm __volatile ("" : "+r" (p)); +  if (p == NULL || *p != 4) +    { +      printf ("fail %d %p\n", N, p); +      return 1; +    } +  return 0; +} | 
