x86-asm: Fix signed constants and opcode order
commit4f27e217a864d8ddb74265d24a5aadea0a3ec92d
authorMichael Matz <matz@suse.de>
Sat, 14 May 2016 02:33:41 +0000 (14 04:33 +0200)
committerMichael Matz <matz@suse.de>
Sat, 14 May 2016 02:33:41 +0000 (14 04:33 +0200)
tree44f89ca1a324c0152954e335a5c4c184a2ce757d
parent080ec9faddc4b7661ab05159b07655ae0224ec58
x86-asm: Fix signed constants and opcode order

Two things: negative constants were rejected (e.g. "add $-15,%eax").
Second the insn order was such that the arithmetic IM8S forms
weren't used (always the IM32 ones).  Switching them prefers those
but requires a fix for size calculation in case the opcodes were
OPC_ARITH and OPC_WLX (whose size starts with 1, not zero).
i386-asm.c
i386-asm.h
tests/asmtest.S
x86_64-asm.h