public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/45693] [4.6 regression] All Tru64 UNIX EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
@ 2010-09-27 20:19 ` ro at gcc dot gnu.org
  2010-09-27 21:10 ` pinskia at gcc dot gnu.org
                   ` (11 subsequent siblings)
  12 siblings, 0 replies; 13+ messages in thread
From: ro at gcc dot gnu.org @ 2010-09-27 20:19 UTC (permalink / raw)
  To: gcc-bugs

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

Rainer Orth <ro at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2010.09.27 18:12:02
               date|                            |
                 CC|                            |iains at gcc dot gnu.org
     Ever Confirmed|0                           |1

--- Comment #1 from Rainer Orth <ro at gcc dot gnu.org> 2010-09-27 18:12:02 UTC ---
A reghunt revealed that this patch

2010-06-09  Iain Sandoe  <iains@gcc.gnu.org>

       PR bootstrap/43170
       * tls.m4 (GCC_CHECK_TLS): Add volatile qualifier to the test 
       references.  Move the main () test reference ahead of 
       pthread_create().  Add a comment to explain the requirements
       of the test.

is the culprit.  After it, libstdc++-v3/configure incorrectly concludes that
alpha-dec-osf5.1 has TLS support.

I've yet to determine how the change could have this effect.


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug target/45693] [4.6 regression] All Tru64 UNIX EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
  2010-09-27 20:19 ` [Bug target/45693] [4.6 regression] All Tru64 UNIX EH tests fail ro at gcc dot gnu.org
@ 2010-09-27 21:10 ` pinskia at gcc dot gnu.org
  2010-09-27 21:11 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (10 subsequent siblings)
  12 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu.org @ 2010-09-27 21:10 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> 2010-09-27 18:14:21 UTC ---
>After it, libstdc++-v3/configure incorrectly concludes that alpha-dec-osf5.1 has TLS support.

 No it should be detected that way as it has emulated TLS support.


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug target/45693] [4.6 regression] All Tru64 UNIX EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
  2010-09-27 20:19 ` [Bug target/45693] [4.6 regression] All Tru64 UNIX EH tests fail ro at gcc dot gnu.org
  2010-09-27 21:10 ` pinskia at gcc dot gnu.org
@ 2010-09-27 21:11 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2010-09-27 21:52 ` pinskia at gcc dot gnu.org
                   ` (9 subsequent siblings)
  12 siblings, 0 replies; 13+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2010-09-27 21:11 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> 2010-09-27 18:21:04 UTC ---
> --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> 2010-09-27 18:14:21 UTC ---
>>After it, libstdc++-v3/configure incorrectly concludes that alpha-dec-osf5.1 has TLS support.
>
>  No it should be detected that way as it has emulated TLS support.

But that support was present before, and still GCC_CHECK_TLS didn't
detect it before Iain's patch.  Something is certainly fishy here...

    Rainer


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug target/45693] [4.6 regression] All Tru64 UNIX EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2010-09-27 21:11 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2010-09-27 21:52 ` pinskia at gcc dot gnu.org
  2010-09-27 22:13 ` iains at gcc dot gnu.org
                   ` (8 subsequent siblings)
  12 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu.org @ 2010-09-27 21:52 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> 2010-09-27 18:26:54 UTC ---
(In reply to comment #3)
> But that support was present before, and still GCC_CHECK_TLS didn't
> detect it before Iain's patch.  Something is certainly fishy here...

His patch was explicitly to fix checking for TLS when emulated TLS was used. 
Sometimes it would detect it as working and other times it would not.


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug target/45693] [4.6 regression] All Tru64 UNIX EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2010-09-27 21:52 ` pinskia at gcc dot gnu.org
@ 2010-09-27 22:13 ` iains at gcc dot gnu.org
  2010-09-27 22:43 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (7 subsequent siblings)
  12 siblings, 0 replies; 13+ messages in thread
