Steve Kann
2005-Mar-08 09:03 UTC
[Speex-dev] Speex-1.1.7 seems to crash with --enable-sse (on P3/GCC-3.2)..
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
Jean-Marc Valin
2005-Mar-11 11:15 UTC
[Speex-dev] Speex-1.1.7 seems to crash with --enable-sse (on P3/GCC-3.2)..
Hi, First question is do you run a 2.4 kernel or later (2.2 doesn't support SSE). Next thing to check, does 1.1.6 work? You may also want to increase the encoder/decoder stack size just in case. Oh, and don't compile with -mfpmath=sse . Jean-Marc Le mardi 08 mars 2005 ? 12:02 -0500, Steve Kann a ?crit :> 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 > > > _______________________________________________ > Speex-dev mailing list > Speex-dev@xiph.org > http://lists.xiph.org/mailman/listinfo/speex-dev >-- Jean-Marc Valin <Jean-Marc.Valin@USherbrooke.ca> Universit? de Sherbrooke
Reasonably Related Threads
- Speex-1.1.7 seems to crash with --enable-sse (on P3/GCC-3.2)..
- Speex-1.1.7 seems to crash with --enable-sse (on P3/GCC-3.2)..
- Coredumps when --enable-sse is selected
- Notes on 1.1.4 Windows. Testing of SSE Intrinics Code and others
- [PATCH] Make SSE Run Time option.