diff options
Diffstat (limited to 'src/sh/Gglobal.c')
-rw-r--r-- | src/sh/Gglobal.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/sh/Gglobal.c b/src/sh/Gglobal.c index ed273339..5fc546f7 100644 --- a/src/sh/Gglobal.c +++ b/src/sh/Gglobal.c @@ -27,7 +27,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #include "dwarf_i.h" HIDDEN define_lock (sh_lock); -HIDDEN int tdep_init_done; +HIDDEN atomic_bool tdep_init_done = 0; HIDDEN void tdep_init (void) @@ -38,7 +38,7 @@ tdep_init (void) lock_acquire (&sh_lock, saved_mask); { - if (tdep_init_done) + if (atomic_load(&tdep_init_done)) /* another thread else beat us to it... */ goto out; @@ -49,7 +49,7 @@ tdep_init (void) #ifndef UNW_REMOTE_ONLY sh_local_addr_space_init (); #endif - tdep_init_done = 1; /* signal that we're initialized... */ + atomic_store(&tdep_init_done, 1); /* signal that we're initialized... */ } out: lock_release (&sh_lock, saved_mask); |