[vbox-dev] (no subject)

Frank Mehnert Frank.Mehnert at Sun.COM
Thu Feb 5 03:43:02 PST 2009


the error below is a result of a gcc-4.3 bug. It happens that the compiler
runs out of registers although older versions of gcc compile this code
fine. Unfortunately, gcc-4.3 has some other optimizations which requires
to change assembler code which was compiling fine for previous versions.

As a hack, edit the file include/iprt/asm.h and search for 403. You
should fine three hits. Changing '>= 403' to  '> 403' should make the
code compile again. The resulting code is probably not correct but it
concerns testcases only (execute tstInlineASM -- this will succeed and
tstInlineAsmPIC and tstInlineASMPIC3 -- these two will fail).

Kind regards,


On Thursday 05 February 2009, evt at texelsoft.com wrote:
> I get the following error trying to build with BUILD_TYPE=debug. Has anyone
> seen this? I updated from svn late yesterday. Thanks.
> - Eric van Tassell
> kBuild: Compiling tstInlineAsmPIC3 -
> /home/evt/wrk/vbx/vbox/src/VBox/Runtime/testcase/tstInlineAsm.cpp
> /home/evt/wrk/vbx/vbox/include/iprt/asm.h: In function ‘bool
> ASMAtomicCmpXchgU64(volatile uint64_t*, uint64_t, uint64_t)’:
> /home/evt/wrk/vbx/vbox/include/iprt/asm.h:2899: error: can't find a
> register in class ‘GENERAL_REGS’ while reloading ‘asm’
> /home/evt/wrk/vbx/vbox/include/iprt/asm.h:2899: error: ‘asm’ operand
> has impossible constraints kmk[2]: ***
> [/home/evt/wrk/vbx/vbox/out/linux.x86/debug/obj/tstInlineAsmPIC/tstInlineAs
>m.o] Error 1 The failing command:
> @g++ -c -g -g -pipe -pedantic -Wall -Wextra -Wno-missing-field-initializers
> -Wno-unused -Wno-trigraphs -Wno-long-long -Wno-variadic-macros -march=i586
> -O0 -fno-omit-frame-pointer -fno-strict-aliasing
> -fvisibility-inlines-hidden -fvisibility=hidden
> -I/home/evt/wrk/vbx/vbox/include
> -I/home/evt/wrk/vbx/vbox/out/linux.x86/debug -DVBOX -DVBOX_OSE
> -MD,/home/evt/wrk/vbx/vbox/out/linux.x86/debug/obj/tstInlineAsmPIC/tstInlin
> -Wp,-MT,/home/evt/wrk/vbx/vbox/out/linux.x86/debug/obj/tstInlineAsmPIC/tstI
>nlineAsm.o -Wp,-MP -o
> /home/evt/wrk/vbx/vbox/out/linux.x86/debug/obj/tstInlineAsmPIC/tstInlineAsm
>.o /home/evt/wrk/vbx/vbox/src/VBox/Runtime/testcase/tstInlineAsm.cpp

Dr.-Ing. Frank Mehnert    Sun Microsystems    http://www.sun.com/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part.
Url : http://www.virtualbox.org/pipermail/vbox-dev/attachments/20090205/822735b2/attachment-0001.bin 

More information about the vbox-dev mailing list