Bug 20771 - DC E0-E7 wrong opcode name
Summary: DC E0-E7 wrong opcode name
Status: RESOLVED WONTFIX
Alias: None
Product: binutils
Classification: Unclassified
Component: binutils (show other bugs)
Version: 2.26
: P2 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
: 20772 20773 20774 20776 20777 20778 20779 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-11-05 15:37 UTC by anatoly
Modified: 2016-11-06 23:36 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description anatoly 2016-11-05 15:37:28 UTC
from Intel specification DC E0 is fsubr but not fsub
Comment 1 Alan Modra 2016-11-06 23:32:47 UTC
See this comment from include/opcode/i386.h

/* The SystemV/386 SVR3.2 assembler, and probably all AT&T derived
   ix86 Unix assemblers, generate floating point instructions with
   reversed source and destination registers in certain cases.
   Unfortunately, gcc and possibly many other programs use this
   reversed syntax, so we're stuck with it.

   eg. `fsub %st(3),%st' results in st = st - st(3) as expected, but
   `fsub %st,%st(3)' results in st(3) = st - st(3), rather than
   the expected st(3) = st(3) - st

   This happens with all the non-commutative arithmetic floating point
   operations with two register operands, where the source register is
   %st, and destination register is %st(i).

   The affected opcode map is dceX, dcfX, deeX, defX.  */

If you really care, you can define SYSV386_COMPAT to 0 but please read the comment there too..
Comment 2 Alan Modra 2016-11-06 23:33:30 UTC
*** Bug 20772 has been marked as a duplicate of this bug. ***
Comment 3 Alan Modra 2016-11-06 23:34:01 UTC
*** Bug 20773 has been marked as a duplicate of this bug. ***
Comment 4 Alan Modra 2016-11-06 23:34:26 UTC
*** Bug 20774 has been marked as a duplicate of this bug. ***
Comment 5 Alan Modra 2016-11-06 23:35:13 UTC
*** Bug 20776 has been marked as a duplicate of this bug. ***
Comment 6 Alan Modra 2016-11-06 23:35:32 UTC
*** Bug 20777 has been marked as a duplicate of this bug. ***
Comment 7 Alan Modra 2016-11-06 23:35:54 UTC
*** Bug 20778 has been marked as a duplicate of this bug. ***
Comment 8 Alan Modra 2016-11-06 23:36:21 UTC
*** Bug 20779 has been marked as a duplicate of this bug. ***