public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "howarth at nitro dot med dot uc dot edu" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c/43553] libgcc built with -DHAVE_CC_TLS against xgcc when emutls in use
Date: Wed, 31 Mar 2010 02:17:00 -0000	[thread overview]
Message-ID: <20100331021650.31677.qmail@sourceware.org> (raw)
In-Reply-To: <bug-43553-11113@http.gcc.gnu.org/bugzilla/>



------- Comment #13 from howarth at nitro dot med dot uc dot edu  2010-03-31 02:16 -------
I was confused and the race condition patch wasn't actually applied to my tree
on darwin when I did the last set of tests. Current gcc trunk still fails the
profile related test cases on darwin with undefined symbols...

[MacPro:~] howarth%
/sw/src/fink.build/gcc45-4.4.999-20100330/darwin_objdir/gcc/xgcc
-B/sw/src/fink.build/gcc45-4.4.999-20100330/darwin_objdir/gcc/
/sw/src/fink.build/gcc45-4.4.999-20100330/gcc-4.5-20100330/gcc/testsuite/gcc.dg/matrix/transpose-1.c
   -fprofile-generate -O3  -lm   -o
/sw/src/fink.build/gcc45-4.4.999-20100330/darwin_objdir/gcc/testsuite/gcc/transpose-1.x01
Undefined symbols:
  "___emutls_v.__gcov_indirect_call_counters", referenced from:
      _mem_init in cc591Wfh.o
      _main in cc591Wfh.o
      global constructors keyed to 65535_0_transpose_1.c in cc591Wfh.o
  "___emutls_v.__gcov_indirect_call_callee", referenced from:
      _mem_init in cc591Wfh.o
      _mem_init in cc591Wfh.o
      _main in cc591Wfh.o
      _main in cc591Wfh.o
      global constructors keyed to 65535_0_transpose_1.c in cc591Wfh.o
      global constructors keyed to 65535_0_transpose_1.c in cc591Wfh.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

Reverting the race condition patch eliminates this problem. So the question
becomes is whether emulated tls expected to be sufficient for this task? I
tried the inverse of inhibiting the use of  -DHAVE_CC_TLS instead and  I still
get the same unresoived symbols.

Index: libgcc/Makefile.in
===================================================================
--- libgcc/Makefile.in  (revision 157840)
+++ libgcc/Makefile.in  (working copy)
@@ -226,7 +226,7 @@
 # will usually contain -g, so for the moment CFLAGS goes first.  We must
 # include CFLAGS - that's where multilib options live.
 INTERNAL_CFLAGS = $(CFLAGS) $(LIBGCC2_CFLAGS) $(HOST_LIBGCC2_CFLAGS) \
-                 $(INCLUDES) @set_have_cc_tls@ @set_use_emutls@
+                 $(INCLUDES) @set_have_cc_tls@

 MULTIDIR := $(shell $(CC) $(CFLAGS) -print-multi-directory)
 MULTIOSDIR := $(shell $(CC) $(CFLAGS) -print-multi-os-directory)
Index: libgcc/configure.ac
===================================================================
--- libgcc/configure.ac (revision 157840)
+++ libgcc/configure.ac (working copy)
@@ -232,20 +232,13 @@
 # gcc, which can't be used to build executable due to that libgcc
 # is yet to be built here.
 GCC_CHECK_CC_TLS
+GCC_CHECK_EMUTLS
 set_have_cc_tls=
-if test "$enable_tls $gcc_cv_have_cc_tls" = "yes yes"; then
+if test "$enable_tls $gcc_cv_have_cc_tls $gcc_cv_use_emutls" = "yes yes no";
then
   set_have_cc_tls="-DHAVE_CC_TLS"
 fi
 AC_SUBST(set_have_cc_tls)

-# See if we have emulated thread-local storage.
-GCC_CHECK_EMUTLS
-set_use_emutls=
-if test "$enable_tls $gcc_cv_use_emutls" = "yes yes"; then
-  set_use_emutls="-DUSE_EMUTLS"
-fi
-AC_SUBST(set_use_emutls)
-
 # Conditionalize the makefile for this target machine.
 tmake_file_=
 for f in ${tmake_file}


-- 

howarth at nitro dot med dot uc dot edu changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |UNCONFIRMED
         Resolution|FIXED                       |


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


  parent reply	other threads:[~2010-03-31  2:17 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-28  2:03 [Bug c/43553] New: " howarth at nitro dot med dot uc dot edu
2010-03-28  2:07 ` [Bug c/43553] " howarth at nitro dot med dot uc dot edu
2010-03-28  2:17 ` howarth at nitro dot med dot uc dot edu
2010-03-28  4:39 ` howarth at nitro dot med dot uc dot edu
2010-03-28  5:49 ` howarth at nitro dot med dot uc dot edu
2010-03-28 16:11 ` howarth at nitro dot med dot uc dot edu
2010-03-28 16:29 ` howarth at nitro dot med dot uc dot edu
2010-03-28 19:21 ` howarth at nitro dot med dot uc dot edu
2010-03-28 20:31 ` howarth at nitro dot med dot uc dot edu
2010-03-28 20:59 ` howarth at nitro dot med dot uc dot edu
2010-03-30 13:09 ` rguenth at gcc dot gnu dot org
2010-03-30 16:01 ` rguenth at gcc dot gnu dot org
2010-03-31  2:17 ` howarth at nitro dot med dot uc dot edu [this message]
2010-03-31  2:44 ` howarth at nitro dot med dot uc dot edu
2010-03-31  3:54 ` howarth at nitro dot med dot uc dot edu
2010-03-31  6:15 ` howarth at nitro dot med dot uc dot edu
2010-04-01  8:02 ` developer at sandoe-acoustics dot co dot uk
2010-04-01  8:09 ` bonzini at gnu dot org
2010-04-01  8:30 ` developer at sandoe-acoustics dot co dot uk
2010-04-02 21:16 ` developer at sandoe-acoustics dot co dot uk
2010-04-02 21:32 ` developer at sandoe-acoustics dot co dot uk
2010-04-03 11:01 ` developer at sandoe-acoustics dot co dot uk
2010-04-03 20:03 ` dominiq at lps dot ens dot fr
2010-04-04  7:18 ` bonzini at gnu dot org
2010-04-04 16:30 ` howarth at nitro dot med dot uc dot edu
2010-04-04 16:33 ` howarth at nitro dot med dot uc dot edu
2010-04-04 17:59 ` howarth at nitro dot med dot uc dot edu
2010-04-04 20:19 ` developer at sandoe-acoustics dot co dot uk
2010-04-04 21:09 ` howarth at nitro dot med dot uc dot edu
2010-04-05  8:33 ` developer at sandoe-acoustics dot co dot uk
2010-05-25 12:51 ` iains at gcc dot gnu dot org
2010-05-27 15:10 ` mrs at gcc dot gnu dot org
2010-05-28  0:02 ` howarth at nitro dot med dot uc dot edu
2010-08-20 11:39 ` howarth at nitro dot med dot uc dot edu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100331021650.31677.qmail@sourceware.org \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).