--- Begin Message ---
Package: atlas3-base
Version: 3.6.0-20.6
Severity: important
Greetings,
idamax_() has an illegal instruction on Crusoe. refblas3 works fine.
Here's gdb output:
gdb tests/.libs/matrixtest
GNU gdb 6.4.90-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...Using host libthread_db library
"/lib/tls/i686/cmov/libthread_db.so.1".
(gdb) run
Starting program:
/home/hazelsct/svn/svn-powell-repos/trunk/buildJulian/tests/.libs/matrixtest
Failed to read a valid object file image from memory.
[Thread debugging using libthread_db enabled]
[New Thread -1215522240 (LWP 9889)]
==================
Testing BLAS/LAPACK wrapper for Ax=b and xA=b (matrixtest.c)...
Allocating memory (12.211 MB)...
Random fill completed in 0.430 seconds, 2558139 randoms/sec
A*x calculated in 0.510 seconds, 392.157 MFlops/s
x'*A calculated in 0.510 seconds, 392.157 MFlops/s
LU Decomposing matrix |_________________________________________________|
Program received signal SIGILL, Illegal instruction.
[Switching to Thread -1215522240 (LWP 9889)]
0xb7a68fb6 in ATL_diamax_xp1yp0aXbX () from /usr/lib/atlas/libblas.so.3
(gdb) bt
#0 0xb7a68fb6 in ATL_diamax_xp1yp0aXbX () from /usr/lib/atlas/libblas.so.3
#1 0xb7c6c240 in ?? () from /usr/lib/atlas/libblas.so.3
#2 0x000003e8 in ?? ()
#3 0x00000020 in ?? ()
#4 0xb7a68cb5 in ATL_idamax () from /usr/lib/atlas/libblas.so.3
#5 0x000003e8 in ?? ()
#6 0xb7127008 in ?? ()
#7 0x00000001 in ?? ()
#8 0x000003e8 in ?? ()
#9 0xb7a68c50 in ATL_dgpr1L_a1_x1_yX () from /usr/lib/atlas/libblas.so.3
#10 0xb7127008 in ?? ()
#11 0xb794684a in atl_f77wrap_idamax__ () from /usr/lib/atlas/libblas.so.3
#12 0x000003e8 in ?? ()
#13 0xb7127008 in ?? ()
#14 0x00000001 in ?? ()
#15 0xbffff5b0 in ?? ()
#16 0xb7946810 in atl_f77wrap_icamax__ () from /usr/lib/atlas/libblas.so.3
#17 0xb7c6c240 in ?? () from /usr/lib/atlas/libblas.so.3
#18 0xbffff5b0 in ?? ()
#19 0xb7c61b08 in idamax_ () from /usr/lib/atlas/libblas.so.3
#20 0xb7fb26ba in p_dgetrf_ (mm=0xbffff6c4, nn=0xbffff6cc, a=0xb7127008,
llda=0x804c088, ipiv=0x804c1d0, iinfo=0xbffff71c,
progress_bar=0x8049fe0 <matProgressBar>)
---Type <return> to continue, or q <return> to quit---
at ../../Julian/julian/p_dgetrf.c:80
#21 0xb7fb23cc in p_dgetrf_ (mm=0x804c088, nn=0x804c084, a=0xb7127008,
llda=0x804c088, ipiv=0x804c1d0, iinfo=0xbffff71c,
progress_bar=0x8049fe0 <matProgressBar>)
at ../../Julian/julian/p_dgetrf.c:127
#22 0xb7fb4424 in matDecompose (a=0x804c068)
at ../../Julian/julian/matrix.c:680
#23 0x0804938a in main () at ../../Julian/tests/matrixtest.c:117
(gdb) disassemble
Dump of assembler code for function ATL_diamax_xp1yp0aXbX:
0xb7a68f60 <ATL_diamax_xp1yp0aXbX+0>: sub $0xc,%esp
0xb7a68f63 <ATL_diamax_xp1yp0aXbX+3>: mov %ebx,(%esp)
0xb7a68f66 <ATL_diamax_xp1yp0aXbX+6>: mov %esi,0x4(%esp)
0xb7a68f6a <ATL_diamax_xp1yp0aXbX+10>: mov %edi,0x8(%esp)
0xb7a68f6e <ATL_diamax_xp1yp0aXbX+14>: mov 0x10(%esp),%eax
0xb7a68f72 <ATL_diamax_xp1yp0aXbX+18>: mov 0x14(%esp),%esi
0xb7a68f76 <ATL_diamax_xp1yp0aXbX+22>: mov %esi,%edi
0xb7a68f78 <ATL_diamax_xp1yp0aXbX+24>: mov %esi,%ecx
0xb7a68f7a <ATL_diamax_xp1yp0aXbX+26>: cmp $0x1,%eax
0xb7a68f7d <ATL_diamax_xp1yp0aXbX+29>: jbe 0xb7a6902d
<ATL_diamax_xp1yp0aXbX+205>
0xb7a68f83 <ATL_diamax_xp1yp0aXbX+35>: mov %eax,%edx
0xb7a68f85 <ATL_diamax_xp1yp0aXbX+37>: shl $0x3,%edx
0xb7a68f88 <ATL_diamax_xp1yp0aXbX+40>: add %esi,%edx
0xb7a68f8a <ATL_diamax_xp1yp0aXbX+42>: cmp %esi,%edx
0xb7a68f8c <ATL_diamax_xp1yp0aXbX+44>: fldl (%esi)
0xb7a68f8e <ATL_diamax_xp1yp0aXbX+46>: fabs
0xb7a68f90 <ATL_diamax_xp1yp0aXbX+48>: add $0x8,%esi
0xb7a68f93 <ATL_diamax_xp1yp0aXbX+51>: mov %eax,%ebx
0xb7a68f95 <ATL_diamax_xp1yp0aXbX+53>: sub $0x1,%ebx
0xb7a68f98 <ATL_diamax_xp1yp0aXbX+56>: shr $0x3,%ebx
0xb7a68f9b <ATL_diamax_xp1yp0aXbX+59>: shl $0x6,%ebx
---Type <return> to continue, or q <return> to quit---
0xb7a68f9e <ATL_diamax_xp1yp0aXbX+62>: add %esi,%ebx
0xb7a68fa0 <ATL_diamax_xp1yp0aXbX+64>: cmp %ebx,%esi
0xb7a68fa2 <ATL_diamax_xp1yp0aXbX+66>: je 0xb7a690ca
<ATL_diamax_xp1yp0aXbX+362>
0xb7a68fa8 <ATL_diamax_xp1yp0aXbX+72>: nop
0xb7a68fa9 <ATL_diamax_xp1yp0aXbX+73>: lea 0x0(%esi),%esi
0xb7a68fb0 <ATL_diamax_xp1yp0aXbX+80>: fldl (%esi)
0xb7a68fb2 <ATL_diamax_xp1yp0aXbX+82>: fabs
0xb7a68fb4 <ATL_diamax_xp1yp0aXbX+84>: fcomip %st(1),%st
0xb7a68fb6 <ATL_diamax_xp1yp0aXbX+86>: prefetchnta 0x23c(%esi)
0xb7a68fbd <ATL_diamax_xp1yp0aXbX+93>: ja 0xb7a69046
<ATL_diamax_xp1yp0aXbX+230>
0xb7a68fc3 <ATL_diamax_xp1yp0aXbX+99>: fldl 0x8(%esi)
0xb7a68fc6 <ATL_diamax_xp1yp0aXbX+102>: fabs
0xb7a68fc8 <ATL_diamax_xp1yp0aXbX+104>: fcomip %st(1),%st
0xb7a68fca <ATL_diamax_xp1yp0aXbX+106>: ja 0xb7a69053
<ATL_diamax_xp1yp0aXbX+243>
0xb7a68fd0 <ATL_diamax_xp1yp0aXbX+112>: fldl 0x10(%esi)
0xb7a68fd3 <ATL_diamax_xp1yp0aXbX+115>: fabs
0xb7a68fd5 <ATL_diamax_xp1yp0aXbX+117>: fcomip %st(1),%st
0xb7a68fd7 <ATL_diamax_xp1yp0aXbX+119>: ja 0xb7a69064
<ATL_diamax_xp1yp0aXbX+260>
0xb7a68fdd <ATL_diamax_xp1yp0aXbX+125>: fldl 0x18(%esi)
---Type <return> to continue, or q <return> to quit---
0xb7a68fe0 <ATL_diamax_xp1yp0aXbX+128>: fabs
0xb7a68fe2 <ATL_diamax_xp1yp0aXbX+130>: fcomip %st(1),%st
0xb7a68fe4 <ATL_diamax_xp1yp0aXbX+132>: ja 0xb7a69075
<ATL_diamax_xp1yp0aXbX+277>
0xb7a68fea <ATL_diamax_xp1yp0aXbX+138>: fldl 0x20(%esi)
0xb7a68fed <ATL_diamax_xp1yp0aXbX+141>: fabs
0xb7a68fef <ATL_diamax_xp1yp0aXbX+143>: fcomip %st(1),%st
0xb7a68ff1 <ATL_diamax_xp1yp0aXbX+145>: ja 0xb7a69086
<ATL_diamax_xp1yp0aXbX+294>
0xb7a68ff7 <ATL_diamax_xp1yp0aXbX+151>: fldl 0x28(%esi)
0xb7a68ffa <ATL_diamax_xp1yp0aXbX+154>: fabs
0xb7a68ffc <ATL_diamax_xp1yp0aXbX+156>: fcomip %st(1),%st
0xb7a68ffe <ATL_diamax_xp1yp0aXbX+158>: ja 0xb7a69097
<ATL_diamax_xp1yp0aXbX+311>
0xb7a69004 <ATL_diamax_xp1yp0aXbX+164>: fldl 0x30(%esi)
0xb7a69007 <ATL_diamax_xp1yp0aXbX+167>: fabs
0xb7a69009 <ATL_diamax_xp1yp0aXbX+169>: fcomip %st(1),%st
0xb7a6900b <ATL_diamax_xp1yp0aXbX+171>: ja 0xb7a690a8
<ATL_diamax_xp1yp0aXbX+328>
0xb7a69011 <ATL_diamax_xp1yp0aXbX+177>: fldl 0x38(%esi)
0xb7a69014 <ATL_diamax_xp1yp0aXbX+180>: fabs
0xb7a69016 <ATL_diamax_xp1yp0aXbX+182>: fcomip %st(1),%st
0xb7a69018 <ATL_diamax_xp1yp0aXbX+184>: ja 0xb7a690b9
<ATL_diamax_xp1yp0aXbX---Type <return> to continue, or q <return> to quit---
+345>
0xb7a6901e <ATL_diamax_xp1yp0aXbX+190>: add $0x40,%esi
0xb7a69021 <ATL_diamax_xp1yp0aXbX+193>: cmp %ebx,%esi
0xb7a69023 <ATL_diamax_xp1yp0aXbX+195>: jne 0xb7a68fb0
<ATL_diamax_xp1yp0aXbX+80>
0xb7a69025 <ATL_diamax_xp1yp0aXbX+197>: cmp %ebx,%edx
0xb7a69027 <ATL_diamax_xp1yp0aXbX+199>: jne 0xb7a690ca
<ATL_diamax_xp1yp0aXbX+362>
0xb7a6902d <ATL_diamax_xp1yp0aXbX+205>: finit
0xb7a69030 <ATL_diamax_xp1yp0aXbX+208>: mov %ecx,%eax
0xb7a69032 <ATL_diamax_xp1yp0aXbX+210>: sub %edi,%eax
0xb7a69034 <ATL_diamax_xp1yp0aXbX+212>: shr $0x3,%eax
0xb7a69037 <ATL_diamax_xp1yp0aXbX+215>: mov (%esp),%ebx
0xb7a6903a <ATL_diamax_xp1yp0aXbX+218>: mov 0x4(%esp),%esi
0xb7a6903e <ATL_diamax_xp1yp0aXbX+222>: mov 0x8(%esp),%edi
0xb7a69042 <ATL_diamax_xp1yp0aXbX+226>: add $0xc,%esp
0xb7a69045 <ATL_diamax_xp1yp0aXbX+229>: ret
0xb7a69046 <ATL_diamax_xp1yp0aXbX+230>: fstp %st(0)
0xb7a69048 <ATL_diamax_xp1yp0aXbX+232>: fldl (%esi)
0xb7a6904a <ATL_diamax_xp1yp0aXbX+234>: fabs
0xb7a6904c <ATL_diamax_xp1yp0aXbX+236>: mov %esi,%ecx
0xb7a6904e <ATL_diamax_xp1yp0aXbX+238>: jmp 0xb7a68fc3
<ATL_diamax_xp1yp0aXbX+99>
---Type <return> to continue, or q <return> to quit---
0xb7a69053 <ATL_diamax_xp1yp0aXbX+243>: fstp %st(0)
0xb7a69055 <ATL_diamax_xp1yp0aXbX+245>: fldl 0x8(%esi)
0xb7a69058 <ATL_diamax_xp1yp0aXbX+248>: fabs
0xb7a6905a <ATL_diamax_xp1yp0aXbX+250>: mov %esi,%ecx
0xb7a6905c <ATL_diamax_xp1yp0aXbX+252>: add $0x8,%ecx
0xb7a6905f <ATL_diamax_xp1yp0aXbX+255>: jmp 0xb7a68fd0
<ATL_diamax_xp1yp0aXbX+112>
0xb7a69064 <ATL_diamax_xp1yp0aXbX+260>: fstp %st(0)
0xb7a69066 <ATL_diamax_xp1yp0aXbX+262>: fldl 0x10(%esi)
0xb7a69069 <ATL_diamax_xp1yp0aXbX+265>: fabs
0xb7a6906b <ATL_diamax_xp1yp0aXbX+267>: mov %esi,%ecx
0xb7a6906d <ATL_diamax_xp1yp0aXbX+269>: add $0x10,%ecx
0xb7a69070 <ATL_diamax_xp1yp0aXbX+272>: jmp 0xb7a68fdd
<ATL_diamax_xp1yp0aXbX+125>
0xb7a69075 <ATL_diamax_xp1yp0aXbX+277>: fstp %st(0)
0xb7a69077 <ATL_diamax_xp1yp0aXbX+279>: fldl 0x18(%esi)
0xb7a6907a <ATL_diamax_xp1yp0aXbX+282>: fabs
0xb7a6907c <ATL_diamax_xp1yp0aXbX+284>: mov %esi,%ecx
0xb7a6907e <ATL_diamax_xp1yp0aXbX+286>: add $0x18,%ecx
0xb7a69081 <ATL_diamax_xp1yp0aXbX+289>: jmp 0xb7a68fea
<ATL_diamax_xp1yp0aXbX+138>
0xb7a69086 <ATL_diamax_xp1yp0aXbX+294>: fstp %st(0)
0xb7a69088 <ATL_diamax_xp1yp0aXbX+296>: fldl 0x20(%esi)
---Type <return> to continue, or q <return> to quit---
0xb7a6908b <ATL_diamax_xp1yp0aXbX+299>: fabs
0xb7a6908d <ATL_diamax_xp1yp0aXbX+301>: mov %esi,%ecx
0xb7a6908f <ATL_diamax_xp1yp0aXbX+303>: add $0x20,%ecx
0xb7a69092 <ATL_diamax_xp1yp0aXbX+306>: jmp 0xb7a68ff7
<ATL_diamax_xp1yp0aXbX+151>
0xb7a69097 <ATL_diamax_xp1yp0aXbX+311>: fstp %st(0)
0xb7a69099 <ATL_diamax_xp1yp0aXbX+313>: fldl 0x28(%esi)
0xb7a6909c <ATL_diamax_xp1yp0aXbX+316>: fabs
0xb7a6909e <ATL_diamax_xp1yp0aXbX+318>: mov %esi,%ecx
0xb7a690a0 <ATL_diamax_xp1yp0aXbX+320>: add $0x28,%ecx
0xb7a690a3 <ATL_diamax_xp1yp0aXbX+323>: jmp 0xb7a69004
<ATL_diamax_xp1yp0aXbX+164>
0xb7a690a8 <ATL_diamax_xp1yp0aXbX+328>: fstp %st(0)
0xb7a690aa <ATL_diamax_xp1yp0aXbX+330>: fldl 0x30(%esi)
0xb7a690ad <ATL_diamax_xp1yp0aXbX+333>: fabs
0xb7a690af <ATL_diamax_xp1yp0aXbX+335>: mov %esi,%ecx
0xb7a690b1 <ATL_diamax_xp1yp0aXbX+337>: add $0x30,%ecx
0xb7a690b4 <ATL_diamax_xp1yp0aXbX+340>: jmp 0xb7a69011
<ATL_diamax_xp1yp0aXbX+177>
0xb7a690b9 <ATL_diamax_xp1yp0aXbX+345>: fstp %st(0)
0xb7a690bb <ATL_diamax_xp1yp0aXbX+347>: fldl 0x38(%esi)
0xb7a690be <ATL_diamax_xp1yp0aXbX+350>: fabs
0xb7a690c0 <ATL_diamax_xp1yp0aXbX+352>: mov %esi,%ecx
---Type <return> to continue, or q <return> to quit---
0xb7a690c2 <ATL_diamax_xp1yp0aXbX+354>: add $0x38,%ecx
0xb7a690c5 <ATL_diamax_xp1yp0aXbX+357>: jmp 0xb7a6901e
<ATL_diamax_xp1yp0aXbX+190>
0xb7a690ca <ATL_diamax_xp1yp0aXbX+362>: fldl (%esi)
0xb7a690cc <ATL_diamax_xp1yp0aXbX+364>: fabs
0xb7a690ce <ATL_diamax_xp1yp0aXbX+366>: fcomip %st(1),%st
0xb7a690d0 <ATL_diamax_xp1yp0aXbX+368>: ja 0xb7a690de
<ATL_diamax_xp1yp0aXbX+382>
0xb7a690d2 <ATL_diamax_xp1yp0aXbX+370>: add $0x8,%esi
0xb7a690d5 <ATL_diamax_xp1yp0aXbX+373>: cmp %edx,%esi
0xb7a690d7 <ATL_diamax_xp1yp0aXbX+375>: jne 0xb7a690ca
<ATL_diamax_xp1yp0aXbX+362>
0xb7a690d9 <ATL_diamax_xp1yp0aXbX+377>: jmp 0xb7a6902d
<ATL_diamax_xp1yp0aXbX+205>
0xb7a690de <ATL_diamax_xp1yp0aXbX+382>: fstp %st(0)
0xb7a690e0 <ATL_diamax_xp1yp0aXbX+384>: fldl (%esi)
0xb7a690e2 <ATL_diamax_xp1yp0aXbX+386>: fabs
0xb7a690e4 <ATL_diamax_xp1yp0aXbX+388>: mov %esi,%ecx
0xb7a690e6 <ATL_diamax_xp1yp0aXbX+390>: jmp 0xb7a690d2
<ATL_diamax_xp1yp0aXbX+370>
0xb7a690e8 <ATL_diamax_xp1yp0aXbX+392>: nop
0xb7a690e9 <ATL_diamax_xp1yp0aXbX+393>: nop
0xb7a690ea <ATL_diamax_xp1yp0aXbX+394>: nop
---Type <return> to continue, or q <return> to quit---
0xb7a690eb <ATL_diamax_xp1yp0aXbX+395>: nop
0xb7a690ec <ATL_diamax_xp1yp0aXbX+396>: nop
0xb7a690ed <ATL_diamax_xp1yp0aXbX+397>: nop
0xb7a690ee <ATL_diamax_xp1yp0aXbX+398>: nop
0xb7a690ef <ATL_diamax_xp1yp0aXbX+399>: nop
End of assembler dump.
And /proc/cpuinfo:
processor : 0
vendor_id : GenuineTMx86
cpu family : 6
model : 4
model name : Transmeta(tm) Crusoe(tm) Processor TM5800
stepping : 3
cpu MHz : 933.000
cache size : 512 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 cx8 sep cmov mmx longrun lrti up
bogomips : 1867.19
Cheers,
-Adam
--
GPG fingerprint: D54D 1AEE B11C CE9B A02B C5DD 526F 01E8 564E E4B6
Welcome to the best software in the world today cafe!
http://www.take6.com/albums/greatesthits.html
--- End Message ---