From b360ee62d2c13b69ca58a36907093d9cf0f4b7a4 Mon Sep 17 00:00:00 2001 From: David Holsgrove Date: Mon, 29 Dec 2014 12:22:26 +1000 Subject: [PATCH] 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 * sysdeps/microblaze/nptl/tls.h: Remove inline __microblaze_get_thread_area and update READ_THREAD_POINTER. Signed-off-by: David Holsgrove --- ChangeLog | 6 ++++++ sysdeps/microblaze/nptl/tls.h | 11 +++-------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 834e23c6da..2a925cd2a8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2015-01-09 David Holsgrove + + * sysdeps/microblaze/nptl/tls.h (__microblaze_get_thread_area): Function + removed. + (READ_THREAD_POINTER): Use __microblaze_thread_area instead. + 2015-01-09 David Holsgrove * sysdeps/microblaze/nptl/tls.h (TLS_INIT_TP): Use NULL instead diff --git a/sysdeps/microblaze/nptl/tls.h b/sysdeps/microblaze/nptl/tls.h index fb4a71a8c3..171a745db9 100644 --- a/sysdeps/microblaze/nptl/tls.h +++ b/sysdeps/microblaze/nptl/tls.h @@ -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) -- 2.43.5