bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gas/27419] New: x86-64: regression: gas accepts invalid code (movdi


From: jbeulich at suse dot com
Subject: [Bug gas/27419] New: x86-64: regression: gas accepts invalid code (movdir64b / enqcmd)
Date: Mon, 15 Feb 2021 10:01:28 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=27419

            Bug ID: 27419
           Summary: x86-64: regression: gas accepts invalid code
                    (movdir64b / enqcmd)
           Product: binutils
           Version: 2.36.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: gas
          Assignee: unassigned at sourceware dot org
          Reporter: jbeulich at suse dot com
  Target Milestone: ---

As a supposed fix (really at best: workaround, bug gas/26685) for a gcc
shortcoming, symbol(%rip) style operands got special cased when present for
these insns. This leads to gas accepting e.g.

        movdir64b foo(%rip),%ecx

despite being invalid. The two operands are really ambiguous, and hence
shouldn't be accepted silently: Besides the gcc issue (which ought to be
addressed there instead of worked around in gas), the programmer (of plain
assembly sources or inline asm()) may have meant either

        movdir64b foo(%eip),%ecx

or

        movdir64b foo(%rip),%rcx

To make the workaround remotely acceptable, it should imo at least be
restricted to the --x32 case. Even there it would better be warned about,
perhaps unless -q was specified.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]