Hello, I found a bug in objdump and in gdb(It seems that you work together) 
with the i386 disassembler. The bug is that instructions print with the rm mod, 
mod = 0, rm = 5(0b101), in 32-Bit Addressing forms is false.(the example with 
the photo)

I tried to patch it and i found where the bug is.
In file opcodes/i386-dis.c, in function OP_E_memory (line 13892), you set at 0 
the variable havebase (line 14111), in this case of a such rm byte and with the 
AT&T syntax, no one of yours comparisons after deals with this case, that 
explain the instruction's error.
So I propose after the line 14258 to add this code(for example) :
else
   oappend("(0x0)")

I don't know well the At&T syntax, so it just a suggestion and I hope that you 
are understanding with the idea.

My english skill is not very developped, so I hope that you had me understood.

Thank you

Arthur MONGODIN
_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to