From: iains at gcc dot gnu.org @ 2010-09-27 22:13 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Iain Sandoe <iains at gcc dot gnu.org> 2010-09-27 18:34:46 UTC ---
(In reply to comment #4)
> (In reply to comment #3)
> > But that support was present before, and still GCC_CHECK_TLS didn't
> > detect it before Iain's patch.  Something is certainly fishy here...
> 
> His patch was explicitly to fix checking for TLS when emulated TLS was used. 
> Sometimes it would detect it as working and other times it would not.

As I recall, the patch was to circumvent a race condition - which manifest most
frequently in the decision as to whether libgomp used TLS or not.

It's odd that after this time a problem should show in libstdc++ (which was
never, AFAIR flagged up in the original problem series).

As for a platform with TLS  - Darwin is regularly testing libstdc++ on powepc,
and x86 .. so there must be some corner case at work.


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug target/45693] [4.6 regression] All Tru64 UNIX EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2010-09-27 22:13 ` iains at gcc dot gnu.org
@ 2010-09-27 22:43 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2010-09-28  5:26 ` iains at gcc dot gnu.org
                   ` (6 subsequent siblings)
  12 siblings, 0 replies; 13+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2010-09-27 22:43 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> 2010-09-27 18:40:36 UTC ---
> As I recall, the patch was to circumvent a race condition - which manifest most
> frequently in the decision as to whether libgomp used TLS or not.

I see no indications of this sort of problem here: before your patch,
TLS support was reliably/consistently detected to be missing, now it's
reliably found to be present.

> It's odd that after this time a problem should show in libstdc++ (which was
> never, AFAIR flagged up in the original problem series).

I had noticed the problem (all C++ EH tests failing on Tru64 UNIX)
before, but only now found the time to investigate.  There are no other
serious testsuite regressions caused by the patch as far as I can see.

> As for a platform with TLS  - Darwin is regularly testing libstdc++ on powepc,
> and x86 .. so there must be some corner case at work.

As is Solaris 8 and 9 without GNU as, which use emutls as well.


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug target/45693] [4.6 regression] All Tru64 UNIX EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
                   ` (5 preceding siblings ...)
  2010-09-27 22:43 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2010-09-28  5:26 ` iains at gcc dot gnu.org
  2010-09-30 17:02 ` rguenth at gcc dot gnu.org
                   ` (5 subsequent siblings)
  12 siblings, 0 replies; 13+ messages in thread
From: iains at gcc dot gnu.org @ 2010-09-28  5:26 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Iain Sandoe <iains at gcc dot gnu.org> 2010-09-27 19:24:17 UTC ---
(In reply to comment #6)
> > As I recall, the patch was to circumvent a race condition - which manifest most
> > frequently in the decision as to whether libgomp used TLS or not.
> 
> I see no indications of this sort of problem here: before your patch,
> TLS support was reliably/consistently detected to be missing, now it's
> reliably found to be present.

IIUC, comment #2 indicates that the platform should show as having (emulated)
TLS.
If that is so, the situation is that the problem you now see was masked by a
faulty configure macro, fixed by the patch.

I will try and dig out the test code we used to stress the TLS implementation -
it might be worth running that on the alpha to see whether is shows a
difference.   (it's probably attached to 43170).

IIRC the fix was quite heavily discussed on patches - there might be something
useful in those threads.


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug target/45693] [4.6 regression] All Tru64 UNIX EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
                   ` (6 preceding siblings ...)
  2010-09-28  5:26 ` iains at gcc dot gnu.org
@ 2010-09-30 17:02 ` rguenth at gcc dot gnu.org
  2010-10-28 14:29 ` [Bug target/45693] [4.6 regression] All Tru64 UNIX C++ " ro at gcc dot gnu.org
                   ` (4 subsequent siblings)
  12 siblings, 0 replies; 13+ messages in thread
From: rguenth at gcc dot gnu.org @ 2010-09-30 17:02 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Guenther <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P4


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug target/45693] [4.6 regression] All Tru64 UNIX C++ EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
                   ` (7 preceding siblings ...)
  2010-09-30 17:02 ` rguenth at gcc dot gnu.org
@ 2010-10-28 14:29 ` ro at gcc dot gnu.org
  2010-10-28 14:44 ` ro at gcc dot gnu.org
                   ` (3 subsequent siblings)
  12 siblings, 0 replies; 13+ messages in thread
From: ro at gcc dot gnu.org @ 2010-10-28 14:29 UTC (permalink / raw)
  To: gcc-bugs

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

Rainer Orth <ro at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
         Depends on|                            |46131
         AssignedTo|unassigned at gcc dot       |ro at gcc dot gnu.org
                   |gnu.org                     |
            Summary|[4.6 regression] All Tru64  |[4.6 regression] All Tru64
                   |UNIX EH tests fail          |UNIX C++ EH tests fail

--- Comment #8 from Rainer Orth <ro at gcc dot gnu.org> 2010-10-28 14:29:35 UTC ---
This is another instance of the same problem as PR target/46131: with emutls
enabled, C++ EH tests rely on the presence of the real libpthread.so functions,
not the dummies in libgcc.  So the solution is the same: link libstdc++.so
with -pthread.

I'll submit a patch shortly.


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug target/45693] [4.6 regression] All Tru64 UNIX C++ EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
                   ` (8 preceding siblings ...)
  2010-10-28 14:29 ` [Bug target/45693] [4.6 regression] All Tru64 UNIX C++ " ro at gcc dot gnu.org
@ 2010-10-28 14:44 ` ro at gcc dot gnu.org
  2010-11-02 16:16 ` ro at gcc dot gnu.org
                   ` (2 subsequent siblings)
  12 siblings, 0 replies; 13+ messages in thread
