x86inc: Improve FMA instruction handling
authorHenrik Gramner <henrik@gramner.com>
Sat, 16 Jan 2016 23:25:47 +0000 (00:25 +0100)
committerHenrik Gramner <henrik@gramner.com>
Sat, 16 Jan 2016 23:25:47 +0000 (00:25 +0100)
commit6e5033417a53fa66d002665618a1350d7417725e
tree6a520eb5d10341f229954e5435ac442586ea57f4
parent93cba743c78959ad97812dbaf894903c608912d0
x86inc: Improve FMA instruction handling

 * Correctly handle FMA instructions with memory operands.
 * Print a warning if FMA instructions are used without the correct cpuflag.
 * Simplify the instantiation code.
 * Clarify documentation.

Only the last operand in FMA3 instructions can be a memory operand. When
converting FMA4 instructions to FMA3 instructions we can utilize the fact
that multiply is a commutative operation and reorder operands if necessary
to ensure that a memory operand is used only as the last operand.
common/x86/x86inc.asm