MicroBlaze: Fix volatile-register-var warning in READ_THREAD_POINTER

Resolves warning: 'optimization may eliminate reads and/or writes to
register variables'

2015-01-06  David Holsgrove <david.holsgrove@xilinx.com>

  * sysdeps/microblaze/nptl/tls.h: Remove inline
    __microblaze_get_thread_area and update READ_THREAD_POINTER.

Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
This commit is contained in:
David Holsgrove 2014-12-29 12:22:26 +10:00
parent caff764e8c
commit b360ee62d2
2 changed files with 9 additions and 8 deletions

View File

@ -1,3 +1,9 @@
2015-01-09 David Holsgrove <david.holsgrove@xilinx.com>
* sysdeps/microblaze/nptl/tls.h (__microblaze_get_thread_area): Function
removed.
(READ_THREAD_POINTER): Use __microblaze_thread_area instead.
2015-01-09 David Holsgrove <david.holsgrove@xilinx.com>
* sysdeps/microblaze/nptl/tls.h (TLS_INIT_TP): Use NULL instead

View File

@ -59,14 +59,9 @@ typedef struct
void *private;
} tcbhead_t;
static inline void *__microblaze_get_thread_area (void)
{
register void * volatile __microblaze_thread_area asm ("r21");
return (void *) __microblaze_thread_area;
}
# define READ_THREAD_POINTER() \
({ __microblaze_get_thread_area(); })
#define READ_THREAD_POINTER() \
({ register void *__microblaze_thread_area asm ("r21"); \
__microblaze_thread_area; })
/* This is the size of the initial TCB. */
# define TLS_INIT_TCB_SIZE sizeof (tcbhead_t)