I'm doing some work with a mips64-elf toolchain and took a look at why there are so many gdb testsuite failures. One problem I found is that calling functions by hand was broken, due to what looked to me like a case of a development stub being left in. I've attached a patch that reduces the total number of testsuite failures by around 50%. I'm testing with the following multilibs: mips64-sim/-EB mips64-sim/-EL mips64-sim/-EB/-msoft-float mips64-sim/-EL/-msoft-float Before applying the attached patch, I get: # of expected passes 34613 # of unexpected failures 1866 # of unexpected successes 4 # of expected failures 164 # of known failures 196 # of unresolved testcases 77 # of untested testcases 36 # of unsupported tests 152 /links/build/latest/trunk/mips64-elf/gdb/gdb/testsuite/../../gdb/gdb version 6.4.50.20060422-cvs -nx after applying the patch I get: # of expected passes 35540 # of unexpected failures 938 # of unexpected successes 4 # of expected failures 164 # of known failures 196 # of unresolved testcases 76 # of untested testcases 36 # of unsupported tests 152 /links/build/latest/trunk/mips64-elf/gdb/gdb/testsuite/../../gdb/gdb version 6.4.50.20060422-cvs -nx There are still some issues calling functions by hand in code compiled with -msoft-float, but these are not specific to 64-bit mips, or even mips for that matter. For example: Running target mips64-sim/-EB/-msoft-float Running /src/latest/trunk/src/gdb/gdb/testsuite/gdb.base/call-sc.exp ... FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-tf FAIL: gdb.base/call-sc.exp: value foo returned; return call-sc-tf FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-td FAIL: gdb.base/call-sc.exp: value foo returned; return call-sc-td FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-tld FAIL: gdb.base/call-sc.exp: value foo returned; return call-sc-tld Running target mips-sim/-EB/-msoft-float Running /src/latest/trunk/src/gdb/gdb/testsuite/gdb.base/call-sc.exp ... FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-tf FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-tf FAIL: gdb.base/call-sc.exp: value foo returned; return call-sc-tf FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-td FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-td FAIL: gdb.base/call-sc.exp: value foo returned; return call-sc-td FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-tld FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-tld FAIL: gdb.base/call-sc.exp: value foo returned; return call-sc-tld Running target powerpc-sim/-msoft-float/-mrelocatable-lib/-mno-eabi/-mstrict-align Running /src/latest/trunk/src/gdb/gdb/testsuite/gdb.base/call-sc.exp ... FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-tf FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-tf FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-td FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-td FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-tld FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-tld I'll investigate those failures and supply a separate patch. -Fred