[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Pkg-octave-devel] Bug#338501: marked as done ([i386] gcc produces code that sigill on K6)



Your message dated Sat, 4 Mar 2006 22:21:37 +0200
with message-id <20060304202137.GA30167@sauna.l.org>
and subject line Bug#338501: [i386] gcc produces code that sigill on K6
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--- Begin Message ---
Package: octave
Version: 2.1.71-7
Severity: normal

Summary:

octave dies with "illegal instruction" on a pentium MMX system but
works on an athlon system. Script to trigger the bug is available at
http://iki.fi/lindi/mycos.m

Transcript:

lindi@dandelion:~/tmp$ octave
GNU Octave, version 2.1.71 (i486-pc-linux-gnu).
Copyright (C) 2005 John W. Eaton.
This is free software; see the source code for copying conditions.
There is ABSOLUTELY NO WARRANTY; not even for MERCHANTIBILITY or
FITNESS FOR A PARTICULAR PURPOSE.  For details, type `warranty'.

Additional information about Octave is available at http://www.octave.org.

Please contribute if you find this software useful.
For more information, visit http://www.octave.org/help-wanted.html

Report bugs to <bug@octave.org> (but first, please read
http://www.octave.org/bugs.html to learn how to write a helpful report).

octave:1> x1 = mycos(3, 200, 0);
panic: Illegal instruction -- stopping myself...
attempting to save variables to `octave-core'...
save to `octave-core' complete
Illegal instruction (core dumped)

lindi@dandelion:~$ cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 5
model           : 4
model name      : Pentium MMX
stepping        : 4
cpu MHz         : 199.682
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : yes
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr mce cx8 mmx
bogomips        : 398.13

The athlon system where the package and script work without problems
has:

lindi@sauna:~$ cat /proc/cpuinfo
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 6
model           : 4
model name      : AMD Athlon(tm) processor
stepping        : 2
cpu MHz         : 701.604
cache size      : 256 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr syscall mmxext 3dnowext 3dnow
bogomips        : 1399.19


Backtrace:

#0  0x41709b50 in fftw_taint ()
   from /usr/lib/libfftw3.so.3
(gdb) bt
#0  0x41709b50 in fftw_taint () from /usr/lib/libfftw3.so.3
#1  0x40816e43 in octave_fftw_planner::create_plan () from /usr/lib/octave-2.1.71/liboctave.so
#2  0x40818043 in octave_fftw::fft () from /usr/lib/octave-2.1.71/liboctave.so
#3  0x40abc722 in NDArray::fourier () from /usr/lib/octave-2.1.71/liboctave.so
#4  0x41e0b915 in ?? () from /usr/lib/octave/2.1.71/oct/i486-pc-linux-gnu/fft.oct
#5  0x41e0bced in Ffft () from /usr/lib/octave/2.1.71/oct/i486-pc-linux-gnu/fft.oct
#6  0x403611a7 in octave_builtin::do_multi_index_op () from /usr/lib/octave-2.1.71/liboctinterp.so
#7  0x41df0775 in octave_dispatch::do_multi_index_op () from /usr/lib/octave/site/oct/api-v13/i486-pc-linux-gnu/octave-forge/dispatch.oct
#8  0x41df1e2f in octave_dispatch::subsref () from /usr/lib/octave/site/oct/api-v13/i486-pc-linux-gnu/octave-forge/dispatch.oct
#9  0x40342a09 in octave_value::subsref () from /usr/lib/octave-2.1.71/liboctinterp.so
#10 0x40430b4d in tree_index_expression::rvalue () from /usr/lib/octave-2.1.71/liboctinterp.so
#11 0x40430de6 in tree_index_expression::rvalue () from /usr/lib/octave-2.1.71/liboctinterp.so
#12 0x4041a4af in tree_simple_assignment::rvalue () from /usr/lib/octave-2.1.71/liboctinterp.so
#13 0x40419ebe in tree_simple_assignment::rvalue () from /usr/lib/octave-2.1.71/liboctinterp.so
#14 0x4044f21b in tree_statement::eval () from /usr/lib/octave-2.1.71/liboctinterp.so
#15 0x4044f7fa in tree_statement_list::eval () from /usr/lib/octave-2.1.71/liboctinterp.so
#16 0x4036ce99 in octave_user_function::do_multi_index_op () from /usr/lib/octave-2.1.71/liboctinterp.so
#17 0x4036bd52 in octave_user_function::subsref () from /usr/lib/octave-2.1.71/liboctinterp.so
#18 0x40342a09 in octave_value::subsref () from /usr/lib/octave-2.1.71/liboctinterp.so
#19 0x40430b4d in tree_index_expression::rvalue () from /usr/lib/octave-2.1.71/liboctinterp.so
#20 0x40430de6 in tree_index_expression::rvalue () from /usr/lib/octave-2.1.71/liboctinterp.so
#21 0x4041a4af in tree_simple_assignment::rvalue () from /usr/lib/octave-2.1.71/liboctinterp.so
#22 0x40419ebe in tree_simple_assignment::rvalue () from /usr/lib/octave-2.1.71/liboctinterp.so
#23 0x4044f21b in tree_statement::eval () from /usr/lib/octave-2.1.71/liboctinterp.so
#24 0x4044f7fa in tree_statement_list::eval () from /usr/lib/octave-2.1.71/liboctinterp.so
#25 0x402abd01 in main_loop () from /usr/lib/octave-2.1.71/liboctinterp.so
#26 0x405e31a5 in octave_main () from /usr/lib/octave-2.1.71/liboctinterp.so
#27 0x0804865b in main ()
(gdb) x/4i $eip
0x41709b50 <fftw_taint+16>:     cmovne %edx,%eax
0x41709b53 <fftw_taint+19>:     ret
0x41709b54 <fftw_taint+20>:     lea    0x0(%esi),%esi
0x41709b5a <fftw_taint+26>:     lea    0x0(%edi),%edi
(gdb) disassemble fftw_taint
Dump of assembler code for function fftw_taint:
0x41709b40 <fftw_taint+0>:      push   %ebp
0x41709b41 <fftw_taint+1>:      mov    %esp,%ebp
0x41709b43 <fftw_taint+3>:      mov    0x8(%ebp),%eax
0x41709b46 <fftw_taint+6>:      mov    %eax,%edx
0x41709b48 <fftw_taint+8>:      or     $0x3,%edx
0x41709b4b <fftw_taint+11>:     testb  $0x1,0xc(%ebp)
0x41709b4f <fftw_taint+15>:     pop    %ebp
0x41709b50 <fftw_taint+16>:     cmovne %edx,%eax
0x41709b53 <fftw_taint+19>:     ret
0x41709b54 <fftw_taint+20>:     lea    0x0(%esi),%esi
0x41709b5a <fftw_taint+26>:     lea    0x0(%edi),%edi
End of assembler dump.
(gdb) info register
eax            0x8f8cf70        150523760
ecx            0xbfffe358       -1073749160
edx            0x8f8cf73        150523763
ebx            0x417cf3dc       1098707932
esp            0xbfffe31c       0xbfffe31c
ebp            0xbfffe368       0xbfffe368
esi            0x1      1
edi            0x0      0
eip            0x41709b50       0x41709b50
eflags         0x202    514
cs             0x23     35
ss             0x2b     43
ds             0x2b     43
es             0x2b     43
fs             0x2b     43
gs             0x2b     43




-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i586)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.4.31dandelion2
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Versions of packages octave depends on:
ii  octave2.1                     2.1.71-7   GNU Octave language for numerical 

octave recommends no packages.

-- no debconf information


--- End Message ---
--- Begin Message ---
Hi,

On Sat, Mar 04, 2006 at 07:39:26PM +0100, Falk Hueffner wrote:
> given that nobody seems to disagree with me, I think we can close this
> bug :-)

I just did apt-get update && apt-get dist-upgrade and octave seems to
still die with illegal instruction

octave:1> fft([1 2 3]);
panic: Illegal instruction -- stopping myself...
attempting to save variables to `octave-core'...
save to `octave-core' complete
Illegal instruction (core dumped)

so shouldn't but 338501 be reopened and assigned back to octave?

best regards,
Timo Lindfors

Attachment: pgpSpjgoJYx6F.pgp
Description: PGP signature


--- End Message ---

Reply to: