This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/80569] New: i686: "shrx" instruction generated in 16-bit mode
- From: "davmac at davmac dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sat, 29 Apr 2017 22:59:13 +0000
- Subject: [Bug target/80569] New: i686: "shrx" instruction generated in 16-bit mode
- Auto-submitted: auto-generated
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.