From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: [PATCH v6 38/42] x86emul: support of AVX512* population count insns Date: Thu, 06 Dec 2018 03:10:57 -0700 Message-ID: <5C08F5B1020000780020390F@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 us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1gUqcX-0008GK-Is for xen-devel@lists.xenproject.org; Thu, 06 Dec 2018 10:11:01 +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 UGx1cyB0aGUgb25seSBvdGhlciBBVlg1MTJfQklUQUxHIG9uZS4KCkFzIGluIGEgZmV3IGNhc2Vz IGJlZm9yZSwgc2luY2UgdGhlIGluc25zIGhlcmUgYW5kIGluIHBhcnRpY3VsYXIgdGhlaXIKbWVt b3J5IGFjY2VzcyBwYXR0ZXJucyBmb2xsb3cgdGhlIHVzdWFsIHNjaGVtZSwgSSBkaWRuJ3QgdGhp bmsgaXQgd2FzCm5lY2Vzc2FyeSB0byBhZGQgYSBjb250cml2ZWQgdGVzdCBzcGVjaWZpY2FsbHkg Zm9yIHRoZW0sIGJleW9uZCB0aGUKRGlzcDggc2NhbGluZyBvbmUuCgpTaWduZWQtb2ZmLWJ5OiBK YW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0tLQp2NjogTmV3LgoKLS0tIGEvdG9vbHMv dGVzdHMveDg2X2VtdWxhdG9yL2V2ZXgtZGlzcDguYworKysgYi90b29scy90ZXN0cy94ODZfZW11 bGF0b3IvZXZleC1kaXNwOC5jCkBAIC01MzgsNiArNTM4LDExIEBAIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgdGVzdCBhdng1MTJwZl81MTJbXQogICAgIElOU05YKHNjYXR0ZXJwZjFxLCA2NiwgMGYzOCwg YzcsIDYsIHZsLCBzZCwgZWwpLAogfTsKIAorc3RhdGljIGNvbnN0IHN0cnVjdCB0ZXN0IGF2eDUx Ml9iaXRhbGdfYWxsW10gPSB7CisgICAgSU5TTihwb3BjbnQsICAgICAgNjYsIDBmMzgsIDU0LCB2 bCwgYncsIHZsKSwKKyAgICBJTlNOKHBzaHVmYml0cW1iLCA2NiwgMGYzOCwgOGYsIHZsLCAgYiwg dmwpLAorfTsKKwogc3RhdGljIGNvbnN0IHN0cnVjdCB0ZXN0IGF2eDUxMl92Ym1pX2FsbFtdID0g ewogICAgIElOU04ocGVybWIsICAgICAgICAgNjYsIDBmMzgsIDhkLCB2bCwgYiwgdmwpLAogICAg IElOU04ocGVybWkyYiwgICAgICAgNjYsIDBmMzgsIDc1LCB2bCwgYiwgdmwpLApAQCAtNTUwLDYg KzU1NSwxMCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHRlc3QgYXZ4NTEyX3ZibWkyX2FsCiAgICAg SU5TTihwZXhwYW5kLCAgIDY2LCAwZjM4LCA2MiwgdmwsIGJ3LCBlbCksCiB9OwogCitzdGF0aWMg Y29uc3Qgc3RydWN0IHRlc3QgYXZ4NTEyX3Zwb3BjbnRkcV9hbGxbXSA9IHsKKyAgICBJTlNOKHBv cGNudCwgNjYsIDBmMzgsIDU1LCB2bCwgZHEsIHZsKQorfTsKKwogc3RhdGljIGNvbnN0IHVuc2ln bmVkIGNoYXIgdmxfYWxsW10gPSB7IFZMXzUxMiwgVkxfMTI4LCBWTF8yNTYgfTsKIHN0YXRpYyBj b25zdCB1bnNpZ25lZCBjaGFyIHZsXzEyOFtdID0geyBWTF8xMjggfTsKIHN0YXRpYyBjb25zdCB1 bnNpZ25lZCBjaGFyIHZsX25vMTI4W10gPSB7IFZMXzUxMiwgVkxfMjU2IH07CkBAIC05MTksNiAr OTI4LDggQEAgdm9pZCBldmV4X2Rpc3A4X3Rlc3Qodm9pZCAqaW5zdHIsIHN0cnVjdAogICAgIFJV Tihhdng1MTJlciwgNTEyKTsKICNkZWZpbmUgY3B1X2hhc19hdng1MTJwZiBjcHVfaGFzX2F2eDUx MmYKICAgICBSVU4oYXZ4NTEycGYsIDUxMik7CisgICAgUlVOKGF2eDUxMl9iaXRhbGcsIGFsbCk7 CiAgICAgUlVOKGF2eDUxMl92Ym1pLCBhbGwpOwogICAgIFJVTihhdng1MTJfdmJtaTIsIGFsbCk7 CisgICAgUlVOKGF2eDUxMl92cG9wY250ZHEsIGFsbCk7CiB9Ci0tLSBhL3Rvb2xzL3Rlc3RzL3g4 Nl9lbXVsYXRvci94ODYtZW11bGF0ZS5oCisrKyBiL3Rvb2xzL3Rlc3RzL3g4Nl9lbXVsYXRvci94 ODYtZW11bGF0ZS5oCkBAIC0xNDMsNiArMTQzLDggQEAgc3RhdGljIGlubGluZSBib29sIHhjcjBf bWFzayh1aW50NjRfdCBtYQogI2RlZmluZSBjcHVfaGFzX2F2eDUxMnZsICAoY3AuZmVhdC5hdng1 MTJ2bCAmJiB4Y3IwX21hc2soMHhlNikpCiAjZGVmaW5lIGNwdV9oYXNfYXZ4NTEyX3ZibWkgKGNw LmZlYXQuYXZ4NTEyX3ZibWkgJiYgeGNyMF9tYXNrKDB4ZTYpKQogI2RlZmluZSBjcHVfaGFzX2F2 eDUxMl92Ym1pMiAoY3AuZmVhdC5hdng1MTJfdmJtaTIgJiYgeGNyMF9tYXNrKDB4ZTYpKQorI2Rl ZmluZSBjcHVfaGFzX2F2eDUxMl9iaXRhbGcgKGNwLmZlYXQuYXZ4NTEyX2JpdGFsZyAmJiB4Y3Iw X21hc2soMHhlNikpCisjZGVmaW5lIGNwdV9oYXNfYXZ4NTEyX3Zwb3BjbnRkcSAoY3AuZmVhdC5h dng1MTJfdnBvcGNudGRxICYmIHhjcjBfbWFzaygweGU2KSkKIAogI2RlZmluZSBjcHVfaGFzX3hn ZXRidjEgICAoY3B1X2hhc194c2F2ZSAmJiBjcC54c3RhdGUueGdldGJ2MSkKIAotLS0gYS94ZW4v YXJjaC94ODYveDg2X2VtdWxhdGUveDg2X2VtdWxhdGUuYworKysgYi94ZW4vYXJjaC94ODYveDg2 X2VtdWxhdGUveDg2X2VtdWxhdGUuYwpAQCAtNDc5LDYgKzQ3OSw3IEBAIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZXh0MGYzOF90YWJsZSB7CiAgICAgWzB4NGRdID0geyAuc2ltZF9zaXplID0gc2ltZF9z Y2FsYXJfdmV4dywgLmQ4cyA9IGQ4c19kcSB9LAogICAgIFsweDRlXSA9IHsgLnNpbWRfc2l6ZSA9 IHNpbWRfcGFja2VkX2ZwLCAudHdvX29wID0gMSwgLmQ4cyA9IGQ4c192bCB9LAogICAgIFsweDRm XSA9IHsgLnNpbWRfc2l6ZSA9IHNpbWRfc2NhbGFyX3ZleHcsIC5kOHMgPSBkOHNfZHEgfSwKKyAg ICBbMHg1NCAuLi4gMHg1NV0gPSB7IC5zaW1kX3NpemUgPSBzaW1kX3BhY2tlZF9pbnQsIC50d29f b3AgPSAxLCAuZDhzID0gZDhzX3ZsIH0sCiAgICAgWzB4NThdID0geyAuc2ltZF9zaXplID0gc2lt ZF9vdGhlciwgLnR3b19vcCA9IDEsIC5kOHMgPSAyIH0sCiAgICAgWzB4NTldID0geyAuc2ltZF9z aXplID0gc2ltZF9vdGhlciwgLnR3b19vcCA9IDEsIC5kOHMgPSAzIH0sCiAgICAgWzB4NWFdID0g eyAuc2ltZF9zaXplID0gc2ltZF8xMjgsIC50d29fb3AgPSAxLCAuZDhzID0gNCB9LApAQCAtNTAx LDYgKzUwMiw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZXh0MGYzOF90YWJsZSB7CiAgICAgWzB4 OGNdID0geyAuc2ltZF9zaXplID0gc2ltZF9wYWNrZWRfaW50IH0sCiAgICAgWzB4OGRdID0geyAu c2ltZF9zaXplID0gc2ltZF9wYWNrZWRfaW50LCAuZDhzID0gZDhzX3ZsIH0sCiAgICAgWzB4OGVd ID0geyAuc2ltZF9zaXplID0gc2ltZF9wYWNrZWRfaW50LCAudG9fbWVtID0gMSB9LAorICAgIFsw eDhmXSA9IHsgLnNpbWRfc2l6ZSA9IHNpbWRfcGFja2VkX2ludCwgLmQ4cyA9IGQ4c192bCB9LAog ICAgIFsweDkwIC4uLiAweDkzXSA9IHsgLnNpbWRfc2l6ZSA9IHNpbWRfb3RoZXIsIC52c2liID0g MSwgLmQ4cyA9IGQ4c19kcSB9LAogICAgIFsweDk2IC4uLiAweDk4XSA9IHsgLnNpbWRfc2l6ZSA9 IHNpbWRfcGFja2VkX2ZwLCAuZDhzID0gZDhzX3ZsIH0sCiAgICAgWzB4OTldID0geyAuc2ltZF9z aXplID0gc2ltZF9zY2FsYXJfdmV4dywgLmQ4cyA9IGQ4c19kcSB9LApAQCAtMTkxNSw2ICsxOTE3 LDggQEAgc3RhdGljIGJvb2wgdmNwdV9oYXMoCiAjZGVmaW5lIHZjcHVfaGFzX2F2eDUxMnZsKCkg ICAgdmNwdV9oYXMoICAgICAgICAgNywgRUJYLCAzMSwgY3R4dCwgb3BzKQogI2RlZmluZSB2Y3B1 X2hhc19hdng1MTJfdmJtaSgpIHZjcHVfaGFzKCAgICAgICAgIDcsIEVDWCwgIDEsIGN0eHQsIG9w cykKICNkZWZpbmUgdmNwdV9oYXNfYXZ4NTEyX3ZibWkyKCkgdmNwdV9oYXMoICAgICAgICA3LCBF Q1gsICA2LCBjdHh0LCBvcHMpCisjZGVmaW5lIHZjcHVfaGFzX2F2eDUxMl9iaXRhbGcoKSB2Y3B1 X2hhcyggICAgICAgNywgRUNYLCAxMiwgY3R4dCwgb3BzKQorI2RlZmluZSB2Y3B1X2hhc19hdng1 MTJfdnBvcGNudGRxKCkgdmNwdV9oYXMoICAgIDcsIEVDWCwgMTQsIGN0eHQsIG9wcykKICNkZWZp bmUgdmNwdV9oYXNfcmRwaWQoKSAgICAgICB2Y3B1X2hhcyggICAgICAgICA3LCBFQ1gsIDIyLCBj dHh0LCBvcHMpCiAjZGVmaW5lIHZjcHVfaGFzX2NsemVybygpICAgICAgdmNwdV9oYXMoMHg4MDAw MDAwOCwgRUJYLCAgMCwgY3R4dCwgb3BzKQogCkBAIC04ODc2LDYgKzg4ODAsMTkgQEAgeDg2X2Vt dWxhdGUoCiAgICAgICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZih2ZXgubCwgRVhDX1VEKTsKICAg ICAgICAgZ290byBzaW1kXzBmX2F2eDsKIAorICAgIGNhc2UgWDg2RU1VTF9PUENfRVZFWF82Nigw eDBmMzgsIDB4OGYpOiAvKiB2cHNodWZiaXRxbWIgW3h5el1tbS9tZW0sW3h5el1tbSxre2t9ICov CisgICAgICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZihldmV4LncgfHwgIWV2ZXguciB8fCAhZXZl eC5SIHx8IGV2ZXgueiwgRVhDX1VEKTsKKyAgICAgICAgLyogZmFsbCB0aHJvdWdoICovCisgICAg Y2FzZSBYODZFTVVMX09QQ19FVkVYXzY2KDB4MGYzOCwgMHg1NCk6IC8qIHZwb3BjbnR7Yix3fSBb eHl6XW1tL21lbSxbeHl6XW1te2t9ICovCisgICAgICAgIGhvc3RfYW5kX3ZjcHVfbXVzdF9oYXZl KGF2eDUxMl9iaXRhbGcpOworICAgICAgICBnZW5lcmF0ZV9leGNlcHRpb25faWYoZXZleC5iciwg RVhDX1VEKTsKKyAgICAgICAgZWxlbV9ieXRlcyA9IDEgPDwgZXZleC53OworICAgICAgICBnb3Rv IGF2eDUxMmZfbm9fc2FlOworCisgICAgY2FzZSBYODZFTVVMX09QQ19FVkVYXzY2KDB4MGYzOCwg MHg1NSk6IC8qIHZwb3BjbnR7ZCxxfSBbeHl6XW1tL21lbSxbeHl6XW1te2t9ICovCisgICAgICAg IGhvc3RfYW5kX3ZjcHVfbXVzdF9oYXZlKGF2eDUxMl92cG9wY250ZHEpOworICAgICAgICBnb3Rv IGF2eDUxMmZfbm9fc2FlOworCiAgICAgY2FzZSBYODZFTVVMX09QQ19WRVhfNjYoMHgwZjM4LCAw eDU4KTogLyogdnBicm9hZGNhc3RkIHhtbS9tMzIse3gseX1tbSAqLwogICAgIGNhc2UgWDg2RU1V TF9PUENfVkVYXzY2KDB4MGYzOCwgMHg1OSk6IC8qIHZwYnJvYWRjYXN0cSB4bW0vbTY0LHt4LHl9 bW0gKi8KICAgICBjYXNlIFg4NkVNVUxfT1BDX1ZFWF82NigweDBmMzgsIDB4NzgpOiAvKiB2cGJy b2FkY2FzdGIgeG1tL204LHt4LHl9bW0gKi8KLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9jcHVm ZWF0dXJlLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9jcHVmZWF0dXJlLmgKQEAgLTExMiw2 ICsxMTIsOCBAQAogLyogQ1BVSUQgbGV2ZWwgMHgwMDAwMDAwNzowLmVjeCAqLwogI2RlZmluZSBj cHVfaGFzX2F2eDUxMl92Ym1pICAgICBib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfQVZYNTEyX1ZC TUkpCiAjZGVmaW5lIGNwdV9oYXNfYXZ4NTEyX3ZibWkyICAgIGJvb3RfY3B1X2hhcyhYODZfRkVB VFVSRV9BVlg1MTJfVkJNSTIpCisjZGVmaW5lIGNwdV9oYXNfYXZ4NTEyX2JpdGFsZyAgIGJvb3Rf Y3B1X2hhcyhYODZfRkVBVFVSRV9BVlg1MTJfQklUQUxHKQorI2RlZmluZSBjcHVfaGFzX2F2eDUx Ml92cG9wY250ZHEgYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX0FWWDUxMl9WUE9QQ05URFEpCiAK IC8qIENQVUlEIGxldmVsIDB4ODAwMDAwMDcuZWR4ICovCiAjZGVmaW5lIGNwdV9oYXNfaXRzYyAg ICAgICAgICAgIGJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9JVFNDKQotLS0gYS94ZW4vaW5jbHVk ZS9wdWJsaWMvYXJjaC14ODYvY3B1ZmVhdHVyZXNldC5oCisrKyBiL3hlbi9pbmNsdWRlL3B1Ymxp Yy9hcmNoLXg4Ni9jcHVmZWF0dXJlc2V0LmgKQEAgLTIyOSw2ICsyMjksNyBAQCBYRU5fQ1BVRkVB VFVSRShVTUlQLCAgICAgICAgICA2KjMyKyAyKSAvCiBYRU5fQ1BVRkVBVFVSRShQS1UsICAgICAg ICAgICA2KjMyKyAzKSAvKkggIFByb3RlY3Rpb24gS2V5cyBmb3IgVXNlcnNwYWNlICovCiBYRU5f Q1BVRkVBVFVSRShPU1BLRSwgICAgICAgICA2KjMyKyA0KSAvKiEgIE9TIFByb3RlY3Rpb24gS2V5 cyBFbmFibGUgKi8KIFhFTl9DUFVGRUFUVVJFKEFWWDUxMl9WQk1JMiwgIDYqMzIrIDYpIC8qQSAg QWRkaXRpb25hbCBBVlgtNTEyIFZlY3RvciBCeXRlIE1hbmlwdWxhdGlvbiBJbnN0cnMgKi8KK1hF Tl9DUFVGRUFUVVJFKEFWWDUxMl9CSVRBTEcsIDYqMzIrMTIpIC8qQSAgU3VwcG9ydCBmb3IgVlBP UENOVFtCLFddIGFuZCBWUFNIVUZCSVRRTUIgKi8KIFhFTl9DUFVGRUFUVVJFKEFWWDUxMl9WUE9Q Q05URFEsIDYqMzIrMTQpIC8qQSAgUE9QQ05UIGZvciB2ZWN0b3JzIG9mIERXL1FXICovCiBYRU5f Q1BVRkVBVFVSRShSRFBJRCwgICAgICAgICA2KjMyKzIyKSAvKkEgIFJEUElEIGluc3RydWN0aW9u ICovCiAKLS0tIGEveGVuL3Rvb2xzL2dlbi1jcHVpZC5weQorKysgYi94ZW4vdG9vbHMvZ2VuLWNw dWlkLnB5CkBAIC0yNjksNyArMjY5LDcgQEAgZGVmIGNydW5jaF9udW1iZXJzKHN0YXRlKToKICAg ICAgICAgIyBBVlg1MTIgZXh0ZW5zaW9ucyBhY3RpbmcgKHNvbGVseSkgb24gdmVjdG9ycyBvZiBi eXRlcy93b3JkcyBhcmUgbWFkZQogICAgICAgICAjIGRlcGVuZGVudHMgb2YgQVZYNTEyQlcgKGFz IHRvIHJlcXVpcmluZyB3aWRlciB0aGFuIDE2LWJpdCBtYXNrCiAgICAgICAgICMgcmVnaXN0ZXJz KSwgZGVzcGl0ZSB0aGUgU0RNIG5vdCBmb3JtYWxseSBtYWtpbmcgdGhpcyBjb25uZWN0aW9uLgot ICAgICAgICBBVlg1MTJCVzogW0FWWDUxMl9WQk1JLCBBVlg1MTJfVkJNSTJdLAorICAgICAgICBB Vlg1MTJCVzogW0FWWDUxMl9WQk1JLCBBVlg1MTJfQklUQUxHLCBBVlg1MTJfVkJNSTJdLAogCiAg ICAgICAgICMgVGhlIGZlYXR1cmVzOgogICAgICAgICAjICAgKiBTaW5nbGUgVGhyZWFkIEluZGly ZWN0IEJyYW5jaCBQcmVkaWN0b3JzCgoKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54 ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGlu Zm8veGVuLWRldmVs