This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/80569] New: i686: "shrx" instruction generated in 16-bit mode


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80569

            Bug ID: 80569
           Summary: i686: "shrx" instruction generated in 16-bit mode
           Product: gcc
           Version: 6.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: davmac at davmac dot org
  Target Milestone: ---

The following code, compiled with -m16 -O2 -c, fails at assembly:

--- begin ---
void load_kernel(void *setup_addr)
{
    unsigned int seg = (unsigned int)setup_addr >> 4;
    asm("movl %0, %%es" : : "r"(seg));
}
--- end ---

$ gcc -m16 -O2 -c shrxdtestcase.i 
/tmp/ccGS34WK.s: Assembler messages:
/tmp/ccGS34WK.s:11: Error: instruction `shrx' isn't supported in 16-bit mode.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]