user/gsl: (ppc) FTTFS: FAIL: test_c11: Segmentation fault
Found on ppc:
...
make test test_c11
make[2]: Entering directory '/root/packages/user/gsl/src/gsl-2.7.1/complex'
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -O2 -fno-omit-frame-pointer -ggdb -mcpu=G3 -mfpu=dp_full -g -MT test.o -MD -MP -MF .deps/test.Tpo -c -o test.o test.c
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -DTEST_C11 -O2 -fno-omit-frame-pointer -ggdb -mcpu=G3 -mfpu=dp_full -g -MT test_c11-test.o -MD -MP -MF .deps/test_c11-test.Tpo -c -o test_c11-test.o `test -f 'test.c' || echo './'`test.c
mv -f .deps/test_c11-test.Tpo .deps/test_c11-test.Po
/bin/sh ../libtool --tag=CC --mode=link gcc -DTEST_C11 -O2 -fno-omit-frame-pointer -ggdb -mcpu=G3 -mfpu=dp_full -g -Wl,--as-needed -Wl,--no-keep-memory -o test_c11 test_c11-test.o libgslcomplex.la ../err/libgslerr.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.>
mv -f .deps/test.Tpo .deps/test.Po
/bin/sh ../libtool --tag=CC --mode=link gcc -O2 -fno-omit-frame-pointer -ggdb -mcpu=G3 -mfpu=dp_full -g -Wl,--as-needed -Wl,--no-keep-memory -o test test.o libgslcomplex.la ../err/libgslerr.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.l>
libtool: link: gcc -DTEST_C11 -O2 -fno-omit-frame-pointer -ggdb -mcpu=G3 -mfpu=dp_full -g -Wl,--as-needed -Wl,--no-keep-memory -o test_c11 test_c11-test.o ./.libs/libgslcomplex.a ../ieee-utils/.libs/libgslieeeutils.a ../err/.libs/libgslerr.a ../test/.libs/libgsltest.a .>
libtool: link: gcc -O2 -fno-omit-frame-pointer -ggdb -mcpu=G3 -mfpu=dp_full -g -Wl,--as-needed -Wl,--no-keep-memory -o test test.o ./.libs/libgslcomplex.a ../ieee-utils/.libs/libgslieeeutils.a ../err/.libs/libgslerr.a ../test/.libs/libgsltest.a ../sys/.libs/libgslsys.a >
make[2]: Leaving directory '/root/packages/user/gsl/src/gsl-2.7.1/complex'
make check-TESTS
make[2]: Entering directory '/root/packages/user/gsl/src/gsl-2.7.1/complex'
make[3]: Entering directory '/root/packages/user/gsl/src/gsl-2.7.1/complex'
FAIL: test_c11
PASS: test
============================================================================
Testsuite summary for gsl 2.7.1
============================================================================
# TOTAL: 2
# PASS: 1
# SKIP: 0
# XFAIL: 0
# FAIL: 1
# XPASS: 0
# ERROR: 0
============================================================================
See complex/test-suite.log
============================================================================
make[3]: *** [Makefile:767: test-suite.log] Error 1
make[3]: Leaving directory '/root/packages/user/gsl/src/gsl-2.7.1/complex'
make[2]: *** [Makefile:875: check-TESTS] Error 2
make[2]: Leaving directory '/root/packages/user/gsl/src/gsl-2.7.1/complex'
make[1]: *** [Makefile:956: check-am] Error 2
make[1]: Leaving directory '/root/packages/user/gsl/src/gsl-2.7.1/complex'
make: *** [Makefile:987: check-recursive] Error 1
The test log shows:
=======================================
gsl 2.7.1: complex/test-suite.log
=======================================
# TOTAL: 2
# PASS: 1
# SKIP: 0
# XFAIL: 0
# FAIL: 1
# XPASS: 0
# ERROR: 0
.. contents:: :depth: 2
FAIL: test_c11
==============
Segmentation fault
Backtrace:
(gdb) run
Starting program: /root/packages/user/gsl/src/gsl-2.7.1/complex/test_c11
Program received signal SIGSEGV, Segmentation fault.
0x00420d0c in gsl_complex_polar (r=r@entry=-1.5, theta=theta@entry=0) at math.c:59
59 return z;
(gdb) bt
#0 0x00420d0c in gsl_complex_polar (r=r@entry=-1.5, theta=theta@entry=0) at math.c:59
#1 0x00420580 in test_all () at test_source.c:151
#2 main () at test.c:44
Disassembly:
(gdb) disas
Dump of assembler code for function gsl_complex_polar:
0x00420c98 <+0>: stwu r1,-64(r1)
0x00420c9c <+4>: mflr r0
0x00420ca0 <+8>: bcl 20,4*cr7+so,0x420ca4 <gsl_complex_polar+12>
0x00420ca4 <+12>: stfd f31,56(r1)
0x00420ca8 <+16>: fmr f31,f1
0x00420cac <+20>: stw r30,48(r1)
0x00420cb0 <+24>: fmr f1,f2
0x00420cb4 <+28>: mflr r30
0x00420cb8 <+32>: stw r31,52(r1)
0x00420cbc <+36>: addis r30,r30,2
0x00420cc0 <+40>: mr r31,r1
0x00420cc4 <+44>: stw r29,44(r1)
0x00420cc8 <+48>: addi r30,r30,28824
0x00420ccc <+52>: mr r29,r3
0x00420cd0 <+56>: addi r4,r31,16
0x00420cd4 <+60>: addi r3,r31,24
0x00420cd8 <+64>: stw r0,68(r1)
0x00420cdc <+68>: bl 0x426320 <00008000.got2.plt_pic32.sincos>
0x00420ce0 <+72>: lfd f0,16(r31)
0x00420ce4 <+76>: lfd f12,24(r31)
0x00420ce8 <+80>: addi r11,r31,64
0x00420cec <+84>: fmul f0,f0,f31
0x00420cf0 <+88>: lwz r0,4(r11)
0x00420cf4 <+92>: mr r3,r29
0x00420cf8 <+96>: lwz r30,-16(r11)
0x00420cfc <+100>: fmul f1,f12,f31
0x00420d00 <+104>: lwz r31,-12(r11)
0x00420d04 <+108>: lfd f31,-8(r11)
0x00420d08 <+112>: mtlr r0
=> 0x00420d0c <+116>: stfd f0,0(r29)
0x00420d10 <+120>: stfd f1,8(r29)
0x00420d14 <+124>: lwz r29,-20(r11)
0x00420d18 <+128>: mr r1,r11
0x00420d1c <+132>: blr
End of assembler dump.