[virtualbox-ose] Build failure: global register variable
soralx at cydem.org
soralx at cydem.org
Thu Sep 28 09:56:04 UTC 2017
Jung-uk,
> >>> [0] clang/lib/Basic/Targets/X86.h:
> >>> 860 bool validateGlobalRegisterVariable(StringRef RegName,
> >>> unsigned RegSize, 861 bool
> >>> &HasSizeMismatch) const override { 862 // rsp and rbp are the
> >>> only 64-bit registers the x86 backend can currently 863 //
> >>> handle. 864 if (RegName.equals("rsp") || RegName.equals("rbp"))
> >>> { 865 // Check that the register size is 64-bit.
> >>> 866 HasSizeMismatch = RegSize != 64;
> >>> 867 return true;
> >>> 868 }
> >>
> >> Please try the attached patch.
> >
> > Thanks for the patch! I gave it a quick try (not an extensive test),
> > and VirtualBox, compiled fully with clang, seems to work as usual.
>
> Committed (r450636), thanks!
Sadly, I forgot to disable VT-x when testing. My bad.
I tested again, and found that, on unpatched VBox, the virtual
machine boots and works fine with both VT-x on and off, while
patched version fails to start the VM when VT-x is turned off:
VBoxManage: error: No error info
VBoxManage: error: Details: code NS_ERROR_CALL_FAILED (0x800706be),
component ProgressProxy, interface IProgress
How would one go about debugging this?
> For more detailed information, please read the commit log.
>
> https://svnweb.freebsd.org/changeset/ports/450636
>
> Jung-uk Kim
--
[SorAlx] ridin' VN2000 Classic LT
More information about the freebsd-emulation
mailing list