public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/51753] New: Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86
@ 2012-01-04 17:28 ro at gcc dot gnu.org
  2012-01-30 18:48 ` [Bug target/51753] " ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: ro at gcc dot gnu.org @ 2012-01-04 17:28 UTC (permalink / raw)
  To: gcc-bugs

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

             Bug #: 51753
           Summary: Many gcc.dg/simultate-thread tests fail on Solaris
                    10+/x86
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: ro@gcc.gnu.org
                CC: ubizjak@gmail.com
              Host: i386-pc-solaris2.1[01]
            Target: i386-pc-solaris2.1[01]
             Build: i386-pc-solaris2.1[01]


Many of the new gcc.dg/simulate-thread tests FAIL on Solaris 10 and 11/x86,
both 32 and 64-bit:

FAIL: gcc.dg/simulate-thread/atomic-other-int.c  -O1 -g  thread simulation test
FAIL: gcc.dg/simulate-thread/atomic-other-int.c  -O2 -g  thread simulation test
FAIL: gcc.dg/simulate-thread/atomic-other-int.c  -O3 -g  thread simulation test
FAIL: gcc.dg/simulate-thread/atomic-other-int.c  -Os -g  thread simulation test
FAIL: gcc.dg/simulate-thread/atomic-other-longlong.c  -O0 -g  thread simulation
test
FAIL: gcc.dg/simulate-thread/atomic-other-longlong.c  -O1 -g  thread simulation
test
FAIL: gcc.dg/simulate-thread/atomic-other-longlong.c  -O2 -g  thread simulation
test
FAIL: gcc.dg/simulate-thread/atomic-other-longlong.c  -O3 -g  thread simulation
test
FAIL: gcc.dg/simulate-thread/atomic-other-longlong.c  -Os -g  thread simulation
test
FAIL: gcc.dg/simulate-thread/atomic-other-short.c  -O1 -g  thread simulation
test
FAIL: gcc.dg/simulate-thread/atomic-other-short.c  -O2 -g  thread simulation
test
FAIL: gcc.dg/simulate-thread/atomic-other-short.c  -O3 -g  thread simulation
test
FAIL: gcc.dg/simulate-thread/atomic-other-short.c  -Os -g  thread simulation
test

This happens neither on Solaris 8 and 9/x86 (32-bit only), nor on
x86_64-unknown-linux-gnu or i686-unknown-linux-gnu, using gdb 7.3.1 everywhere.

E.g. in atomic-other-int.c, the __atomic_fetch_sub FAILs; if I add logging code
to test_abort, I find

FAIL: invalid intermediate result for value

  value = 1 ret = 0


I'm uncertain if this is a code generation issue or a problem on the gdb side.

  Rainer


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

* [Bug target/51753] Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86
  2012-01-04 17:28 [Bug target/51753] New: Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86 ro at gcc dot gnu.org
@ 2012-01-30 18:48 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2012-01-30 19:23 ` ubizjak at gmail dot com
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2012-01-30 18:48 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> 2012-01-30 17:26:47 UTC ---
> I'm uncertain if this is a code generation issue or a problem on the gdb side.

The problem still occurs unchanged with gdb 7.4.  Uros, do you have
suggestions how best to investigate this?

Thanks.
        Rainer


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

