This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH] x86-64: fix handling of PUSH/POP of segment register
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: Jan Beulich <jbeulich at suse dot com>
- Cc: "binutils at sourceware dot org" <binutils at sourceware dot org>
- Date: Fri, 4 Oct 2019 08:02:45 -0700
- Subject: Re: [PATCH] x86-64: fix handling of PUSH/POP of segment register
- References: <a0f1008f-db13-e310-6804-48cdaa1cf131@suse.com> <CAMe9rOqiZ7UuWViR-qhbQh+B-LZj1L+PkWMbBVJ2EugdC8AKMg@mail.gmail.com>
On Thu, Sep 19, 2019 at 9:22 AM H.J. Lu <hjl.tools@gmail.com> wrote:
>
> On Thu, Sep 19, 2019 at 7:56 AM Jan Beulich <jbeulich@suse.com> wrote:
> >
> > Commit 21df382b91 ("x86: fold SReg{2,3}") went too far: Folding 64-bit
> > PUSH/POP templates into non-64-bit ones isn't correct, due to the
> > different operand widths, and hence suffixes permitted. Restore the
> > separate templates.
> >
> > Add tests of PUSH/POP with q suffix and %fs/%gs operands to the
> > testsuite. While doing so also add PUSHF/POPF ones _without_ suffix.
> >
> > gas/
> > 2018-09-19 Jan Beulich <jbeulich@suse.com>
> >
> > PR gas/25012
> > * config/tc-i386.c (process_operands): Adjust handling of
> > PUSH/POP of segment registers.
> > * testsuite/gas/i386/x86-64-opcode.s: Add PUSHq/POPq case with
> > %fs/%gs operands. Add PUSHF/POPF case without suffix.
> > * testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
> >
> > opcodes/
> > 2018-09-19 Jan Beulich <jbeulich@suse.com>
> >
> > PR gas/25012
> > * i386-opc.tbl (push, pop): Re-instate distinct Cpu64 templates
> > with SReg operand.
> > * i386-tbl.h: Re-generate.
> >
>
> OK.
>
> Thanks.
>
I am backprorting it to 2.33 branch.
--
H.J.