You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@stdcxx.apache.org by "Liviu Nicoara (JIRA)" <ji...@apache.org> on 2012/09/23 17:35:07 UTC
[jira] [Commented] (STDCXX-853) [Sun C++ 5.9/Solaris 10/SPARC]
assertions in atomic_xchg on __rw_atomic_exchange(short&, short)
[ https://issues.apache.org/jira/browse/STDCXX-853?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13461443#comment-13461443 ]
Liviu Nicoara commented on STDCXX-853:
--------------------------------------
Narrowed it down to aggressive optimization, fixed in r1388733.
> [Sun C++ 5.9/Solaris 10/SPARC] assertions in atomic_xchg on __rw_atomic_exchange(short&, short)
> -----------------------------------------------------------------------------------------------
>
> Key: STDCXX-853
> URL: https://issues.apache.org/jira/browse/STDCXX-853
> Project: C++ Standard Library
> Issue Type: Bug
> Components: Tests
> Affects Versions: 4.2.1
> Environment: Sun C++ 5.9/Solaris 10/SPARC
> Reporter: Martin Sebor
> Priority: Minor
> Fix For: 4.2.2
>
> Original Estimate: 2h
> Remaining Estimate: 2h
>
> When compiled with Sun C++ 5.9 (but not prior versions) in 12{d,D,s,S} mode on Solaris/SPARC (but not AMD64) the [{{atomic_xchg.cpp}}|http://svn.apache.org/repos/asf/stdcxx/trunk/tests/support/atomic_xchg.cpp] test consistently fails the same two assertions while exercising the {{\_\_rw_atomic_exchange (short&, short)}} overload. The test passes all assertions when compiled with gcc 4.1 on the same system.
> {noformat}
> CC -c -mt -I$TOPDIR//include -I/build/sebor/stdcxx-suncc-5.9_j1-12d/include -I$TOPDIR//tests/include -library=%none -O -m32 +w -errtags -erroff=hidef $TOPDIR//tests/support/atomic_xchg.cpp
> CC atomic_xchg.o -o atomic_xchg -L/build/sebor/stdcxx-suncc-5.9_j1-12d/rwtest -lrwtest12d -library=%none -mt -m32 -L/build/sebor/stdcxx-suncc-5.9_j1-12d/lib -R/build/sebor/stdcxx-suncc-5.9_j1-12d/lib:/build/sebor/stdcxx-suncc-5.9_j1-12d/rwtest -lstd12d -lm
> tests$
> tests$
> tests$ ./atomic_xchg -q
> thread 0 starting
> thread 1 starting
> thread 2 starting
> thread 3 starting
> thread 0 performed 2173644 exchanges in 1125068 iterations (93% increments)
> thread 1 performed 3122578 exchanges in 2074002 iterations (50% increments)
> thread 2 performed 3722299 exchanges in 2673723 iterations (39% increments)
> thread 3 performed 2141239 exchanges in 1092663 iterations (95% increments)
> thread 0 starting
> thread 1 starting
> thread 2 starting
> thread 3 starting
> thread 0 performed 3107666 exchanges in 2059090 iterations (50% increments)
> thread 1 performed 2624636 exchanges in 1576060 iterations (66% increments)
> thread 2 performed 3256545 exchanges in 2207969 iterations (47% increments)
> thread 3 performed 2539901 exchanges in 1491325 iterations (70% increments)
> thread 0 starting
> thread 2 starting
> thread 1 starting
> thread 3 starting
> thread 0 performed 2235989 exchanges in 1187413 iterations (88% increments)
> thread 1 performed 2600206 exchanges in 1551630 iterations (67% increments)
> thread 2 performed 4103850 exchanges in 3055274 iterations (34% increments)
> thread 3 performed 4124742 exchanges in 3076166 iterations (34% increments)
> thread 0 starting
> thread 1 starting
> thread 3 starting
> thread 2 starting
> thread 0 performed 2554852 exchanges in 1506276 iterations (69% increments)
> thread 1 performed 2996243 exchanges in 1947667 iterations (53% increments)
> thread 2 performed 2289139 exchanges in 1240563 iterations (84% increments)
> thread 3 performed 2810976 exchanges in 1762400 iterations (59% increments)
> # ASSERTION (S7) (3 lines):
> # TEXT: 1. __rw_atomic_exchange (short&, short); 33 == 1 failed
> # LINE: 311
> # ASSERTION (S7) (3 lines):
> # TEXT: 2. __rw_atomic_exchange (short&, short); 33 == 1 failed
> # LINE: 315
> thread 0 starting
> thread 3 starting
> thread 1 starting
> thread 2 starting
> thread 0 performed 3487158 exchanges in 2438582 iterations (42% increments)
> thread 1 performed 2938034 exchanges in 1889458 iterations (55% increments)
> thread 2 performed 3610858 exchanges in 2562282 iterations (40% increments)
> thread 3 performed 2949089 exchanges in 1900513 iterations (55% increments)
> thread 0 starting
> thread 3 starting
> thread 2 starting
> thread 1 starting
> thread 0 performed 2453557 exchanges in 1404981 iterations (74% increments)
> thread 1 performed 2343445 exchanges in 1294869 iterations (80% increments)
> thread 2 performed 2304791 exchanges in 1256215 iterations (83% increments)
> thread 3 performed 2342867 exchanges in 1294291 iterations (81% increments)
> thread 0 starting
> thread 2 starting
> thread 1 starting
> thread 3 starting
> thread 0 performed 5889215 exchanges in 4840639 iterations (21% increments)
> thread 1 performed 2959813 exchanges in 1911237 iterations (54% increments)
> thread 2 performed 2786398 exchanges in 1737822 iterations (60% increments)
> thread 3 performed 3926325 exchanges in 2877749 iterations (36% increments)
> thread 0 starting
> thread 1 starting
> thread 2 starting
> thread 3 starting
> thread 0 performed 2257405 exchanges in 1208829 iterations (86% increments)
> thread 1 performed 2468463 exchanges in 1419887 iterations (73% increments)
> thread 2 performed 2284555 exchanges in 1235979 iterations (84% increments)
> thread 3 performed 3593976 exchanges in 2545400 iterations (41% increments)
> thread 0 starting
> thread 2 starting
> thread 1 starting
> thread 3 starting
> thread 0 performed 4060578 exchanges in 3012002 iterations (34% increments)
> thread 1 performed 2982578 exchanges in 1934002 iterations (54% increments)
> thread 2 performed 2921234 exchanges in 1872658 iterations (55% increments)
> thread 3 performed 3725651 exchanges in 2677075 iterations (39% increments)
> thread 0 starting
> thread 1 starting
> thread 2 starting
> thread 3 starting
> thread 0 performed 4039542 exchanges in 2990966 iterations (35% increments)
> thread 1 performed 2772242 exchanges in 1723666 iterations (60% increments)
> thread 2 performed 2465248 exchanges in 1416672 iterations (74% increments)
> thread 3 performed 3578795 exchanges in 2530219 iterations (41% increments)
> thread 0 starting
> thread 3 starting
> thread 2 starting
> thread 1 starting
> thread 0 performed 2835485 exchanges in 1786909 iterations (58% increments)
> thread 1 performed 3238388 exchanges in 2189812 iterations (47% increments)
> thread 2 performed 2558681 exchanges in 1510105 iterations (69% increments)
> thread 3 performed 2167577 exchanges in 1119001 iterations (93% increments)
> # +-----------------------+----------+----------+----------+
> # | DIAGNOSTIC | ACTIVE | TOTAL | INACTIVE |
> # +-----------------------+----------+----------+----------+
> # | (S1) INFO | 12 | 12 | 0% |
> # | (S7) ASSERTION | 2 | 22 | 90% |
> # | (S8) ERROR | 0 | 44 | 100% |
> # | (S9) FATAL | 0 | 44 | 100% |
> # +-----------------------+----------+----------+----------+
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira