[Bug inline-asm/55744] Use of ebx as output register in inline asm on x86_64 PIC mcmodel=medium
egallager at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Jul 28 14:50:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55744
Eric Gallager <egallager at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |WAITING
Last reconfirmed| |2017-07-28
CC| |egallager at gcc dot gnu.org
Ever confirmed|0 |1
--- Comment #1 from Eric Gallager <egallager at gcc dot gnu.org> ---
Results from testing on i386-apple-darwin9.8.0 with gcc8:
$ /usr/local/bin/gcc -c -fPIC -mcmodel=medium 55744.c
cc1: error: code model ‘medium’ not supported in the 32 bit mode
$ /usr/local/bin/gcc -c -fPIC -mcmodel=medium -m64 55744.c
$ /usr/local/bin/gcc -o 55744.exe -fPIC -mcmodel=medium -m64 -Wall -Wextra
55744.c
Undefined symbols:
"_GLOBAL_OFFSET_TABLE_", referenced from:
_main in ccbh4pRB.o
ld: symbol(s) not found
collect2: error: ld returned 1 exit status
$ /usr/local/bin/gcc -o 55744.exe -fPIC -mcmodel=large -m64 -Wall -Wextra
55744.c
:14:junk `@GOTOFF' after expression
:18:junk `@PLTOFF' after expression
$ /usr/local/bin/gcc -o 55744.exe -fPIC -mcmodel=small -m64 -Wall -Wextra
55744.c
$ ./55744.exe
Result: 42
$
Which is probably bug 63893 and bug 50077 in my case. Can you try again with
your own target and see if it still fails in your case?
More information about the Gcc-bugs
mailing list