From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH v4 01/17] x86emul: support most memory accessing MMX/SSE{, 2, 3} insns Date: Wed, 1 Mar 2017 13:17:17 +0000 Message-ID: <7e83a504-c35f-bada-46fb-be229c9735da@citrix.com> References: <58B57E43020000780013E26B@prv-mh.provo.novell.com> <58B57FFD020000780013E29C@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.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cj48B-0004tS-EB for xen-devel@lists.xenproject.org; Wed, 01 Mar 2017 13:17:23 +0000 In-Reply-To: <58B57FFD020000780013E29C@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 T24gMjgvMDIvMTcgMTI6NDksIEphbiBCZXVsaWNoIHdyb3RlOgo+IGUgMHgwZi1lc2NhcGUKPiBz cGFjZSB3aXRoIG1lbW9yeSBvcGVyYW5kcy4gTm90IGNvdmVyZWQgaGVyZSBhcmUgaXJyZWd1bGFy IG1vdmVzLAo+IGNvbnZlcnRzLCBhbmQgeyxVfUNPTUlTe1MsRH0gKG1vZGlmeWluZyBFRkxBR1Mp LgoKWW91ciBlbWFpbCBoYXMgdGV4dCBjb3JydXB0aW9uIGluIHRoaXMgcGFyYWdyYXBoLCBidXQg dGhlIHBhdGNoIGl0c2VsZgpsb29rcyBvay4KCj4gLS0tIGEveGVuL2FyY2gveDg2L3g4Nl9lbXVs YXRlL3g4Nl9lbXVsYXRlLmMKPiArKysgYi94ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUveDg2X2Vt dWxhdGUuYwo+IEBAIC0yNjAyLDEzICsyNjk4LDUzIEBAIHg4Nl9kZWNvZGUoCj4gICAgICAgICAg ZWEubWVtLm9mZiA9IHRydW5jYXRlX2VhKGVhLm1lbS5vZmYpOwo+ICAgICAgfQo+ICAKPiAtICAg IC8qCj4gLSAgICAgKiBXaGVuIHByZWZpeCA2NiBoYXMgYSBtZWFuaW5nIGRpZmZlcmVudCBmcm9t IG9wZXJhbmQtc2l6ZSBvdmVycmlkZSwKPiAtICAgICAqIG9wZXJhbmQgc2l6ZSBkZWZhdWx0cyB0 byA0IGFuZCBjYW4ndCBiZSBvdmVycmlkZGVuIHRvIDIuCj4gLSAgICAgKi8KPiAtICAgIGlmICgg b3BfYnl0ZXMgPT0gMiAmJgo+IC0gICAgICAgICAoY3R4dC0+b3Bjb2RlICYgWDg2RU1VTF9PUENf UEZYX01BU0spID09IFg4NkVNVUxfT1BDXzY2KDAsIDApICkKPiAtICAgICAgICBvcF9ieXRlcyA9 IDQ7CgpDYW4gd2UgaGF2ZSBhIGNvbW1lbnQgaGVyZSBhbG9uZyB0aGUgbGluZXMgb2Y6CgoiU2lt cGxlIG9wX2J5dGVzIGNhbGN1bGF0aW9ucy4gIE1vcmUgY29tcGxpY2F0ZWQgY2FzZXMgdXNlIDAg YW5kIGFyZQpmdXJ0aGVyIGRlY29kZWQgZHVyaW5nIGV4ZWN1dGUuIiA/Cgo+ICsgICAgc3dpdGNo ICggc3RhdGUtPnNpbWRfc2l6ZSApCj4gKyAgICB7Cj4gKyAgICBjYXNlIHNpbWRfbm9uZToKPiAr ICAgICAgICAvKgo+ICsgICAgICAgICAqIFdoZW4gcHJlZml4IDY2IGhhcyBhIG1lYW5pbmcgZGlm ZmVyZW50IGZyb20gb3BlcmFuZC1zaXplIG92ZXJyaWRlLAo+ICsgICAgICAgICAqIG9wZXJhbmQg c2l6ZSBkZWZhdWx0cyB0byA0IGFuZCBjYW4ndCBiZSBvdmVycmlkZGVuIHRvIDIuCj4gKyAgICAg ICAgICovCj4gKyAgICAgICAgaWYgKCBvcF9ieXRlcyA9PSAyICYmCj4gKyAgICAgICAgICAgICAo Y3R4dC0+b3Bjb2RlICYgWDg2RU1VTF9PUENfUEZYX01BU0spID09IFg4NkVNVUxfT1BDXzY2KDAs IDApICkKPiArICAgICAgICAgICAgb3BfYnl0ZXMgPSA0Owo+ICsgICAgICAgIGJyZWFrOwo+ICsK PiArICAgIGNhc2Ugc2ltZF9wYWNrZWRfaW50Ogo+ICsgICAgICAgIHN3aXRjaCAoIHZleC5wZngg KQo+ICsgICAgICAgIHsKPiArICAgICAgICBjYXNlIHZleF9ub25lOiBvcF9ieXRlcyA9IDg7ICAg ICAgICAgICBicmVhazsKPiArICAgICAgICBjYXNlIHZleF82NjogICBvcF9ieXRlcyA9IDE2IDw8 IHZleC5sOyBicmVhazsKPiArICAgICAgICBkZWZhdWx0OiAgICAgICBvcF9ieXRlcyA9IDA7ICAg ICAgICAgICBicmVhazsKPiArICAgICAgICB9Cj4gKyAgICAgICAgYnJlYWs7Cj4gKwo+ICsgICAg Y2FzZSBzaW1kX3NpbmdsZV9mcDoKPiArICAgICAgICBpZiAoIHZleC5wZnggJiBWRVhfUFJFRklY X0RPVUJMRV9NQVNLICkKPiArICAgICAgICB7Cj4gKyAgICAgICAgICAgIG9wX2J5dGVzID0gMDsK PiArICAgICAgICAgICAgYnJlYWs7Cj4gKyAgICBjYXNlIHNpbWRfcGFja2VkX2ZwOgo+ICsgICAg ICAgICAgICBpZiAoIHZleC5wZnggJiBWRVhfUFJFRklYX1NDQUxBUl9NQVNLICkKPiArICAgICAg ICAgICAgewo+ICsgICAgICAgICAgICAgICAgb3BfYnl0ZXMgPSAwOwo+ICsgICAgICAgICAgICAg ICAgYnJlYWs7Cj4gKyAgICAgICAgICAgIH0KPiArICAgICAgICB9Cj4gKyAgICAgICAgLyogZmFs bCB0aHJvdWdoICovCj4gKyAgICBjYXNlIHNpbWRfYW55X2ZwOgo+ICsgICAgICAgIHN3aXRjaCAo IHZleC5wZnggKQo+ICsgICAgICAgIHsKPiArICAgICAgICBkZWZhdWx0OiAgICAgb3BfYnl0ZXMg PSAxNiA8PCB2ZXgubDsgYnJlYWs7Cj4gKyAgICAgICAgY2FzZSB2ZXhfZjM6IG9wX2J5dGVzID0g NDsgICAgICAgICAgIGJyZWFrOwo+ICsgICAgICAgIGNhc2UgdmV4X2YyOiBvcF9ieXRlcyA9IDg7 ICAgICAgICAgICBicmVhazsKPiArICAgICAgICB9Cj4gKyAgICAgICAgYnJlYWs7Cj4gKwo+ICsg ICAgZGVmYXVsdDoKPiArICAgICAgICBvcF9ieXRlcyA9IDA7Cj4gKyAgICAgICAgYnJlYWs7Cj4g KyAgICB9Cj4gIAo+ICAgZG9uZToKPiAgICAgIHJldHVybiByYzsKPiBAQCAtNTQxMyw2ICs1Njcx LDgxIEBAIHg4Nl9lbXVsYXRlKAo+ICAgICAgICAgIGJyZWFrOwo+ICAgICAgfQo+ICAKPiArICAg IENBU0VfU0lNRF9QQUNLRURfSU5UKDB4MGYsIDB4NzApOiAgICAvKiBwc2h1Znt3LGR9ICRpbW04 LHsseH1tbS9tZW0seyx4fW1tICovCj4gKyAgICBjYXNlIFg4NkVNVUxfT1BDX1ZFWF82NigweDBm LCAweDcwKTogLyogdnBzaHVmZCAkaW1tOCx7eCx5fW1tL21lbSx7eCx5fW1tICovCj4gKyAgICBj YXNlIFg4NkVNVUxfT1BDX0YzKDB4MGYsIDB4NzApOiAgICAgLyogcHNodWZodyAkaW1tOCx4bW0v bTEyOCx4bW0gKi8KPiArICAgIGNhc2UgWDg2RU1VTF9PUENfVkVYX0YzKDB4MGYsIDB4NzApOiAv KiB2cHNodWZodyAkaW1tOCx7eCx5fW1tL21lbSx7eCx5fW1tICovCj4gKyAgICBjYXNlIFg4NkVN VUxfT1BDX0YyKDB4MGYsIDB4NzApOiAgICAgLyogcHNodWZsdyAkaW1tOCx4bW0vbTEyOCx4bW0g Ki8KPiArICAgIGNhc2UgWDg2RU1VTF9PUENfVkVYX0YyKDB4MGYsIDB4NzApOiAvKiB2cHNodWZs dyAkaW1tOCx7eCx5fW1tL21lbSx7eCx5fW1tICovCj4gKyAgICAgICAgZCA9IChkICYgflNyY01h c2spIHwgU3JjTWVtIHwgVHdvT3A7Cj4gKyAgICAgICAgb3BfYnl0ZXMgPSB2ZXgucGZ4ID8gMTYg PDwgdmV4LmwgOiA4Owo+ICsgICAgc2ltZF8wZl9pbnRfaW1tODoKPiArICAgICAgICBpZiAoIHZl eC5vcGN4ICE9IHZleF9ub25lICkKPiArICAgICAgICB7Cj4gKyAgICAgICAgICAgIGlmICggdmV4 LmwgKQo+ICsgICAgICAgICAgICAgICAgaG9zdF9hbmRfdmNwdV9tdXN0X2hhdmUoYXZ4Mik7Cj4g KyAgICAgICAgICAgIGVsc2UKPiArICAgICAgICAgICAgewo+ICsgICAgc2ltZF8wZl9pbW04X2F2 eDoKPiArICAgICAgICAgICAgICAgIGhvc3RfYW5kX3ZjcHVfbXVzdF9oYXZlKGF2eCk7Cj4gKyAg ICAgICAgICAgIH0KPiArICAgICAgICAgICAgZ2V0X2ZwdShYODZFTVVMX0ZQVV95bW0sICZmaWMp Owo+ICsgICAgICAgIH0KPiArICAgICAgICBlbHNlIGlmICggdmV4LnBmeCApCj4gKyAgICAgICAg ewo+ICsgICAgc2ltZF8wZl9pbW04X3NzZTI6Cj4gKyAgICAgICAgICAgIHZjcHVfbXVzdF9oYXZl KHNzZTIpOwo+ICsgICAgICAgICAgICBnZXRfZnB1KFg4NkVNVUxfRlBVX3htbSwgJmZpYyk7Cj4g KyAgICAgICAgfQo+ICsgICAgICAgIGVsc2UKPiArICAgICAgICB7Cj4gKyAgICAgICAgICAgIGhv c3RfYW5kX3ZjcHVfbXVzdF9oYXZlKG1teCk7Cj4gKyAgICAgICAgICAgIHZjcHVfbXVzdF9oYXZl KHNzZSk7Cj4gKyAgICAgICAgICAgIGdldF9mcHUoWDg2RU1VTF9GUFVfbW14LCAmZmljKTsKPiAr ICAgICAgICB9Cj4gKyAgICBzaW1kXzBmX2ltbTg6Cj4gKyAgICB7Cj4gKyAgICAgICAgdWludDhf dCAqYnVmID0gZ2V0X3N0dWIoc3R1Yik7Cj4gKwo+ICsgICAgICAgIGJ1ZlswXSA9IDB4M2U7Cj4g KyAgICAgICAgYnVmWzFdID0gMHgzZTsKPiArICAgICAgICBidWZbMl0gPSAweDBmOwo+ICsgICAg ICAgIGJ1ZlszXSA9IGI7Cj4gKyAgICAgICAgYnVmWzRdID0gbW9kcm07Cj4gKyAgICAgICAgaWYg KCBlYS50eXBlID09IE9QX01FTSApCj4gKyAgICAgICAgewo+ICsgICAgICAgICAgICAvKiBDb252 ZXJ0IG1lbW9yeSBvcGVyYW5kIHRvICglckFYKS4gKi8KPiArICAgICAgICAgICAgcmV4X3ByZWZp eCAmPSB+UkVYX0I7Cj4gKyAgICAgICAgICAgIHZleC5iID0gMTsKPiArICAgICAgICAgICAgYnVm WzRdICY9IDB4Mzg7Cj4gKyAgICAgICAgfQo+ICsgICAgICAgIGJ1Zls1XSA9IGltbTE7Cj4gKyAg ICAgICAgZmljLmluc25fYnl0ZXMgPSA2OwoKV2hhdCBpcyB0aGUgZXhwZWN0YXRpb24gd2l0aCBz ZXR0aW5nIHVwIHRoZSByZXQgaW4gdGhlIHN0dWIgb3Igbm90PyAKVGhpcyBzZWVtcyByYXRoZXIg aW5jb25zaXN0ZW50IGF0IHRoZSBtb21lbnQuCgo+IEBAIC02MTU5LDYgKzY1NTEsNzYgQEAgeDg2 X2VtdWxhdGUoCj4gICAgICAgICAgZ290byBjYW5ub3RfZW11bGF0ZTsKPiAgICAgIH0KPiAgCj4g KyAgICBpZiAoIHN0YXRlLT5zaW1kX3NpemUgKQo+ICsgICAgewo+ICsjaWZkZWYgX19YRU5fXwo+ ICsgICAgICAgIHVpbnQ4X3QgKmJ1ZiA9IHN0dWIucHRyOwo+ICsjZWxzZQo+ICsgICAgICAgIHVp bnQ4X3QgKmJ1ZiA9IGdldF9zdHViKHN0dWIpOwo+ICsjZW5kaWYKCklzIHRoaXMgc3RhbGU/ICBF dmVyeXdoZXJlIGVsc2UgaXMganVzdCBnZXRfc3R1YigpIHdpdGhvdXQgYW55IGlmZGVmYXJ5LgoK fkFuZHJldwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K WGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xp c3RzLnhlbi5vcmcveGVuLWRldmVsCg==