* [Bug target/51753] Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86
  2012-01-04 17:28 [Bug target/51753] New: Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86 ro at gcc dot gnu.org
  2012-01-30 18:48 ` [Bug target/51753] " ro at CeBiTec dot Uni-Bielefeld.DE
@ 2012-01-30 19:23 ` ubizjak at gmail dot com
  2012-02-02  2:37 ` danglin at gcc dot gnu.org
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: ubizjak at gmail dot com @ 2012-01-30 19:23 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Uros Bizjak <ubizjak at gmail dot com> 2012-01-30 18:47:21 UTC ---
(In reply to comment #1)
> > I'm uncertain if this is a code generation issue or a problem on the gdb side.
> 
> The problem still occurs unchanged with gdb 7.4.  Uros, do you have
> suggestions how best to investigate this?

Please look at gcc.log files in your testsuite directory. There are extensive
single-instruction traces to analyse what went wrong. Comparing your traces to
linux execution should give you a hint.


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

* [Bug target/51753] Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86
  2012-01-04 17:28 [Bug target/51753] New: Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86 ro at gcc dot gnu.org
  2012-01-30 18:48 ` [Bug target/51753] " ro at CeBiTec dot Uni-Bielefeld.DE
  2012-01-30 19:23 ` ubizjak at gmail dot com
@ 2012-02-02  2:37 ` danglin at gcc dot gnu.org
  2012-02-07 18:10 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: danglin at gcc dot gnu.org @ 2012-02-02  2:37 UTC (permalink / raw)
  To: gcc-bugs

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

John David Anglin <danglin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |danglin at gcc dot gnu.org

--- Comment #3 from John David Anglin <danglin at gcc dot gnu.org> 2012-02-02 02:36:53 UTC ---
There are similar fails on hppa-unknown-linux-gnu:

FAIL: gcc.dg/simulate-thread/atomic-other-int.c  -O0 -g  thread simulation test
FAIL: gcc.dg/simulate-thread/atomic-other-int.c  -O1 -g  thread simulation test
FAIL: gcc.dg/simulate-thread/atomic-other-int.c  -O2 -g  thread simulation test
FAIL: gcc.dg/simulate-thread/atomic-other-int.c  -O3 -g  thread simulation test
FAIL: gcc.dg/simulate-thread/atomic-other-int.c  -Os -g  thread simulation test
FAIL: gcc.dg/simulate-thread/atomic-other-short.c  -O0 -g  thread simulation
test
FAIL: gcc.dg/simulate-thread/atomic-other-short.c  -O1 -g  thread simulation
tes
t
FAIL: gcc.dg/simulate-thread/atomic-other-short.c  -O2 -g  thread simulation
tes
t
FAIL: gcc.dg/simulate-thread/atomic-other-short.c  -O3 -g  thread simulation
tes
tFAIL: gcc.dg/simulate-thread/atomic-other-short.c  -Os -g  thread simulation
tes
t

Spawning: gdb -nx -nw -quiet -x
/home/dave/gnu/gcc/gcc/gcc/testsuite/gcc.dg/simu
late-thread/simulate-thread.gdb ./atomic-other-int.exe
spawn gdb -nx -nw -x
/home/dave/gnu/gcc/gcc/gcc/testsuite/gcc.dg/simulate-thread
/simulate-thread.gdb ./atomic-other-int.exe
GNU gdb (GDB) 7.3-debian
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "hppa-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from
/home/dave/gnu/gcc/objdir/gcc/testsuite/gcc/atomic-other-in

late-thread/simulate-thread.gdb ./atomic-other-int.exe
spawn gdb -nx -nw -x
/home/dave/gnu/gcc/gcc/gcc/testsuite/gcc.dg/simulate-thread
/simulate-thread.gdb ./atomic-other-int.exe
GNU gdb (GDB) 7.3-debian
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "hppa-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from
/home/dave/gnu/gcc/objdir/gcc/testsuite/gcc/atomic-other-in
t.exe...done.
Breakpoint 1 at 0x108b4: file
/home/dave/gnu/gcc/gcc/gcc/testsuite/gcc.dg/simula
te-thread/atomic-other-int.c, line 64.

