[PATCH 05/10] x86: add tests to cover defaulting of operand sizes for ambiguous insns

H.J. Lu hjl.tools@gmail.com
Tue Aug 6 19:57:00 GMT 2019


On Tue, Aug 6, 2019 at 7:26 AM Jan Beulich <jbeulich@suse.com> wrote:

I don't see anything wrong since these are just tests.

> Prior to changing the logic in the assembler install tests to make sure
> the present defaulting of operand sizes won't get broken. There are a
> few potential anomalies pointed out by this:
> - arithmetic insns (add, sub, etc) allow defaulting when their immediate
>    fits in (signed) 8 bits, but they fail to assemble with larger values,

The default destination is 32-bit with some 32-bit immediate operands
encoded as 8-bit.

> - mov, other than arithmetic insns, doesn't allow any defaulting,
> - movsx/movzx default to byte sources (in AT&T mode), and their special
>    casing needs to be adjusted first

Does AT&T syntax support movsx/movzx mnemonic?

> - bt and friends allow defaulting, while shl and friends don't,
> - ambiguous AVX and AVX512 insns don't allow defaulting.
> This should ultimately all become consistent (perhaps with the exception
> some of the SIMD insns); respective tests will be added to the test
> cases here as the issues get addressed.

AT&T syntax isn't very consistent.  Improve its consistency is OK as long
as it is compatible with existing assembly codes.

> gas/
> 2019-08-XX  Jan Beulich  <jbeulich@suse.com>
>
>         * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.s,
>         testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.s,
>         testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.s: New.
>         * testsuite/gas/i386/i386.exp: Run new tests.
>

OK with clarification of commit message.

Thanks.

-- 
H.J.



More information about the Binutils mailing list