From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: [PATCH v6 07/42] x86emul: support AVX512{F, BW} zero- and sign-extending moves Date: Thu, 06 Dec 2018 02:53:52 -0700 Message-ID: <5C08F1B00200007800203766@prv1-mh.provo.novell.com> References: <5B6BF83602000078001DC548@prv1-mh.provo.novell.com> <5C08EFAE020000780020373E@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 1gUqM1-0003C0-49 for xen-devel@lists.xenproject.org; Thu, 06 Dec 2018 09:53:57 +0000 In-Reply-To: <5C08EFAE020000780020373E@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 ZF9pbnQsIC50d29fb3AgPSAxIH0sCkBAIC04MzI1LDYgKzgzMzUsMjUgQEAgeDg2X2VtdWxhdGUo 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 ZCk7CiAjICBlbmRpZgogT1ZSKG1vdm50ZHEpOwogT1ZSKG1vdm50ZHFhKTsKK09WUihwbW92c3hi ZCk7CitPVlIocG1vdnN4YnEpOworT1ZSKHBtb3ZzeGRxKTsKK09WUihwbW92c3h3ZCk7CitPVlIo cG1vdnN4d3EpOworT1ZSKHBtb3Z6eGJkKTsKK09WUihwbW92enhicSk7CitPVlIocG1vdnp4ZHEp OworT1ZSKHBtb3Z6eHdkKTsKK09WUihwbW92enh3cSk7CiBPVlIocG11bGxkKTsKIE9WUihwbXVs ZHEpOwogT1ZSKHBtdWx1ZHEpOwoKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVu cHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZv L3hlbi1kZXZlbA==