Breakpoint 1, simulate_thread_main () at
/home/dave/gnu/gcc/gcc/gcc/testsuite/gc
c.dg/simulate-thread/atomic-other-int.c:64
64        ret = __atomic_exchange_n (&value, max, __ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108b4 <simulate_thread_main+28>:   addil L%0,dp,r1
0x000108b8      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_C
ST);
1: x/i $pc
=> 0x108b8 <simulate_thread_main+32>:   copy r1,ret0
0x000108bc      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108bc <simulate_thread_main+36>:   ldo 8(ret0),ret0
0x000108c0      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108c0 <simulate_thread_main+40>:   ldw 0(ret0),r6
0x000108c4      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108c4 <simulate_thread_main+44>:   addil L%0,dp,r1
0x000108c8      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108c8 <simulate_thread_main+48>:   copy r1,ret0
0x000108cc      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108cc <simulate_thread_main+52>:   ldo a0(ret0),r5
0x000108d0      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108d0 <simulate_thread_main+56>:   ldw 0(r5),ret0
0x000108d4      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108d4 <simulate_thread_main+60>:   copy ret0,r4
0x000108d8      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108d8 <simulate_thread_main+64>:   copy r5,r26
0x000108dc      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108dc <simulate_thread_main+68>:   copy r4,r25
0x000108e0      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108e0 <simulate_thread_main+72>:   copy r6,r24
0x000108e4      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108e4 <simulate_thread_main+76>:   b,l 0x12b38
<__sync_val_compare_and_swap_4>,rp
0x000108e8      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108e8 <simulate_thread_main+80>:   nop
0x000108ec      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108ec <simulate_thread_main+84>:   cmpclr,<> r4,ret0,r19
0x000108f0      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108f0 <simulate_thread_main+88>:   ldi 1,r19
0x000108f4      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108f4 <simulate_thread_main+92>:   cmpib,= 0,r19,0x108d4
<simulate_thread_main+60>
0x000108f8      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108f8 <simulate_thread_main+96>:   nop
0x000108fc      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x108fc <simulate_thread_main+100>:  addil L%0,dp,r1
0x00010900      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10900 <simulate_thread_main+104>:  copy r1,ret0
0x00010904      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10904 <simulate_thread_main+108>:  ldo c0(ret0),ret0
0x00010908      64        ret = __atomic_exchange_n (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10908 <simulate_thread_main+112>:  stw r4,0(ret0)
65        if (ret != zero || value != max)
1: x/i $pc
=> 0x1090c <simulate_thread_main+116>:  addil L%0,dp,r1
0x00010910      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10910 <simulate_thread_main+120>:  copy r1,ret0
0x00010914      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10914 <simulate_thread_main+124>:  ldo c0(ret0),ret0
0x00010918      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10918 <simulate_thread_main+128>:  ldw 0(ret0),r19
0x0001091c      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x1091c <simulate_thread_main+132>:  addil L%0,dp,r1
0x00010920      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10920 <simulate_thread_main+136>:  copy r1,ret0
0x00010924      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10924 <simulate_thread_main+140>:  ldo 98(ret0),ret0
0x00010928      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10928 <simulate_thread_main+144>:  ldw 0(ret0),ret0
0x0001092c      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x1092c <simulate_thread_main+148>:  cmpb,<>,n ret0,r19,0x10954
<simulate_thread_main+188>
0x00010930      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10930 <simulate_thread_main+152>:  addil L%0,dp,r1
0x00010934      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10934 <simulate_thread_main+156>:  copy r1,ret0
0x00010938      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10938 <simulate_thread_main+160>:  ldo a0(ret0),ret0
0x0001093c      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x1093c <simulate_thread_main+164>:  ldw 0(ret0),r19
0x00010940      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10940 <simulate_thread_main+168>:  addil L%0,dp,r1
0x00010944      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10944 <simulate_thread_main+172>:  copy r1,ret0
0x00010948      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10948 <simulate_thread_main+176>:  ldo 8(ret0),ret0
0x0001094c      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x1094c <simulate_thread_main+180>:  ldw 0(ret0),ret0
0x00010950      65        if (ret != zero || value != max)
1: x/i $pc
=> 0x10950 <simulate_thread_main+184>:  cmpb,=,n ret0,r19,0x1095c
<simulate_thread_main+196>
66          test_abort();
1: x/i $pc
=> 0x10954 <simulate_thread_main+188>:  b,l 0x10754 <test_abort>,rp
0x00010958      66          test_abort();
1: x/i $pc
=> 0x10958 <simulate_thread_main+192>:  nop
68        __atomic_store_n (&value, zero, __ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x1095c <simulate_thread_main+196>:  addil L%0,dp,r1
0x00010960      68        __atomic_store_n (&value, zero, __ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10960 <simulate_thread_main+200>:  copy r1,ret0
0x00010964      68        __atomic_store_n (&value, zero, __ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10964 <simulate_thread_main+204>:  ldo 98(ret0),ret0
0x00010968      68        __atomic_store_n (&value, zero, __ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10968 <simulate_thread_main+208>:  ldw 0(ret0),r19
0x0001096c      68        __atomic_store_n (&value, zero, __ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x1096c <simulate_thread_main+212>:  addil L%0,dp,r1
0x00010970      68        __atomic_store_n (&value, zero, __ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10970 <simulate_thread_main+216>:  copy r1,ret0
0x00010974      68        __atomic_store_n (&value, zero, __ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10974 <simulate_thread_main+220>:  ldo a0(ret0),ret0
0x00010978      68        __atomic_store_n (&value, zero, __ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10978 <simulate_thread_main+224>:  stw r19,0(ret0)
69        if (value != zero)
1: x/i $pc
=> 0x1097c <simulate_thread_main+228>:  addil L%0,dp,r1
0x00010980      69        if (value != zero)
1: x/i $pc
=> 0x10980 <simulate_thread_main+232>:  copy r1,ret0
0x00010984      69        if (value != zero)
1: x/i $pc
=> 0x10984 <simulate_thread_main+236>:  ldo a0(ret0),ret0
0x00010988      69        if (value != zero)
1: x/i $pc
=> 0x10988 <simulate_thread_main+240>:  ldw 0(ret0),r19
0x0001098c      69        if (value != zero)
1: x/i $pc
=> 0x1098c <simulate_thread_main+244>:  addil L%0,dp,r1
0x00010990      69        if (value != zero)
1: x/i $pc
=> 0x10990 <simulate_thread_main+248>:  copy r1,ret0
0x00010994      69        if (value != zero)
1: x/i $pc
=> 0x10994 <simulate_thread_main+252>:  ldo 98(ret0),ret0
0x00010998      69        if (value != zero)
1: x/i $pc
=> 0x10998 <simulate_thread_main+256>:  ldw 0(ret0),ret0
0x0001099c      69        if (value != zero)
1: x/i $pc
=> 0x1099c <simulate_thread_main+260>:  cmpb,=,n ret0,r19,0x109a8
<simulate_thread_main+272>
0x0001099c      69        if (value != zero)
1: x/i $pc
=> 0x1099c <simulate_thread_main+260>:  cmpb,=,n ret0,r19,0x109a8
<simulate_thread_main+272>
72        ret = __atomic_fetch_add (&value, max, __ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109a8 <simulate_thread_main+272>:  addil L%0,dp,r1
0x000109ac      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109ac <simulate_thread_main+276>:  copy r1,ret0
0x000109b0      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109b0 <simulate_thread_main+280>:  ldo 8(ret0),ret0
0x000109b4      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109b4 <simulate_thread_main+284>:  ldw 0(ret0),ret0
0x000109b8      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109b8 <simulate_thread_main+288>:  addil L%0,dp,r1
0x000109bc      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109bc <simulate_thread_main+292>:  copy r1,r19
0x000109c0      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109c0 <simulate_thread_main+296>:  ldo a0(r19),r19
0x000109c4      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109c4 <simulate_thread_main+300>:  copy r19,r26
0x000109c8      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109c8 <simulate_thread_main+304>:  copy ret0,r25
0x000109cc      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109cc <simulate_thread_main+308>:  b,l 0x110c8 <__sync_fetch_and_add_4>,rp
0x000109d0      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109d0 <simulate_thread_main+312>:  nop
0x000109d4      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109d4 <simulate_thread_main+316>:  copy ret0,r19
0x000109d8      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109d8 <simulate_thread_main+320>:  addil L%0,dp,r1
0x000109dc      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109dc <simulate_thread_main+324>:  copy r1,ret0
0x000109e0      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109e0 <simulate_thread_main+328>:  ldo c0(ret0),ret0
0x000109e4      72        ret = __atomic_fetch_add (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x109e4 <simulate_thread_main+332>:  stw r19,0(ret0)
73        if (value != max || ret != zero)
1: x/i $pc
=> 0x109e8 <simulate_thread_main+336>:  addil L%0,dp,r1
0x000109ec      73        if (value != max || ret != zero)
1: x/i $pc
=> 0x109ec <simulate_thread_main+340>:  copy r1,ret0
0x000109f0      73        if (value != max || ret != zero)
1: x/i $pc
=> 0x109f0 <simulate_thread_main+344>:  ldo a0(ret0),ret0
0x000109f4      73        if (value != max || ret != zero)
1: x/i $pc
=> 0x109f4 <simulate_thread_main+348>:  ldw 0(ret0),r19
0x000109f8      73        if (value != max || ret != zero)
1: x/i $pc
=> 0x109f8 <simulate_thread_main+352>:  addil L%0,dp,r1
0x000109fc      73        if (value != max || ret != zero)
1: x/i $pc
=> 0x109fc <simulate_thread_main+356>:  copy r1,ret0
0x00010a00      73        if (value != max || ret != zero)
1: x/i $pc
=> 0x10a00 <simulate_thread_main+360>:  ldo 8(ret0),ret0
0x00010a04      73        if (value != max || ret != zero)
1: x/i $pc
=> 0x10a04 <simulate_thread_main+364>:  ldw 0(ret0),ret0
0x00010a08      73        if (value != max || ret != zero)
1: x/i $pc
=> 0x10a08 <simulate_thread_main+368>:  cmpb,<>,n ret0,r19,0x10a30
<simulate_thread_main+408>
0x00010a08      73        if (value != max || ret != zero)
1: x/i $pc
=> 0x10a08 <simulate_thread_main+368>:  cmpb,<>,n ret0,r19,0x10a30
<simulate_thread_main+408>
74          test_abort ();
1: x/i $pc
=> 0x10a30 <simulate_thread_main+408>:  b,l 0x10754 <test_abort>,rp
0x00010a34      74          test_abort ();
1: x/i $pc
=> 0x10a34 <simulate_thread_main+412>:  nop
76        ret = __atomic_fetch_sub (&value, max, __ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10a38 <simulate_thread_main+416>:  addil L%0,dp,r1
0x00010a3c      76        ret = __atomic_fetch_sub (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10a3c <simulate_thread_main+420>:  copy r1,ret0
0x00010a40      76        ret = __atomic_fetch_sub (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10a40 <simulate_thread_main+424>:  ldo 8(ret0),ret0
0x00010a44      76        ret = __atomic_fetch_sub (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10a44 <simulate_thread_main+428>:  ldw 0(ret0),ret0
0x00010a48      76        ret = __atomic_fetch_sub (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10a48 <simulate_thread_main+432>:  addil L%0,dp,r1
0x00010a4c      76        ret = __atomic_fetch_sub (&value, max,
__ATOMIC_SEQ_CST);
1: x/i $pc
=> 0x10a4c <simulate_thread_main+436>:  copy r1,r19
0x00010a50      76        ret = __atomic_fetch_sub (&value, max,
__ATOMIC_SEQ_CST);
FAIL: gcc.dg/simulate-thread/atomic-other-int.c  -O0 -g  thread simulation test


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

* [Bug target/51753] Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86
  2012-01-04 17:28 [Bug target/51753] New: Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86 ro at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2012-02-02  2:37 ` danglin at gcc dot gnu.org
@ 2012-02-07 18:10 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2012-02-10 15:28 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2012-02-17  9:58 ` ro at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2012-02-07 18:10 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> 2012-02-07 18:09:45 UTC ---
> Please look at gcc.log files in your testsuite directory. There are extensive
> single-instruction traces to analyse what went wrong. Comparing your traces to
> linux execution should give you a hint.

The Solaris results were completely nonsensical at first, but ultimately
could be explained by a (long-standing, I suppose) and stupid gdb bug:

    http://sourceware.org/ml/gdb-patches/2012-02/msg00075.html

With this fixed, all but the

FAIL: gcc.dg/simulate-thread/atomic-load-int128.c  -O0 -g  thread simulation
test

failures (at all optimization levels) were gone.  I didn't have the
Linux/x86_64 gcc.log available for comparison, so I still have to
investigate that one.

On Solaris 10/x86, I'm sometimes still seeing FAILs, but they may just
be timeouts.  I've have to check that, too.

I'm still seeing a large number of failures both on IRIX 6.5 and Tru64
UNIX V5.1B (both with gdb 7.4), but I suppose those are better filed as
separate PRs.  I certainly cannot compare gcc.log/g++.log output from
other OSes since have no machines running e.g. Linux for comparison.

    Rainer


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

* [Bug target/51753] Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86
  2012-01-04 17:28 [Bug target/51753] New: Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86 ro at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2012-02-07 18:10 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2012-02-10 15:28 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2012-02-17  9:58 ` ro at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2012-02-10 15:28 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> 2012-02-10 15:28:17 UTC ---
> With this fixed, all but the
>
> FAIL: gcc.dg/simulate-thread/atomic-load-int128.c  -O0 -g  thread simulation
> test
>
> failures (at all optimization levels) were gone.  I didn't have the
> Linux/x86_64 gcc.log available for comparison, so I still have to
> investigate that one.

With the recent timeout changes, even those failures are gone, so
Solaris/x86 results are clean.

> I'm still seeing a large number of failures both on IRIX 6.5 and Tru64
> UNIX V5.1B (both with gdb 7.4), but I suppose those are better filed as
> separate PRs.  I certainly cannot compare gcc.log/g++.log output from
> other OSes since have no machines running e.g. Linux for comparison.

I'll check those with a massively increased timeout to see if that makes
a difference.  I wonder if it wouldn't be better to handle those other
platforms in a different PR.

    Rainer


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

* [Bug target/51753] Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86
  2012-01-04 17:28 [Bug target/51753] New: Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86 ro at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2012-02-10 15:28 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2012-02-17  9:58 ` ro at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: ro at gcc dot gnu.org @ 2012-02-17  9:58 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Rainer Orth <ro at gcc dot gnu.org> 2012-02-17 09:41:20 UTC ---
Author: ro
Date: Fri Feb 17 09:41:13 2012
New Revision: 184330

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=184330
Log:
Increase simulate-thread timeout (PR target/51753)

    PR target/51753
    * lib/gcc-simulate-thread.exp: Load timeout.exp.
    (simulate-thread): Use default timeout.

Modified:
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/lib/gcc-simulate-thread.exp


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

end of thread, other threads:[~2012-02-17  9:42 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-01-04 17:28 [Bug target/51753] New: Many gcc.dg/simultate-thread tests fail on Solaris 10+/x86 ro at gcc dot gnu.org
2012-01-30 18:48 ` [Bug target/51753] " ro at CeBiTec dot Uni-Bielefeld.DE
2012-01-30 19:23 ` ubizjak at gmail dot com
2012-02-02  2:37 ` danglin at gcc dot gnu.org
2012-02-07 18:10 ` ro at CeBiTec dot Uni-Bielefeld.DE
2012-02-10 15:28 ` ro at CeBiTec dot Uni-Bielefeld.DE
2012-02-17  9:58 ` 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).