[Bug target/54908] misc regressions on emutls targets remain from dynamic initialization of non-function-local TLS variables

dominiq at lps dot ens.fr gcc-bugzilla@gcc.gnu.org
Fri Oct 12 18:51:00 GMT 2012


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54908

Dominique d'Humieres <dominiq at lps dot ens.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|x86_64-apple-darwin12       |*-apple-darwin*
               Host|x86_64-apple-darwin12       |*-apple-darwin*
              Build|x86_64-apple-darwin12       |*-apple-darwin*

--- Comment #5 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2012-10-12 18:50:43 UTC ---
AFAICT 

(1) the failures for libgomp.c++/pr24455.C are (at least for
x86_64-apple-darwin10)

FAIL: libgomp.c++/pr24455.C  -O*  (test for excess errors)
Excess errors:
Undefined symbols:
  "TLS init function for i", referenced from:
      TLS wrapper function for i in ccoTk54U.o
      __ZTH1i$non_lazy_ptr in ccoTk54U.o
     (maybe you meant: __ZTH1i$non_lazy_ptr)
ld: symbol(s) not found

(2) The error "... dynamic initialization of non-function-local ..." comes from
gcc/cp/decl2.c if ASM_OUTPUT_DEF is not defined. I see in gcc/config/darwin.c

/* The Darwin's implementation of TARGET_ASM_OUTPUT_ANCHOR.  Define the
   anchor relative to ".", the current section position.  We cannot use
   the default one because ASM_OUTPUT_DEF is wrong for Darwin.  */



More information about the Gcc-bugs mailing list