[PATCH 2/6] x86-64: Intel64 adjustments for conditional jumps

H.J. Lu hjl.tools@gmail.com
Wed Mar 11 10:32:44 GMT 2020
On Wed, Mar 11, 2020 at 1:59 AM Jan Beulich <jbeulich@suse.com> wrote:
>
> On 09.03.2020 13:13, H.J. Lu wrote:
> > On Mon, Mar 9, 2020 at 12:11 AM Jan Beulich <jbeulich@suse.com> wrote:
> >> On 06.03.2020 16:35, H.J. Lu wrote:
> >>> On Fri, Mar 6, 2020 at 6:53 AM Jan Beulich <jbeulich@suse.com> wrote:
> >>>> Well, do you have an alternative suggestion, also in line with
> >>>> JMP then? (See the somewhat related post-commit-message remark
> >>>
> >>> Since assembly doesn't require `q' suffix, can we drop it from disassembler?
> >>
> >> Why would we not be in the position to do so? But if we do,
> >> can we then please settle on doing so uniformly (i.e. for
> >> all near branch insns), i.e. in the above snippet e.g. not
> >> just CALL and JMP, but also RET?
> >
> > Let's drop 'q' suffix on them.
>
> Obviously this then also affect PUSH/POP. There's an anomaly with
> 32-bit code - with a memory operand, these get an 'L' suffix
> appended, whereas with an immediate or segment register operand
> (where operand size is in principle as ambiguous) they don't.
> Since the assembler accepts them (intentionally) silently without
> suffix, I'd prefer to adjust the memory operand form too even
> outside of 64-bit mode (in effect meaning to drop the 'U' macro,
> instead using the same one as for other PUSH/POP). Thoughts?
>

That is fine as long as disassembler agrees with assembler.

Thanks.

-- 
H.J.



More information about the Binutils mailing list