[quake3-bugzilla] [Bug 6429] vm_x86.c inline assembly error on hosts using -fPIC

bugzilla-daemon at icculus.org bugzilla-daemon at icculus.org
Wed Jun 15 16:34:26 EDT 2016


--- Comment #8 from Thilo Schulz <arny at ats.s.bawue.de> ---
(In reply to Mark from comment #7)
> Sadly, no go with the most recent push. Same error in impossible constraint
> violation with gcc 4.9.3.

well, it does work for me. This is the compiler invocation:

cc  -DDEDICATED -Wall -fno-strict-aliasing -Wimplicit -Wstrict-prototypes -pipe
-Icode/jpeg-8c -DUSE_LOCAL_HEADERS
-DPRODUCT_VERSION=\"1.36_GIT_3d55e71-2016-06-15\" -Wformat=2
-Wno-format-zero-length -Wformat-security -Wno-format-nonliteral
-Wstrict-aliasing=2 -Wmissing-format-attribute -Wdisabled-optimization
-Werror-implicit-function-declaration -MMD -DUSE_VOIP -ggdb -O0 -fPIC -fPIE
-m32 -o build/debug-linux-x86_64/ded/vm_x86.o -c code/qcommon/vm_x86.c

gcc version 4.9.2 (Debian 4.9.2-10) 

> Interesting that the compiler constraint error occurs with gcc 4.9.3 but is
> fine with 6.1.0. a 2016-03 gcc post
> (https://gcc.gnu.org/ml/gcc-help/2016-03/msg00156.html) suggests that EBX
> was considered reserved on i686 when generating PIC code but was changed to
> no longer be reserved as of gcc 5. I guess it's possible gcc 4 considers all
> usage of ebx in inline assembly, regardless of manually saving and restoring
> ebx, as violating the reservation when -fPIC is enabled?

Like I said in my first response, gcc5 seems to have done away with that
requirement. Does it compile with vanilla ioquake3 (without any of my current

You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://icculus.org/pipermail/quake3-bugzilla/attachments/20160615/cea0577b/attachment.html>

More information about the quake3-bugzilla mailing list