You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think the implicit ST0 operands of several X87 instructions should actually be suppressed. An example is the FLD instruction: the ST0 operand is not expressed in disassembly, and it is also not used for picking an encoding. Therefore, it should be suppressed.
The text was updated successfully, but these errors were encountered:
x87 is a little strange. Technically you are right. This is some of the oldest stuff in XED. I do not recall what MS disasm did at the time. But I recall thinking that I didn't like having written suppressed operands that were nominally the destination operand not be listed the first register in the list. So I made them implicit so they'd show up and they'd show up first, where dest's belong in "intel" format disasm. Now after 14 or so years, I am reluctant to change them as there might be XED users out there with code that expects them to behave this way. I'm still thinking though. I could probably add an attribute and a new disassembly formatting option to drop the implicit operand if that attribute is present.
If you don't mind my asking what are you doing that you encountered the 4 issues that you reported?
I'm using the instruction files from XED to automatically generate assembler code for measuring the latency, throughput, and port usage of individual x86 instructions on different microarchitectures. You can find out more on www.uops.info. In particular, I'm using the XED files to create an XML representation of the x86 instruction set that makes it easy to generate assembler code for all instructions (see http://www.uops.info/xml.html).
The issue I reported here is not really critical for me, as I have a workaround (I'm just making all implicit operands of X87_ALU instructions suppressed). So if there is a good reason for leaving it as it is, I'm fine with that.
I think the implicit ST0 operands of several X87 instructions should actually be suppressed. An example is the FLD instruction: the ST0 operand is not expressed in disassembly, and it is also not used for picking an encoding. Therefore, it should be suppressed.
The text was updated successfully, but these errors were encountered: