[Speex-dev] Speex-1.1.7 seems to crash with --enable-sse (on
P3/GCC-3.2)..
Steve Kann
stevek at stevek.com
Tue Mar 8 09:02:51 PST 2005
I tried building speex with SSE, and found that it crashes for me here:
[This is on RH=8.0]:
# libtool gdb ./src/speexenc
GNU gdb Red Hat Linux (5.2.1-4)
[...]
This GDB was configured as "i386-redhat-linux"...
(gdb) r --rate 8000 --16bit -n /dev/zero /tmp/foo
Starting program: /usr/src/speex-1.1.7/src/.libs/lt-speexenc --rate 8000
--16bit -n /dev/zero /tmp/foo
Encoding 8000 Hz audio using narrowband mode (mono)
Program received signal SIGSEGV, Segmentation fault.
fir_mem2_10 (x=0x8054a88, _num=0x8055e94, y=0x805508c, N=160, ord=10,
_mem=0x80560ac)
at /usr/lib/gcc-lib/i386-redhat-linux/3.2/include/xmmintrin.h:774
774 {
(gdb)
(gdb) bt
#0 fir_mem2_10 (x=0x8054a88, _num=0x8055e94, y=0x805508c, N=160,
ord=10, _mem=0x80560ac)
at /usr/lib/gcc-lib/i386-redhat-linux/3.2/include/xmmintrin.h:774
#1 0x40020add in fir_mem2 (x=0x8054a88, _num=0x8055e94, y=0x805508c,
N=160, ord=0, _mem=0x1) at filters_sse.h:330
#2 0x40016c23 in nb_encode (state=0x8054990, vin=0xbfffd420,
bits=0xbfffeaa0) at nb_celp.c:351
#3 0x400215f4 in speex_encode_int (state=0x8054990, in=0xbfffead0,
bits=0xbfffeaa0) at speex.c:141
#4 0x0804a089 in main (argc=-80, argv=0xbffffad4) at speexenc.c:688
#5 0x420158d4 in __libc_start_main () from /lib/i686/libc.so.6
(gdb) q
The program is running. Exit anyway? (y or n) y
If I build without sse, things are OK.
This box is running RH-8 on a PIII (katmai), which seems to support sse:
flags : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca
cmov pat pse36 mmx fxsr sse
If I compile the same thing on another box with an Athlon CPU instead,
it seems to work without crashing..
I guess it's not critical in this case, but does anyone know if this is
an issue with the SSE intrinsics in gcc-3.2, or is it a CPU-support
issue (or something else?).
-SteveK
More information about the Speex-dev
mailing list