From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: [PATCH v5 23/47] x86emul: support AVX512{F, BW} zero- and sign-extending moves Date: Mon, 19 Nov 2018 03:26:20 -0700 Message-ID: <5BF28FCC02000078001FD510@prv1-mh.provo.novell.com> References: <5B6BF83602000078001DC548@prv1-mh.provo.novell.com> <5BF289D802000078001FD3DF@prv1-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1gOgl8-00011a-8v for xen-devel@lists.xenproject.org; Mon, 19 Nov 2018 10:26:26 +0000 In-Reply-To: <5BF289D802000078001FD3DF@prv1-mh.provo.novell.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel Cc: George Dunlap , Andrew Cooper , Wei Liu , Roger Pau Monne List-Id: xen-devel@lists.xenproject.org Tm90ZSB0aGF0IHRoZSB0ZXN0aW5nIGluIHNpbWQuYyBkb2Vzbid0IHJlYWxseSBmb2xsb3cgdGhl IElTQSBleHRlbnNpb24KcGF0dGVybiAtIHRvIGZpdCB0aGUgc2NoZW1lLCBleHRlbnNpb25zIGZy b20gYnl0ZSBhbmQgd29yZCBncmFudWxhcgp2ZWN0b3JzIGNhbiAoY3VycmVudGx5KSBzZW5zaWJs eSBvbmx5IGhhcHBlbiBpbiB0aGUgQVZYNTEyQlcgY2FzZSAoYW5kCmhlbmNlIHJlc3BlY3RpdmUg YWJzdHJhY3Rpb24gbWFjcm9zIHdpbGwgYmUgYWRkZWQgdGhlcmUgcmF0aGVyIHRoYW4KaGVyZSku CgpTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0tLQp2Mzog TmV3LgoKLS0tIGEvdG9vbHMvdGVzdHMveDg2X2VtdWxhdG9yL2V2ZXgtZGlzcDguYworKysgYi90 b29scy90ZXN0cy94ODZfZW11bGF0b3IvZXZleC1kaXNwOC5jCkBAIC0xNzcsNiArMTc3LDE2IEBA IHN0YXRpYyBjb25zdCBzdHJ1Y3QgdGVzdCBhdng1MTJmX2FsbFtdID0KICAgICBJTlNOKHBtYXh1 LCAgICAgICAgNjYsIDBmMzgsIDNmLCAgICB2bCwgICAgIGRxLCB2bCksCiAgICAgSU5TTihwbWlu cywgICAgICAgIDY2LCAwZjM4LCAzOSwgICAgdmwsICAgICBkcSwgdmwpLAogICAgIElOU04ocG1p bnUsICAgICAgICA2NiwgMGYzOCwgM2IsICAgIHZsLCAgICAgZHEsIHZsKSwKKyAgICBJTlNOKHBt b3ZzeGJkLCAgICAgNjYsIDBmMzgsIDIxLCAgICB2bF80LCAgICBiLCB2bCksCisgICAgSU5TTihw bW92c3hicSwgICAgIDY2LCAwZjM4LCAyMiwgICAgdmxfOCwgICAgYiwgdmwpLAorICAgIElOU04o cG1vdnN4d2QsICAgICA2NiwgMGYzOCwgMjMsICAgIHZsXzIsICAgIHcsIHZsKSwKKyAgICBJTlNO KHBtb3ZzeHdxLCAgICAgNjYsIDBmMzgsIDI0LCAgICB2bF80LCAgICB3LCB2bCksCisgICAgSU5T TihwbW92c3hkcSwgICAgIDY2LCAwZjM4LCAyNSwgICAgdmxfMiwgZF9uYiwgdmwpLAorICAgIElO U04ocG1vdnp4YmQsICAgICA2NiwgMGYzOCwgMzEsICAgIHZsXzQsICAgIGIsIHZsKSwKKyAgICBJ TlNOKHBtb3Z6eGJxLCAgICAgNjYsIDBmMzgsIDMyLCAgICB2bF84LCAgICBiLCB2bCksCisgICAg SU5TTihwbW92enh3ZCwgICAgIDY2LCAwZjM4LCAzMywgICAgdmxfMiwgICAgdywgdmwpLAorICAg IElOU04ocG1vdnp4d3EsICAgICA2NiwgMGYzOCwgMzQsICAgIHZsXzQsICAgIHcsIHZsKSwKKyAg ICBJTlNOKHBtb3Z6eGRxLCAgICAgNjYsIDBmMzgsIDM1LCAgICB2bF8yLCBkX25iLCB2bCksCiAg ICAgSU5TTihwbXVsZHEsICAgICAgIDY2LCAwZjM4LCAyOCwgICAgdmwsICAgICAgcSwgdmwpLAog ICAgIElOU04ocG11bGxkLCAgICAgICA2NiwgMGYzOCwgNDAsICAgIHZsLCAgICAgIGQsIHZsKSwK ICAgICBJTlNOKHBtdWx1ZHEsICAgICAgNjYsICAgMGYsIGY0LCAgICB2bCwgICAgICBxLCB2bCks CkBAIC0yNzQsNiArMjg0LDggQEAgc3RhdGljIGNvbnN0IHN0cnVjdCB0ZXN0IGF2eDUxMmJ3X2Fs bFtdCiAgICAgSU5TTihwbWluc3csICAgICAgNjYsICAgMGYsIGVhLCAgICB2bCwgICAgdywgdmwp LAogICAgIElOU04ocG1pbnViLCAgICAgIDY2LCAgIDBmLCBkYSwgICAgdmwsICAgIGIsIHZsKSwK ICAgICBJTlNOKHBtaW51dywgICAgICA2NiwgMGYzOCwgM2EsICAgIHZsLCAgICB3LCB2bCksCisg ICAgSU5TTihwbW92c3hidywgICAgNjYsIDBmMzgsIDIwLCAgICB2bF8yLCAgYiwgdmwpLAorICAg IElOU04ocG1vdnp4YncsICAgIDY2LCAwZjM4LCAzMCwgICAgdmxfMiwgIGIsIHZsKSwKICAgICBJ TlNOKHBtdWxodXcsICAgICA2NiwgICAwZiwgZTQsICAgIHZsLCAgICB3LCB2bCksCiAgICAgSU5T TihwbXVsaHcsICAgICAgNjYsICAgMGYsIGU1LCAgICB2bCwgICAgdywgdmwpLAogICAgIElOU04o cG11bGx3LCAgICAgIDY2LCAgIDBmLCBkNSwgICAgdmwsICAgIHcsIHZsKSwKLS0tIGEveGVuL2Fy Y2gveDg2L3g4Nl9lbXVsYXRlL3g4Nl9lbXVsYXRlLmMKKysrIGIveGVuL2FyY2gveDg2L3g4Nl9l bXVsYXRlL3g4Nl9lbXVsYXRlLmMKQEAgLTQ0MywxMyArNDQzLDIzIEBAIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZXh0MGYzOF90YWJsZSB7CiAgICAgWzB4MWFdID0geyAuc2ltZF9zaXplID0gc2ltZF8x MjgsIC50d29fb3AgPSAxLCAuZDhzID0gNCB9LAogICAgIFsweDFiXSA9IHsgLnNpbWRfc2l6ZSA9 IHNpbWRfMjU2LCAudHdvX29wID0gMSwgLmQ4cyA9IGQ4c192bF9ieV8yIH0sCiAgICAgWzB4MWMg Li4uIDB4MWVdID0geyAuc2ltZF9zaXplID0gc2ltZF9wYWNrZWRfaW50LCAudHdvX29wID0gMSB9 LAotICAgIFsweDIwIC4uLiAweDI1XSA9IHsgLnNpbWRfc2l6ZSA9IHNpbWRfb3RoZXIsIC50d29f b3AgPSAxIH0sCisgICAgWzB4MjBdID0geyAuc2ltZF9zaXplID0gc2ltZF9vdGhlciwgLnR3b19v cCA9IDEsIC5kOHMgPSBkOHNfdmxfYnlfMiB9LAorICAgIFsweDIxXSA9IHsgLnNpbWRfc2l6ZSA9 IHNpbWRfb3RoZXIsIC50d29fb3AgPSAxLCAuZDhzID0gZDhzX3ZsX2J5XzQgfSwKKyAgICBbMHgy Ml0gPSB7IC5zaW1kX3NpemUgPSBzaW1kX290aGVyLCAudHdvX29wID0gMSwgLmQ4cyA9IGQ4c192 bF9ieV84IH0sCisgICAgWzB4MjNdID0geyAuc2ltZF9zaXplID0gc2ltZF9vdGhlciwgLnR3b19v cCA9IDEsIC5kOHMgPSBkOHNfdmxfYnlfMiB9LAorICAgIFsweDI0XSA9IHsgLnNpbWRfc2l6ZSA9 IHNpbWRfb3RoZXIsIC50d29fb3AgPSAxLCAuZDhzID0gZDhzX3ZsX2J5XzQgfSwKKyAgICBbMHgy NV0gPSB7IC5zaW1kX3NpemUgPSBzaW1kX290aGVyLCAudHdvX29wID0gMSwgLmQ4cyA9IGQ4c192 bF9ieV8yIH0sCiAgICAgWzB4MjYgLi4uIDB4MjldID0geyAuc2ltZF9zaXplID0gc2ltZF9wYWNr ZWRfaW50LCAuZDhzID0gZDhzX3ZsIH0sCiAgICAgWzB4MmFdID0geyAuc2ltZF9zaXplID0gc2lt ZF9wYWNrZWRfaW50LCAudHdvX29wID0gMSwgLmQ4cyA9IGQ4c192bCB9LAogICAgIFsweDJiXSA9 IHsgLnNpbWRfc2l6ZSA9IHNpbWRfcGFja2VkX2ludCB9LAogICAgIFsweDJjIC4uLiAweDJkXSA9 IHsgLnNpbWRfc2l6ZSA9IHNpbWRfcGFja2VkX2ZwIH0sCiAgICAgWzB4MmUgLi4uIDB4MmZdID0g eyAuc2ltZF9zaXplID0gc2ltZF9wYWNrZWRfZnAsIC50b19tZW0gPSAxIH0sCi0gICAgWzB4MzAg Li4uIDB4MzVdID0geyAuc2ltZF9zaXplID0gc2ltZF9vdGhlciwgLnR3b19vcCA9IDEgfSwKKyAg ICBbMHgzMF0gPSB7IC5zaW1kX3NpemUgPSBzaW1kX290aGVyLCAudHdvX29wID0gMSwgLmQ4cyA9 IGQ4c192bF9ieV8yIH0sCisgICAgWzB4MzFdID0geyAuc2ltZF9zaXplID0gc2ltZF9vdGhlciwg LnR3b19vcCA9IDEsIC5kOHMgPSBkOHNfdmxfYnlfNCB9LAorICAgIFsweDMyXSA9IHsgLnNpbWRf c2l6ZSA9IHNpbWRfb3RoZXIsIC50d29fb3AgPSAxLCAuZDhzID0gZDhzX3ZsX2J5XzggfSwKKyAg ICBbMHgzM10gPSB7IC5zaW1kX3NpemUgPSBzaW1kX290aGVyLCAudHdvX29wID0gMSwgLmQ4cyA9 IGQ4c192bF9ieV8yIH0sCisgICAgWzB4MzRdID0geyAuc2ltZF9zaXplID0gc2ltZF9vdGhlciwg LnR3b19vcCA9IDEsIC5kOHMgPSBkOHNfdmxfYnlfNCB9LAorICAgIFsweDM1XSA9IHsgLnNpbWRf c2l6ZSA9IHNpbWRfb3RoZXIsIC50d29fb3AgPSAxLCAuZDhzID0gZDhzX3ZsX2J5XzIgfSwKICAg ICBbMHgzNiAuLi4gMHgzZl0gPSB7IC5zaW1kX3NpemUgPSBzaW1kX3BhY2tlZF9pbnQsIC5kOHMg PSBkOHNfdmwgfSwKICAgICBbMHg0MF0gPSB7IC5zaW1kX3NpemUgPSBzaW1kX3BhY2tlZF9pbnQs IC5kOHMgPSBkOHNfdmwgfSwKICAgICBbMHg0MV0gPSB7IC5zaW1kX3NpemUgPSBzaW1kX3BhY2tl ZF9pbnQsIC50d29fb3AgPSAxIH0sCkBAIC04MzE0LDYgKzgzMjQsMjUgQEAgeDg2X2VtdWxhdGUo CiAgICAgICAgIG9wX2J5dGVzID0gMTYgPj4gKHBtb3ZfY29udmVydF9kZWx0YVtiICYgN10gLSB2 ZXgubCk7CiAgICAgICAgIGdvdG8gc2ltZF8wZl9pbnQ7CiAKKyAgICBjYXNlIFg4NkVNVUxfT1BD X0VWRVhfNjYoMHgwZjM4LCAweDIwKTogLyogdnBtb3ZzeGJ3IHt4LHl9bW0vbWVtLFt4eXpdbW17 a30gKi8KKyAgICBjYXNlIFg4NkVNVUxfT1BDX0VWRVhfNjYoMHgwZjM4LCAweDMwKTogLyogdnBt b3Z6eGJ3IHt4LHl9bW0vbWVtLFt4eXpdbW17a30gKi8KKyAgICAgICAgaG9zdF9hbmRfdmNwdV9t dXN0X2hhdmUoYXZ4NTEyYncpOworICAgICAgICAvKiBmYWxsIHRocm91Z2ggKi8KKyAgICBjYXNl IFg4NkVNVUxfT1BDX0VWRVhfNjYoMHgwZjM4LCAweDIxKTogLyogdnBtb3ZzeGJkIHhtbS9tZW0s W3h5el1tbXtrfSAqLworICAgIGNhc2UgWDg2RU1VTF9PUENfRVZFWF82NigweDBmMzgsIDB4MjIp OiAvKiB2cG1vdnN4YnEgeG1tL21lbSxbeHl6XW1te2t9ICovCisgICAgY2FzZSBYODZFTVVMX09Q Q19FVkVYXzY2KDB4MGYzOCwgMHgyMyk6IC8qIHZwbW92c3h3ZCB7eCx5fW1tL21lbSxbeHl6XW1t e2t9ICovCisgICAgY2FzZSBYODZFTVVMX09QQ19FVkVYXzY2KDB4MGYzOCwgMHgyNCk6IC8qIHZw bW92c3h3cSB4bW0vbWVtLFt4eXpdbW17a30gKi8KKyAgICBjYXNlIFg4NkVNVUxfT1BDX0VWRVhf NjYoMHgwZjM4LCAweDI1KTogLyogdnBtb3ZzeGRxIHt4LHl9bW0vbWVtLFt4eXpdbW17a30gKi8K KyAgICBjYXNlIFg4NkVNVUxfT1BDX0VWRVhfNjYoMHgwZjM4LCAweDMxKTogLyogdnBtb3Z6eGJk IHhtbS9tZW0sW3h5el1tbXtrfSAqLworICAgIGNhc2UgWDg2RU1VTF9PUENfRVZFWF82NigweDBm MzgsIDB4MzIpOiAvKiB2cG1vdnp4YnEgeG1tL21lbSxbeHl6XW1te2t9ICovCisgICAgY2FzZSBY ODZFTVVMX09QQ19FVkVYXzY2KDB4MGYzOCwgMHgzMyk6IC8qIHZwbW92enh3ZCB7eCx5fW1tL21l bSxbeHl6XW1te2t9ICovCisgICAgY2FzZSBYODZFTVVMX09QQ19FVkVYXzY2KDB4MGYzOCwgMHgz NCk6IC8qIHZwbW92enh3cSB4bW0vbWVtLFt4eXpdbW17a30gKi8KKyAgICBjYXNlIFg4NkVNVUxf T1BDX0VWRVhfNjYoMHgwZjM4LCAweDM1KTogLyogdnBtb3Z6eGRxIHt4LHl9bW0vbWVtLFt4eXpd bW17a30gKi8KKyAgICAgICAgZ2VuZXJhdGVfZXhjZXB0aW9uX2lmKGV2ZXgudyAmJiAoYiAmIDcp ID09IDUsIEVYQ19VRCk7CisgICAgICAgIG9wX2J5dGVzID0gMzIgPj4gKHBtb3ZfY29udmVydF9k ZWx0YVtiICYgN10gKyAxIC0gZXZleC5scik7CisgICAgICAgIGVsZW1fYnl0ZXMgPSAoYiAmIDcp IDwgMyA/IDEgOiAoYiAmIDcpICE9IDUgPyAyIDogNDsKKyAgICAgICAgZ290byBhdng1MTJmX25v X3NhZTsKKwogICAgIGNhc2UgWDg2RU1VTF9PUENfNjYoMHgwZjM4LCAweDJhKTogICAgIC8qIG1v dm50ZHFhIG0xMjgseG1tICovCiAgICAgY2FzZSBYODZFTVVMX09QQ19WRVhfNjYoMHgwZjM4LCAw eDJhKTogLyogdm1vdm50ZHFhIG1lbSx7eCx5fW1tICovCiAgICAgICAgIGdlbmVyYXRlX2V4Y2Vw dGlvbl9pZihlYS50eXBlICE9IE9QX01FTSwgRVhDX1VEKTsKLS0tIGEvdG9vbHMvdGVzdHMveDg2 X2VtdWxhdG9yL3NpbWQuYworKysgYi90b29scy90ZXN0cy94ODZfZW11bGF0b3Ivc2ltZC5jCkBA IC0zMTEsMTAgKzMxMSwxMiBAQCBzdGF0aWMgaW5saW5lIGJvb2wgX3RvX2Jvb2woYnl0ZV92ZWNf dCBiCiAjICBkZWZpbmUgbWF4KHgsIHkpIEIocG1heHNkLCBfbWFzaywgeCwgeSwgdW5kZWYoKSwg fjApCiAjICBkZWZpbmUgbWluKHgsIHkpIEIocG1pbnNkLCBfbWFzaywgeCwgeSwgdW5kZWYoKSwg fjApCiAjICBkZWZpbmUgbXVsX2Z1bGwoeCwgeSkgKCh2ZWNfdClCKHBtdWxkcSwgX21hc2ssIHgs IHksICh2ZGlfdCl1bmRlZigpLCB+MCkpCisjICBkZWZpbmUgd2lkZW4xKHgpICgodmVjX3QpQihw bW92c3hkcSwgX21hc2ssIHgsICh2ZGlfdCl1bmRlZigpLCB+MCkpCiAjIGVsaWYgVUlOVF9TSVpF ID09IDQKICMgIGRlZmluZSBtYXgoeCwgeSkgKCh2ZWNfdClCKHBtYXh1ZCwgX21hc2ssICh2c2lf dCkoeCksICh2c2lfdCkoeSksICh2c2lfdCl1bmRlZigpLCB+MCkpCiAjICBkZWZpbmUgbWluKHgs IHkpICgodmVjX3QpQihwbWludWQsIF9tYXNrLCAodnNpX3QpKHgpLCAodnNpX3QpKHkpLCAodnNp X3QpdW5kZWYoKSwgfjApKQogIyAgZGVmaW5lIG11bF9mdWxsKHgsIHkpICgodmVjX3QpQihwbXVs dWRxLCBfbWFzaywgKHZzaV90KSh4KSwgKHZzaV90KSh5KSwgKHZkaV90KXVuZGVmKCksIH4wKSkK KyMgIGRlZmluZSB3aWRlbjEoeCkgKCh2ZWNfdClCKHBtb3Z6eGRxLCBfbWFzaywgKHZzaV9oYWxm X3QpKHgpLCAodmRpX3QpdW5kZWYoKSwgfjApKQogIyBlbGlmIElOVF9TSVpFID09IDgKICMgIGRl ZmluZSBtYXgoeCwgeSkgKCh2ZWNfdClCKHBtYXhzcSwgX21hc2ssICh2ZGlfdCkoeCksICh2ZGlf dCkoeSksICh2ZGlfdCl1bmRlZigpLCB+MCkpCiAjICBkZWZpbmUgbWluKHgsIHkpICgodmVjX3Qp QihwbWluc3EsIF9tYXNrLCAodmRpX3QpKHgpLCAodmRpX3QpKHkpLCAodmRpX3QpdW5kZWYoKSwg fjApKQotLS0gYS90b29scy90ZXN0cy94ODZfZW11bGF0b3Ivc2ltZC5oCisrKyBiL3Rvb2xzL3Rl c3RzL3g4Nl9lbXVsYXRvci9zaW1kLmgKQEAgLTIyMiw2ICsyMjIsMTYgQEAgUkVOKHB4b3IsICwg ZCk7CiAjIGVuZGlmCiBPVlIobW92bnRkcSk7CiBPVlIobW92bnRkcWEpOworT1ZSKHBtb3ZzeGJk KTsKK09WUihwbW92c3hicSk7CitPVlIocG1vdnN4ZHEpOworT1ZSKHBtb3ZzeHdkKTsKK09WUihw bW92c3h3cSk7CitPVlIocG1vdnp4YmQpOworT1ZSKHBtb3Z6eGJxKTsKK09WUihwbW92enhkcSk7 CitPVlIocG1vdnp4d2QpOworT1ZSKHBtb3Z6eHdxKTsKIE9WUihwbXVsbGQpOwogT1ZSKHBtdWxk cSk7CiBPVlIocG11bHVkcSk7CgoKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5w cm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8v eGVuLWRldmVs