Port-mips archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
hardware FP on 64bit mips
Hello,
since mips64 now builds with MKSOFTFLOAT=no I've been playing with it
on my O2. Unsurprisingly there are problems. I keep seeing this:
Core was generated by `miniperl'.
Program terminated with signal SIGILL, Illegal instruction.
#0 0x100a19c0 in Perl_get_hash_seed ()
(gdb) disassemble 0x100a19c0
Dump of assembler code for function Perl_get_hash_seed:
...
0x100a19b0 <+1008>: jalr t9
0x100a19b4 <+1012>: move a0,s3
0x100a19b8 <+1016>: mul.d $f0,$f0,$f22
0x100a19bc <+1020>: c.le.d $f20,$f0
=> 0x100a19c0 <+1024>: bc1fl 0x100a1998 <Perl_get_hash_seed+984>
0x100a19c4 <+1028>: trunc.w.d $f0,$f0
0x100a19c8 <+1032>: sub.d $f0,$f0,$f20
0x100a19cc <+1036>: trunc.w.d $f0,$f0
0x100a19d0 <+1040>: mfc1 v0,$f0
STATUS is a400ff33, CAUSE is 80000028
if I read that correctly it says reserved instruction in delay slot, so
what faulted is
trunc.w.d $f0,$f0
I have no idea why that would fault. if I read STATUS correctly it says
64bit userland access is allowed, we just took a userland exception,
so what am I missing?
have fun
Michael
Home |
Main Index |
Thread Index |
Old Index