libitm: Fix bootstrap for targets without HAVE_ELF_STYLE_WEAKREF.

Recent improvements to null address warnings notice that for
targets that do not support HAVE_ELF_STYLE_WEAKREF the dummy stub
implementation of __cxa_get_globals() means that the address can
never be null.

Fixed by removing the test for such targets.

Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>

libitm/ChangeLog:

	* eh_cpp.cc (GTM::gtm_thread::init_cpp_exceptions): If the
	target does not support HAVE_ELF_STYLE_WEAKREF then do not
	try to test the __cxa_get_globals against NULL.
This commit is contained in:
Iain Sandoe 2021-11-21 10:49:29 +00:00
parent 4a2007594c
commit caa04517e6

View File

@ -178,7 +178,11 @@ GTM::gtm_thread::init_cpp_exceptions ()
{
// Only save and restore the number of uncaught exceptions if this is
// actually used in the program.
if (__cxa_get_globals != NULL && __cxa_get_globals () != 0)
if (
#if HAVE_ELF_STYLE_WEAKREF
__cxa_get_globals != NULL &&
#endif
__cxa_get_globals () != 0)
cxa_uncaught_count_ptr = &__cxa_get_globals ()->uncaughtExceptions;
else
cxa_uncaught_count_ptr = 0;