This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: PATCH: Fix m68k gas test
H. J. Lu wrote:
Hmmm... I will investigate, but I can't build on m68k-linux and
What is wrong with m68k-linux?
It's just that I don't have my Amiga to run it ;-)
m68k-elf-objdump appears to work fine here:
It is not the problem. fmoveml is the problem.
Oops. Could you please tell me the exact command line that
dejagnu passes when running that test?
The disassembler must be told what the CPU type is, otherwise
it could interpret instructions incorrectly.
The description of fmoveml for the 68881 is:
{"fmoveml", two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Ii*lL8", mfloat },
The failure might have something to do with any of these new
instructions added by the patch:
{"fmovel", two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Iibss8", cfloat },
{"fmovem", two(0xF000, 0xD000), two(0xFFC0, 0xFF00), "IizsL3", cfloat },
{"fmovem", two(0xF000, 0xD000), two(0xFFC0, 0xFF00), "Iizs#3", cfloat },
{"fmovem", two(0xF000, 0xF000), two(0xFFC0, 0xFF00), "Ii#3ys", cfloat },
{"fmovem", two(0xF000, 0xF000), two(0xFFC0, 0xFF00), "IiL3ys", cfloat },
The first one is expecially suspicious because it has the very same encoding
and mask. The BFD disassembler should be able to tell one from the other
because "cfloat" and "mfloat" are different CPU masks:
#define mfloat (m68881 | m68882 | m68040 | m68060)
#define cfloat (mcfv4e)
Peter Barada is more qualified on this topic. I've added him to the Cc list
in case he wants to give his opinion.
--
// Bernardo Innocenti - Develer S.r.l., R&D dept.
\X/ http://www.develer.com/
Please don't send Word attachments - http://www.gnu.org/philosophy/no-word-attachments.html