Date: Thu, 28 Sep 2017 19:50:15 -0400 From: Jung-uk Kim <jkim@FreeBSD.org> To: soralx@cydem.org Cc: vbox@FreeBSD.org Subject: Re: [virtualbox-ose] Build failure: global register variable Message-ID: <efc31521-4095-8752-dd10-ab7fa5777c0e@FreeBSD.org> In-Reply-To: <20170928025555.032ce67a@mscad14> References: <20170917195419.431341e7@mscad14> <20170920191710.58d335df@mscad14> <20170921160000.689755f8@mscad14> <5c68323f-5fed-342b-ad92-e74d178f9daf@FreeBSD.org> <20170924180619.23e149be@mscad14> <6b02f95f-207b-0f55-8e30-11512979804e@FreeBSD.org> <20170928025555.032ce67a@mscad14>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --1UBG38NjrWHRvO63BiPof6wcap2wO9Guf Content-Type: multipart/mixed; boundary="xAN9aAOwPlXc2xqgf3bV9s5HwerH1lOGP"; protected-headers="v1" From: Jung-uk Kim <jkim@FreeBSD.org> To: soralx@cydem.org Cc: vbox@FreeBSD.org Message-ID: <efc31521-4095-8752-dd10-ab7fa5777c0e@FreeBSD.org> Subject: Re: [virtualbox-ose] Build failure: global register variable References: <20170917195419.431341e7@mscad14> <20170920191710.58d335df@mscad14> <20170921160000.689755f8@mscad14> <5c68323f-5fed-342b-ad92-e74d178f9daf@FreeBSD.org> <20170924180619.23e149be@mscad14> <6b02f95f-207b-0f55-8e30-11512979804e@FreeBSD.org> <20170928025555.032ce67a@mscad14> In-Reply-To: <20170928025555.032ce67a@mscad14> --xAN9aAOwPlXc2xqgf3bV9s5HwerH1lOGP Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable On 09/28/2017 05:55, soralx@cydem.org wrote: >=20 > Jung-uk, >=20 >>>>> [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 =3D RegSize !=3D 64; >>>>> 867 return true; >>>>> 868 } =20 >>>> >>>> Please try the attached patch. =20 >>> >>> 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. =20 >> >> Committed (r450636), thanks! >=20 > Sadly, I forgot to disable VT-x when testing. My bad. >=20 > 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 >=20 > How would one go about debugging this? Hmm... Unfortunately, I don't think we can "fix" it easily. I'll take a look but I just reverted it for now. Jung-uk Kim >> For more detailed information, please read the commit log. >> >> https://svnweb.freebsd.org/changeset/ports/45063 --xAN9aAOwPlXc2xqgf3bV9s5HwerH1lOGP-- --1UBG38NjrWHRvO63BiPof6wcap2wO9Guf Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEl1bqgKaRyqfWXu/CfJ+WJvzb8UYFAlnNisIACgkQfJ+WJvzb 8UZEKwgAmQX+EYQUzsYcCvH/FWriL+g1xnH4FZfclqDRuIE9Oi2XpmKO2KwXPYhW fTCOiu8oJukZsAs+XhLmtQyxtOYoWEkMChm3dU9HXMCtfZSlPwmHqKd4DcWWhqtP SlRz40iv+7TX9W6max93iRQdx2jLXzgPxoi44E8ptqzvl34kKcu40Q67oCrDep0C uQXzbEqFxyzPoS28deDC5Vcb321fTgMNW1KBlUC+aNgDrAJ9G+dCBoS5IyZmiksz l0q0LeWbikdEDdxUBILSGaOdGlTqDggHQA8k7oO5WpC0zXeYLK1/k5VpHKKbn7KU 3yg0ipXsw5fCrn6hPfm7XFPD07WCpA== =dh0z -----END PGP SIGNATURE----- --1UBG38NjrWHRvO63BiPof6wcap2wO9Guf--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?efc31521-4095-8752-dd10-ab7fa5777c0e>