From: ro at gcc dot gnu.org @ 2010-10-28 14:44 UTC (permalink / raw)
  To: gcc-bugs

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

Rainer Orth <ro at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|                            |http://gcc.gnu.org/ml/gcc-p
                   |                            |atches/2010-10/msg02411.htm
                   |                            |l

--- Comment #9 from Rainer Orth <ro at gcc dot gnu.org> 2010-10-28 14:44:13 UTC ---
Proposed patch.


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug target/45693] [4.6 regression] All Tru64 UNIX C++ EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
                   ` (9 preceding siblings ...)
  2010-10-28 14:44 ` ro at gcc dot gnu.org
@ 2010-11-02 16:16 ` ro at gcc dot gnu.org
  2010-11-02 16:22 ` ro at gcc dot gnu.org
  2010-12-03 12:46 ` ro at gcc dot gnu.org
  12 siblings, 0 replies; 13+ messages in thread
From: ro at gcc dot gnu.org @ 2010-11-02 16:16 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from Rainer Orth <ro at gcc dot gnu.org> 2010-11-02 16:16:30 UTC ---
Author: ro
Date: Tue Nov  2 16:16:22 2010
New Revision: 166199

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=166199
Log:
    PR target/45693
    * configure.host (osf*): Set os_include_dir to os/generic.
    Add -lpthread to OPT_LDFLAGS.

Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/configure.host


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug target/45693] [4.6 regression] All Tru64 UNIX C++ EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
                   ` (10 preceding siblings ...)
  2010-11-02 16:16 ` ro at gcc dot gnu.org
@ 2010-11-02 16:22 ` ro at gcc dot gnu.org
  2010-12-03 12:46 ` ro at gcc dot gnu.org
  12 siblings, 0 replies; 13+ messages in thread
From: ro at gcc dot gnu.org @ 2010-11-02 16:22 UTC (permalink / raw)
  To: gcc-bugs

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

Rainer Orth <ro at gcc dot gnu.org> changed:

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

--- Comment #11 from Rainer Orth <ro at gcc dot gnu.org> 2010-11-02 16:21:51 UTC ---
Fixed for 4.6.0.


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug target/45693] [4.6 regression] All Tru64 UNIX C++ EH tests fail
       [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
                   ` (11 preceding siblings ...)
  2010-11-02 16:22 ` ro at gcc dot gnu.org
@ 2010-12-03 12:46 ` ro at gcc dot gnu.org
  12 siblings, 0 replies; 13+ messages in thread
From: ro at gcc dot gnu.org @ 2010-12-03 12:46 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #12 from Rainer Orth <ro at gcc dot gnu.org> 2010-12-03 12:46:15 UTC ---
Author: ro
Date: Fri Dec  3 12:46:12 2010
New Revision: 167422

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=167422
Log:
    Backport from mainline:
    2010-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

    PR target/45693
    * configure.host (osf*): Set os_include_dir to os/generic.
    Add -lpthread to OPT_LDFLAGS.

Modified:
    branches/gcc-4_5-branch/libstdc++-v3/ChangeLog
    branches/gcc-4_5-branch/libstdc++-v3/configure.host


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2010-12-03 12:46 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-45693-4@http.gcc.gnu.org/bugzilla/>
2010-09-27 20:19 ` [Bug target/45693] [4.6 regression] All Tru64 UNIX EH tests fail ro at gcc dot gnu.org
2010-09-27 21:10 ` pinskia at gcc dot gnu.org
2010-09-27 21:11 ` ro at CeBiTec dot Uni-Bielefeld.DE
2010-09-27 21:52 ` pinskia at gcc dot gnu.org
2010-09-27 22:13 ` iains at gcc dot gnu.org
2010-09-27 22:43 ` ro at CeBiTec dot Uni-Bielefeld.DE
2010-09-28  5:26 ` iains at gcc dot gnu.org
2010-09-30 17:02 ` rguenth at gcc dot gnu.org
2010-10-28 14:29 ` [Bug target/45693] [4.6 regression] All Tru64 UNIX C++ " ro at gcc dot gnu.org
2010-10-28 14:44 ` ro at gcc dot gnu.org
2010-11-02 16:16 ` ro at gcc dot gnu.org
2010-11-02 16:22 ` ro at gcc dot gnu.org
2010-12-03 12:46 ` ro at gcc dot gnu.org

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).