RE: [tip:x86/asm] x86/entry/64: Add two more instruction suffixes

From: David Laight
Date: Tue Jul 03 2018 - 04:45:15 EST


From: Jan Beulich
> Sent: 03 July 2018 09:36
...
> As said there, omitting suffixes from instructions in AT&T mode is bad
> practice when operand size cannot be determined by the assembler from
> register operands, and is likely going to be warned about by upstream
> gas in the future (mine does already).
...
> - bt $9, EFLAGS(%rsp) /* interrupts off? */
> + btl $9, EFLAGS(%rsp) /* interrupts off? */

Hmmm....
Does the operand size make any difference at all for the bit instructions?
I'm pretty sure that the cpus (386 onwards) have always done aligned 32bit
transfers (the docs never actually said aligned).
I can't remember whether 64bit mode allows immediates above 31.

So gas accepting 'btb $n,memory' is giving a false impression of
what actually happens.

David