From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH 4/8] x86emul: support BMI2 insns Date: Fri, 13 Jan 2017 18:20:57 +0000 Message-ID: References: <5878FC41020000780012FF02@prv-mh.provo.novell.com> <5879010D020000780012FF55@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cS6TF-0006Ta-Ks for xen-devel@lists.xenproject.org; Fri, 13 Jan 2017 18:21:01 +0000 In-Reply-To: <5879010D020000780012FF55@prv-mh.provo.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Jan Beulich , xen-devel List-Id: xen-devel@lists.xenproject.org T24gMTMvMDEvMTcgMTU6MzIsIEphbiBCZXVsaWNoIHdyb3RlOgo+IE5vdGUgdGhhdCB0aGUgYWRq dXN0bWVudCB0byB0aGUgbW9kZV82NGJpdCgpIGRlZmluaXRpb24gaXMgc28gdGhhdCB3ZQo+IGNh biBhdm9pZCAiI2lmZGVmIF9feDg2XzY0X18iIGFyb3VuZCB0aGUgNjQtYml0IGFzbSgpIHBvcnRp b25zLiBBbgo+IGFsdGVybmF0aXZlIHdvdWxkIGJlIHNpbmdsZSBhc20oKXMgd2l0aCBhIGNvbmRp dGlvbmFsIGJyYW5jaCBvdmVyIHRoZQo+IChtYW51YWxseSBlbmNvZGVkKSBSRVg2NCBwcmVmaXgu CgpUaGlzIHByZXN1bWFibHkgcmVseWluZyBvbiBzZW5zaWJsZSBkZWFkLWNvZGUtZWxpbWl0YXRp b24gdG8gY29tcGlsZT8gCkRvZXMgdGhpcyBvZmZlciBhbnkgZnVydGhlciBvcHBvcnR1bml0aWVz IHdpdGggcmVtb3Zpbmcgb3RoZXIgaWZkZWZzPwoKKEVpdGhlciB3YXksIHRoaXMgc2VlbXMgY2xl YW5lciB0aGFuIGVtYmVkZGluZyBhIGptcCBpbiBhc20pLgoKPiAtLS0gYS94ZW4vYXJjaC94ODYv eDg2X2VtdWxhdGUveDg2X2VtdWxhdGUuYwo+ICsrKyBiL3hlbi9hcmNoL3g4Ni94ODZfZW11bGF0 ZS94ODZfZW11bGF0ZS5jCj4gQEAgLTcwNyw3ICs3MDcsMTEgQEAgZG97IGFzbSB2b2xhdGlsZSAo Cj4gIH0pCj4gICNkZWZpbmUgdHJ1bmNhdGVfZWEoZWEpIHRydW5jYXRlX3dvcmQoKGVhKSwgYWRf Ynl0ZXMpCj4gIAo+IC0jZGVmaW5lIG1vZGVfNjRiaXQoKSAoY3R4dC0+YWRkcl9zaXplID09IDY0 KQo+ICsjaWZkZWYgX194ODZfNjRfXwo+ICsjIGRlZmluZSBtb2RlXzY0Yml0KCkgKGN0eHQtPmFk ZHJfc2l6ZSA9PSA2NCkKPiArI2Vsc2UKPiArIyBkZWZpbmUgbW9kZV82NGJpdCgpIGZhbHNlCj4g KyNlbmRpZgo+ICAKPiAgI2RlZmluZSBmYWlsX2lmKHApICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcCj4gIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXAo+IEBAIC0xMzUzLDYgKzEzNTcsNyBAQCBzdGF0aWMgYm9vbCB2 Y3B1X2hhcygKPiAgI2RlZmluZSB2Y3B1X2hhc19taXNhbGlnbnNzZSgpIHZjcHVfaGFzKDB4ODAw MDAwMDEsIEVDWCwgIDcsIGN0eHQsIG9wcykKPiAgI2RlZmluZSB2Y3B1X2hhc19ibWkxKCkgICAg ICAgIHZjcHVfaGFzKCAgICAgICAgIDcsIEVCWCwgIDMsIGN0eHQsIG9wcykKPiAgI2RlZmluZSB2 Y3B1X2hhc19obGUoKSAgICAgICAgIHZjcHVfaGFzKCAgICAgICAgIDcsIEVCWCwgIDQsIGN0eHQs IG9wcykKPiArI2RlZmluZSB2Y3B1X2hhc19ibWkyKCkgICAgICAgIHZjcHVfaGFzKCAgICAgICAg IDcsIEVCWCwgIDgsIGN0eHQsIG9wcykKPiAgI2RlZmluZSB2Y3B1X2hhc19ydG0oKSAgICAgICAg IHZjcHVfaGFzKCAgICAgICAgIDcsIEVCWCwgMTEsIGN0eHQsIG9wcykKPiAgI2RlZmluZSB2Y3B1 X2hhc19tcHgoKSAgICAgICAgIHZjcHVfaGFzKCAgICAgICAgIDcsIEVCWCwgMTQsIGN0eHQsIG9w cykKPiAgI2RlZmluZSB2Y3B1X2hhc19hZHgoKSAgICAgICAgIHZjcHVfaGFzKCAgICAgICAgIDcs IEVCWCwgMTksIGN0eHQsIG9wcykKPiBAQCAtNTg4MCwxMiArNTg4NSwyMSBAQCB4ODZfZW11bGF0 ZSgKPiAgI2VuZGlmCj4gIAo+ICAgICAgY2FzZSBYODZFTVVMX09QQ19WRVgoMHgwZjM4LCAweGYy KTogICAgLyogYW5kbiByL20scixyICovCj4gKyAgICBjYXNlIFg4NkVNVUxfT1BDX1ZFWCgweDBm MzgsIDB4ZjUpOiAgICAvKiBiemhpIHIsci9tLHIgKi8KPiArICAgIGNhc2UgWDg2RU1VTF9PUENf VkVYX0YzKDB4MGYzOCwgMHhmNSk6IC8qIHBleHQgci9tLHIsciAqLwo+ICsgICAgY2FzZSBYODZF TVVMX09QQ19WRVhfRjIoMHgwZjM4LCAweGY1KTogLyogcGRlcCByL20scixyICovCj4gICAgICBj YXNlIFg4NkVNVUxfT1BDX1ZFWCgweDBmMzgsIDB4ZjcpOiAgICAvKiBiZXh0ciByLHIvbSxyICov Cj4gKyAgICBjYXNlIFg4NkVNVUxfT1BDX1ZFWF82NigweDBmMzgsIDB4ZjcpOiAvKiBzaGx4IHIs ci9tLHIgKi8KPiArICAgIGNhc2UgWDg2RU1VTF9PUENfVkVYX0YzKDB4MGYzOCwgMHhmNyk6IC8q IHNhcnggcixyL20sciAqLwo+ICsgICAgY2FzZSBYODZFTVVMX09QQ19WRVhfRjIoMHgwZjM4LCAw eGY3KTogLyogc2hyeCByLHIvbSxyICovCj4gICAgICB7Cj4gICAgICAgICAgdWludDhfdCAqYnVm ID0gZ2V0X3N0dWIoc3R1Yik7Cj4gICAgICAgICAgdHlwZW9mKHZleCkgKnB2ZXggPSBjb250YWlu ZXJfb2YoYnVmICsgMSwgdHlwZW9mKHZleCksIHJhd1swXSk7Cj4gIAo+IC0gICAgICAgIGhvc3Rf YW5kX3ZjcHVfbXVzdF9oYXZlKGJtaTEpOwo+ICsgICAgICAgIGlmICggYiA9PSAweGY1IHx8IHZl eC5wZnggKQo+ICsgICAgICAgICAgICBob3N0X2FuZF92Y3B1X211c3RfaGF2ZShibWkyKTsKPiAr ICAgICAgICBlbHNlCj4gKyAgICAgICAgICAgIGhvc3RfYW5kX3ZjcHVfbXVzdF9oYXZlKGJtaTEp Owo+ICAgICAgICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZih2ZXgubCwgRVhDX1VEKTsKPiAgCj4g ICAgICAgICAgYnVmWzBdID0gMHhjNDsKPiBAQCAtNTk3Myw2ICs1OTg3LDMzIEBAIHg4Nl9lbXVs YXRlKAo+ICAgICAgICAgIGJyZWFrOwo+ICAgICAgfQo+ICAKPiArICAgIGNhc2UgWDg2RU1VTF9P UENfVkVYX0YyKDB4MGYzOCwgMHhmNik6IC8qIG11bHggci9tLHIsciAqLwo+ICsgICAgICAgIHZj cHVfbXVzdF9oYXZlKGJtaTIpOwo+ICsgICAgICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZih2ZXgu bCwgRVhDX1VEKTsKCnZleC53IGFnYWluLgoKPiArICAgICAgICBlYS5yZWcgPSBkZWNvZGVfcmVn aXN0ZXIofnZleC5yZWcgJiAobW9kZV82NGJpdCgpID8gMHhmIDogNyksCj4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICZfcmVncywgMCk7Cj4gKyAgICAgICAgaWYgKCBtb2RlXzY0 Yml0KCkgJiYgdmV4LncgKQo+ICsgICAgICAgICAgICBhc20gKCAibXVscSAlMyIgOiAiPWEiICgq ZWEucmVnKSwgIj1kIiAoZHN0LnZhbCkKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIDog IjAiIChzcmMudmFsKSwgInJtIiAoX3JlZ3MucihkeCkpICk7Cj4gKyAgICAgICAgZWxzZQo+ICsg ICAgICAgICAgICBhc20gKCAibXVsbCAlMyIgOiAiPWEiICgqZWEucmVnKSwgIj1kIiAoZHN0LnZh bCkKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogIjAiICgodWludDMyX3Qpc3JjLnZh bCksICJybSIgKF9yZWdzLl9lZHgpICk7Cj4gKyAgICAgICAgYnJlYWs7Cj4gKwo+ICsgICAgY2Fz ZSBYODZFTVVMX09QQ19WRVhfRjIoMHgwZjNhLCAweGYwKTogLyogcm9yeCBpbW0sci9tLHIgKi8K PiArICAgICAgICB2Y3B1X211c3RfaGF2ZShibWkyKTsKPiArICAgICAgICBnZW5lcmF0ZV9leGNl cHRpb25faWYodmV4LmwgfHwgdmV4LnJlZyAhPSAweGYsIEVYQ19VRCk7CgpXaGF0IGRvZXMgdGhp cyB2ZXgucmVnIGNoZWNrIGNvcnJlc3BvbmQgdG8/ICBJIGNhbid0IGxvY2F0ZSBhbnl0aGluZwpy ZWxldmFudCBpbiB0aGUgbWFudWFscy4KCn5BbmRyZXcKCj4gKyAgICAgICAgaWYgKCBlYS50eXBl ID09IE9QX1JFRyApCj4gKyAgICAgICAgICAgIHNyYy52YWwgPSAqZWEucmVnOwo+ICsgICAgICAg IGVsc2UgaWYgKCAocmMgPSByZWFkX3Vsb25nKGVhLm1lbS5zZWcsIGVhLm1lbS5vZmYsICZzcmMu dmFsLCBvcF9ieXRlcywKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdHh0 LCBvcHMpKSAhPSBYODZFTVVMX09LQVkgKQo+ICsgICAgICAgICAgICBnb3RvIGRvbmU7Cj4gKyAg ICAgICAgaWYgKCBtb2RlXzY0Yml0KCkgJiYgdmV4LncgKQo+ICsgICAgICAgICAgICBhc20gKCAi cm9ycSAlYjEsJTAiIDogIj1nIiAoZHN0LnZhbCkgOiAiYyIgKGltbTEpLCAiMCIgKHNyYy52YWwp ICk7Cj4gKyAgICAgICAgZWxzZQo+ICsgICAgICAgICAgICBhc20gKCAicm9ybCAlYjEsJWswIiA6 ICI9ZyIgKGRzdC52YWwpIDogImMiIChpbW0xKSwgIjAiIChzcmMudmFsKSApOwo+ICsgICAgICAg IGJyZWFrOwo+ICsKPiAgICAgIGRlZmF1bHQ6Cj4gICAgICAgICAgZ290byBjYW5ub3RfZW11bGF0 ZTsKPiAgICAgIH0KPiAtLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2NwdWZlYXR1cmUuaAo+ICsr KyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvY3B1ZmVhdHVyZS5oCj4gQEAgLTU4LDYgKzU4LDcgQEAK PiAgI2RlZmluZSBjcHVfaGFzX2F2eCAgICAgICAgICAgICBib290X2NwdV9oYXMoWDg2X0ZFQVRV UkVfQVZYKQo+ICAjZGVmaW5lIGNwdV9oYXNfbHdwICAgICAgICAgICAgIGJvb3RfY3B1X2hhcyhY ODZfRkVBVFVSRV9MV1ApCj4gICNkZWZpbmUgY3B1X2hhc19ibWkxICAgICAgICAgICAgYm9vdF9j cHVfaGFzKFg4Nl9GRUFUVVJFX0JNSTEpCj4gKyNkZWZpbmUgY3B1X2hhc19ibWkyICAgICAgICAg ICAgYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX0JNSTIpCj4gICNkZWZpbmUgY3B1X2hhc19tcHgg ICAgICAgICAgICAgYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX01QWCkKPiAgI2RlZmluZSBjcHVf aGFzX2FyY2hfcGVyZm1vbiAgICBib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfQVJDSF9QRVJGTU9O KQo+ICAjZGVmaW5lIGNwdV9oYXNfcmR0c2NwICAgICAgICAgIGJvb3RfY3B1X2hhcyhYODZfRkVB VFVSRV9SRFRTQ1ApCj4KPgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcK aHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=