From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH v3 2/3] x86/emulate: add support of emulating SSE2 instruction {, v}movd mm, r32/m32 and {, v}movq mm, r64 Date: Mon, 1 Aug 2016 13:57:51 +0100 Message-ID: <83e6c5ca-81c7-a79b-59b6-6275a57bafac@citrix.com> References: <20160801025231.7211-1-mdontu@bitdefender.com> <20160801025231.7211-2-mdontu@bitdefender.com> <96929bbb-22f5-4e58-648f-a734caea2ee6@citrix.com> <20160801155327.18e0e54c@bitdefender.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20160801155327.18e0e54c@bitdefender.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: =?UTF-8?Q?Mihai_Don=c8=9bu?= Cc: Zhi Wang , Jan Beulich , xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org T24gMDEvMDgvMTYgMTM6NTMsIE1paGFpIERvbsibdSB3cm90ZToKPiBPbiBNb25kYXkgMDEgQXVn dXN0IDIwMTYgMTA6NTI6MTIgQW5kcmV3IENvb3BlciB3cm90ZToKPj4gT24gMDEvMDgvMTYgMDM6 NTIsIE1paGFpIERvbsibdSB3cm90ZToKPj4+IEZvdW5kIHRoYXQgV2luZG93cyBkcml2ZXIgd2Fz IHVzaW5nIGEgU1NFMiBpbnN0cnVjdGlvbiBNT1ZELgo+Pj4KPj4+IFNpZ25lZC1vZmYtYnk6IFpo aSBXYW5nIDx6aGkuYS53YW5nQGludGVsLmNvbT4KPj4+IFNpZ25lZC1vZmYtYnk6IE1paGFpIERv bsibdSA8bWRvbnR1QGJpdGRlZmVuZGVyLmNvbT4KPj4+IC0tLQo+Pj4gUGlja2VkIGZyb20gdGhl IFhlblNlcnZlciA3IHBhdGNoIHF1ZXVlLCBhcyBzdWdnZXN0ZWQgYnkgQW5kcmV3IENvb3Blcgo+ Pj4KPj4+IENoYW5nZWQgc2luY2UgdjI6Cj4+PiAgKiBoYW5kbGUgdGhlIGNhc2Ugd2hlcmUgdGhl IGRlc3RpbmF0aW9uIGlzIGEgR1BSCj4+PiAtLS0KPj4+ICB4ZW4vYXJjaC94ODYveDg2X2VtdWxh dGUveDg2X2VtdWxhdGUuYyB8IDM4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0K Pj4+ICAxIGZpbGUgY2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKPj4+ Cj4+PiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3g4Nl9lbXVsYXRlL3g4Nl9lbXVsYXRlLmMg Yi94ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUveDg2X2VtdWxhdGUuYwo+Pj4gaW5kZXggNDRkZTNi Ni4uOWY4OWFkYSAxMDA2NDQKPj4+IC0tLSBhL3hlbi9hcmNoL3g4Ni94ODZfZW11bGF0ZS94ODZf ZW11bGF0ZS5jCj4+PiArKysgYi94ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUveDg2X2VtdWxhdGUu Ywo+Pj4gQEAgLTIwNCw3ICsyMDQsNyBAQCBzdGF0aWMgdWludDhfdCB0d29ieXRlX3RhYmxlWzI1 Nl0gPSB7Cj4+PiAgICAgIC8qIDB4NjAgLSAweDZGICovCj4+PiAgICAgIDAsIDAsIDAsIDAsIDAs IDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIEltcGxpY2l0T3BzfE1vZFJNLAo+Pj4gICAg ICAvKiAweDcwIC0gMHg3RiAqLwo+Pj4gLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw LCAwLCAwLCAwLCAwLCAwLCBJbXBsaWNpdE9wc3xNb2RSTSwKPj4+ICsgICAgMCwgMCwgMCwgMCwg MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgSW1wbGljaXRPcHN8TW9kUk0sIEltcGxpY2l0 T3BzfE1vZFJNLAo+Pj4gICAgICAvKiAweDgwIC0gMHg4NyAqLwo+Pj4gICAgICBJbXBsaWNpdE9w cywgSW1wbGljaXRPcHMsIEltcGxpY2l0T3BzLCBJbXBsaWNpdE9wcywKPj4+ICAgICAgSW1wbGlj aXRPcHMsIEltcGxpY2l0T3BzLCBJbXBsaWNpdE9wcywgSW1wbGljaXRPcHMsCj4+PiBAQCAtNDQw OSw2ICs0NDA5LDEwIEBAIHg4Nl9lbXVsYXRlKAo+Pj4gICAgICBjYXNlIDB4NmY6IC8qIG1vdnEg bW0vbTY0LG1tICovCj4+PiAgICAgICAgICAgICAgICAgLyogeyx2fW1vdmRxe2EsdX0geG1tL20x MjgseG1tICovCj4+PiAgICAgICAgICAgICAgICAgLyogdm1vdmRxe2EsdX0geW1tL20yNTYseW1t ICovCj4+PiArICAgIGNhc2UgMHg3ZTogLyogbW92ZCBtbSxyL20zMiAqLwo+Pj4gKyAgICAgICAg ICAgICAgIC8qIG1vdnEgbW0sci9tNjQgKi8KPj4+ICsgICAgICAgICAgICAgICAvKiB7LHZ9bW92 ZCB4bW0sci9tMzIgKi8KPj4+ICsgICAgICAgICAgICAgICAvKiB7LHZ9bW92cSB4bW0sci9tNjQg Ki8KPj4+ICAgICAgY2FzZSAweDdmOiAvKiBtb3ZxIG1tLG1tL202NCAqLwo+Pj4gICAgICAgICAg ICAgICAgIC8qIHssdn1tb3ZkcXthLHV9IHhtbSx4bW0vbTEyOCAqLwo+Pj4gICAgICAgICAgICAg ICAgIC8qIHZtb3ZkcXthLHV9IHltbSx5bW0vbTI1NiAqLwo+Pj4gQEAgLTQ0MzIsNyArNDQzNiwx NyBAQCB4ODZfZW11bGF0ZSgKPj4+ICAgICAgICAgICAgICAgICAgaG9zdF9hbmRfdmNwdV9tdXN0 X2hhdmUoc3NlMik7Cj4+PiAgICAgICAgICAgICAgICAgIGJ1ZlswXSA9IDB4NjY7IC8qIFNTRSAq Lwo+Pj4gICAgICAgICAgICAgICAgICBnZXRfZnB1KFg4NkVNVUxfRlBVX3htbSwgJmZpYyk7Cj4+ PiAtICAgICAgICAgICAgICAgIGVhLmJ5dGVzID0gKGIgPT0gMHhkNiA/IDggOiAxNik7Cj4+PiAr ICAgICAgICAgICAgICAgIHN3aXRjaCAoIGIgKQo+Pj4gKyAgICAgICAgICAgICAgICB7Cj4+PiAr ICAgICAgICAgICAgICAgIGNhc2UgMHg3ZToKPj4+ICsgICAgICAgICAgICAgICAgICAgIGVhLmJ5 dGVzID0gNDsKPj4+ICsgICAgICAgICAgICAgICAgICAgIGJyZWFrOwo+Pj4gKyAgICAgICAgICAg ICAgICBjYXNlIDB4ZDY6Cj4+PiArICAgICAgICAgICAgICAgICAgICBlYS5ieXRlcyA9IDg7Cj4+ PiArICAgICAgICAgICAgICAgICAgICBicmVhazsKPj4+ICsgICAgICAgICAgICAgICAgZGVmYXVs dDoKPj4+ICsgICAgICAgICAgICAgICAgICAgIGVhLmJ5dGVzID0gMTY7Cj4+PiArICAgICAgICAg ICAgICAgIH0KPj4+ICAgICAgICAgICAgICAgICAgYnJlYWs7Cj4+PiAgICAgICAgICAgICAgY2Fz ZSB2ZXhfbm9uZToKPj4+ICAgICAgICAgICAgICAgICAgaWYgKCBiICE9IDB4ZTcgKQo+Pj4gQEAg LTQ0NTIsNyArNDQ2NiwxNyBAQCB4ODZfZW11bGF0ZSgKPj4+ICAgICAgICAgICAgICAgICAgICAg ICgodmV4LnBmeCAhPSB2ZXhfNjYpICYmICh2ZXgucGZ4ICE9IHZleF9mMykpKTsKPj4+ICAgICAg ICAgICAgICBob3N0X2FuZF92Y3B1X211c3RfaGF2ZShhdngpOwo+Pj4gICAgICAgICAgICAgIGdl dF9mcHUoWDg2RU1VTF9GUFVfeW1tLCAmZmljKTsKPj4+IC0gICAgICAgICAgICBlYS5ieXRlcyA9 IChiID09IDB4ZDYgPyA4IDogKDE2IDw8IHZleC5sKSk7Cj4+PiArICAgICAgICAgICAgc3dpdGNo ICggYiApCj4+PiArICAgICAgICAgICAgewo+Pj4gKyAgICAgICAgICAgIGNhc2UgMHg3ZToKPj4+ ICsgICAgICAgICAgICAgICAgZWEuYnl0ZXMgPSA0Owo+Pj4gKyAgICAgICAgICAgICAgICBicmVh azsKPj4+ICsgICAgICAgICAgICBjYXNlIDB4ZDY6Cj4+PiArICAgICAgICAgICAgICAgIGVhLmJ5 dGVzID0gODsKPj4+ICsgICAgICAgICAgICAgICAgYnJlYWs7Cj4+PiArICAgICAgICAgICAgZGVm YXVsdDoKPj4+ICsgICAgICAgICAgICAgICAgZWEuYnl0ZXMgPSAxNiA8PCB2ZXgubDsKPj4+ICsg ICAgICAgICAgICB9Cj4+PiAgICAgICAgICB9Cj4+PiAgICAgICAgICBpZiAoIGVhLnR5cGUgPT0g T1BfTUVNICkKPj4+ICAgICAgICAgIHsKPj4+IEBAIC00NDY4LDYgKzQ0OTIsMTQgQEAgeDg2X2Vt dWxhdGUoCj4+PiAgICAgICAgICAgICAgdmV4LmIgPSAxOwo+Pj4gICAgICAgICAgICAgIGJ1Zls0 XSAmPSAweDM4Owo+Pj4gICAgICAgICAgfQo+Pj4gKyAgICAgICAgZWxzZSBpZiAoIGIgPT0gMHg3 ZSApCj4+PiArICAgICAgICB7Cj4+PiArICAgICAgICAgICAgLyogY29udmVydCB0aGUgR1BSIGRl c3RpbmF0aW9uIHRvICglckFYKSAqLwo+Pj4gKyAgICAgICAgICAgICooKHVuc2lnbmVkIGxvbmcg KikmbW12YWxwKSA9ICh1bnNpZ25lZCBsb25nKWVhLnJlZzsKPj4+ICsgICAgICAgICAgICByZXhf cHJlZml4ICY9IH5SRVhfQjsKPj4+ICsgICAgICAgICAgICB2ZXguYiA9IDE7Cj4+PiArICAgICAg ICAgICAgYnVmWzRdICY9IDB4Mzg7Cj4+PiArICAgICAgICB9ICAKPj4gVGhhbmt5b3UgZm9yIGRv aW5nIHRoaXMuICBIb3dldmVyLCBsb29raW5nIGF0IGl0LCBpdCBoYXMgc29tZSBjb2RlIGluCj4+ IGNvbW1vbiB3aXRoIHRoZSAiZWEudHlwZSA9PSBPUF9NRU0iIGNsYXVzZS4KPj4KPj4gV291bGQg dGhpcyB3b3JrPwo+Pgo+PiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3g4Nl9lbXVsYXRlL3g4 Nl9lbXVsYXRlLmMKPj4gYi94ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUveDg2X2VtdWxhdGUuYwo+ PiBpbmRleCBmZTU5NGJhLi45MGRiMDY3IDEwMDY0NAo+PiAtLS0gYS94ZW4vYXJjaC94ODYveDg2 X2VtdWxhdGUveDg2X2VtdWxhdGUuYwo+PiArKysgYi94ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUv eDg2X2VtdWxhdGUuYwo+PiBAQCAtNDQ1MywxNiArNDQ1MywyNSBAQCB4ODZfZW11bGF0ZSgKPj4g ICAgICAgICAgICAgIGdldF9mcHUoWDg2RU1VTF9GUFVfeW1tLCAmZmljKTsKPj4gICAgICAgICAg ICAgIGVhLmJ5dGVzID0gMTYgPDwgdmV4Lmw7Cj4+ICAgICAgICAgIH0KPj4gLSAgICAgICAgaWYg KCBlYS50eXBlID09IE9QX01FTSApCj4+ICsgICAgICAgIGlmICggZWEudHlwZSA9PSBPUF9NRU0g fHwgZWEudHlwZSA9PSBPUF9SRUcgKQo+PiAgICAgICAgICB7Cj4+IC0gICAgICAgICAgICAvKiBY WFggZW5hYmxlIG9uY2UgdGhlcmUgaXMgb3BzLT5lYSgpIG9yIGVxdWl2YWxlbnQKPj4gLSAgICAg ICAgICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZigodmV4LnBmeCA9PSB2ZXhfNjYpICYmCj4+IC0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9wcy0+ZWEoZWEubWVtLnNlZywgZWEu bWVtLm9mZikKPj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJiAoZWEuYnl0 ZXMgLSAxKSksIEVYQ19HUCwgMCk7ICovCj4+IC0gICAgICAgICAgICBpZiAoIGIgPT0gMHg2ZiAp Cj4+IC0gICAgICAgICAgICAgICAgcmMgPSBvcHMtPnJlYWQoZWEubWVtLnNlZywgZWEubWVtLm9m ZiswLCBtbXZhbHAsCj4+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWEuYnl0ZXMs IGN0eHQpOwo+PiAgICAgICAgICAgICAgLyogY29udmVydCBtZW1vcnkgb3BlcmFuZCB0byAoJXJB WCkgKi8KPj4gKwo+PiArICAgICAgICAgICAgaWYgKCBlYS50eXBlID09IE9QX01FTSkKPj4gKyAg ICAgICAgICAgIHsKPj4gKyAgICAgICAgICAgICAgICAvKiBYWFggZW5hYmxlIG9uY2UgdGhlcmUg aXMgb3BzLT5lYSgpIG9yIGVxdWl2YWxlbnQKPj4gKyAgICAgICAgICAgICAgICAgICBnZW5lcmF0 ZV9leGNlcHRpb25faWYoKHZleC5wZnggPT0gdmV4XzY2KSAmJgo+PiArICAgICAgICAgICAgICAg ICAgIChvcHMtPmVhKGVhLm1lbS5zZWcsIGVhLm1lbS5vZmYpCj4+ICsgICAgICAgICAgICAgICAg ICAgJiAoZWEuYnl0ZXMgLSAxKSksIEVYQ19HUCwgMCk7ICovCj4+ICsgICAgICAgICAgICAgICAg aWYgKCBiID09IDB4NmYgKQo+PiArICAgICAgICAgICAgICAgICAgICByYyA9IG9wcy0+cmVhZChl YS5tZW0uc2VnLCBlYS5tZW0ub2ZmKzAsIG1tdmFscCwKPj4gKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZWEuYnl0ZXMsIGN0eHQpOwo+PiArICAgICAgICAgICAgfQo+PiArICAg ICAgICAgICAgZWxzZSBpZiAoIGVhLnR5cGUgPT0gT1BfUkVHICkKPj4gKyAgICAgICAgICAgIHsK Pj4gKyAgICAgICAgICAgICAgICAqKCh1bnNpZ25lZCBsb25nICopJm1tdmFscCkgPSAodW5zaWdu ZWQgbG9uZyllYS5yZWc7Cj4+ICsgICAgICAgICAgICB9Cj4+ICsKPj4gICAgICAgICAgICAgIHJl eF9wcmVmaXggJj0gflJFWF9COwo+PiAgICAgICAgICAgICAgdmV4LmIgPSAxOwo+PiAgICAgICAg ICAgICAgYnVmWzRdICY9IDB4Mzg7Cj4+Cj4+Cj4+IFRoaXMgaXMgdW50ZXN0ZWQsIGJ1dCBhdm9p ZHMgZHVwbGljYXRpbmcgdGhpcyBiaXQgb2Ygc3RhdGUgbWFuaXVwdWxhdGlvbi4KPiBZb3VyIHN1 Z2dlc3Rpb24gbWFrZXMgc2Vuc2UsIGJ1dCBJJ20gc3RhcnRpbmcgdG8gZG91YnQgbXkgaW5pdGlh bAo+IHBhdGNoLiA6LSkgSSdtIHRlc3RpbmcgIm1vdnEgeG1tMSwgeG1tMSIgYW5kIG5vdGljaW5n IHRoYXQgaXQgdGFrZXMgdGhlCj4gR1BSLWhhbmRsaW5nIHJvdXRlIGFuZCBJIGNhbid0IHNlZW0g dG8gYmUgYWJsZSB0byBlYXNpbHkgcHJldmVudCBpdAo+IHdpdGggIShyZXhfcHJlZml4ICYgUkVY X0IpLCBhcyByZXhfcHJlZml4ID09IDAgYW5kIHZleC5iID09IDEuIEkgbmVlZAo+IHRvIHRha2Ug YSBoYXJkZXIgbG9vayBhdCBob3cgdGhhdCBjbGFzcyBvZiBpbnN0cnVjdGlvbnMgaXMgY29kZWQu Cj4KClRoYXQgaXMgYSB2ZXJ5IGdvb2QgcG9pbnQgLSBteSBzdWdnZXN0aW9uIGRvZXNuJ3QgZGlm ZmVyZW50aWF0ZSBHUFIKcmVnaXN0ZXIgZGVzdGluYXRpb25zIGZyb20gbm9uLUdQUiByZWdpc3Rl ciBkZXN0aW5hdGlvbnMsIGFuZCBpdCBpcyBvbmx5CnRoZSBHUFIgcmVnaXN0ZXIgZGVzdGluYXRp b25zIHdlIHdhbnQgdG8gdHVybiBpbnRvIG1lbW9yeSBhY2Nlc3NlcwoKd2hhdCBhYm91dCB0aGlz PwoKZWxzZSBpZiAoIGVhLnR5cGUgPT0gT1BfUkVHICYmIGIgPT0gMHg3ZSApCnsKICAgIC8qIEdQ UiByZWdpc3RlciBkZXN0aW5hdGlvbiAtIHBvaW50IGludG8gdGhlIHJlZ2lzdGVyIGJsb2NrLiAq LwogICAgKigodW5zaWduZWQgbG9uZyAqKSZtbXZhbHApID0gKHVuc2lnbmVkIGxvbmcpZWEucmVn Owp9CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4t ZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMu eGVuLm9yZy94ZW4tZGV2ZWwK