From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: [PATCH v7 45/49] x86emul: support VPCLMULQDQ insns Date: Wed, 19 Dec 2018 08:06:38 -0700 Message-ID: <5C1A5E7E0200007800207AA3@prv1-mh.provo.novell.com> References: <5B6BF83602000078001DC548@prv1-mh.provo.novell.com> <5C1A52ED0200007800207865@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 1gZdQp-0000qR-2N for xen-devel@lists.xenproject.org; Wed, 19 Dec 2018 15:06:43 +0000 In-Reply-To: <5C1A52ED0200007800207865@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 QXMgdG8gdGhlIGZlYXR1cmUgZGVwZW5kZW5jeSBhZGp1c3RtZW50LCB3aGlsZSBzdHJpY3RseSBz cGVha2luZyBBVlggaXMKYSBzdWZmaWNpZW50IHByZXJlcSAodG8gaGF2ZSBZTU0gcmVnaXN0ZXJz KSwgMjU2LWJpdCB2ZWN0b3JzIG9mIGludGVnZXJzCmhhdmUgZ290IGZ1bGx5IGludHJvZHVjZWQg d2l0aCBBVlgyIG9ubHkuIFNhZGx5IGdjYyBjYW4ndCBiZSB1c2VkIGFzIGEKcmVmZXJlbmNlIGhl cmU6IFRoZXkgZG9uJ3QgcHJvdmlkZSBhbnkgQVZYNTEyLWluZGVwZW5kZW50IGJ1aWx0LWluIGF0 CmFsbC4KCkFsb25nIHRoZSBsaW5lcyBvZiBQQ0xNVUxRRFEsIHNpbmNlIHRoZSBpbnNucyBoZXJl IGFuZCBpbiBwYXJ0aWN1bGFyCnRoZWlyIG1lbW9yeSBhY2Nlc3MgcGF0dGVybnMgZm9sbG93IHRo ZSB1c3VhbCBzY2hlbWUsIEkgZGlkbid0IHRoaW5rIGl0CndhcyBuZWNlc3NhcnkgdG8gYWRkIGEg Y29udHJpdmVkIHRlc3Qgc3BlY2lmaWNhbGx5IGZvciB0aGVtLCBiZXlvbmQgdGhlCkRpc3A4IHNj YWxpbmcgb25lLgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29t PgotLS0Kdjc6IE5ldy4KCi0tLSBhL3Rvb2xzL3Rlc3RzL3g4Nl9lbXVsYXRvci9ldmV4LWRpc3A4 LmMKKysrIGIvdG9vbHMvdGVzdHMveDg2X2VtdWxhdG9yL2V2ZXgtZGlzcDguYwpAQCAtNTkxLDYg KzU5MSwxMCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHRlc3QgYXZ4NTEyX3Zwb3BjbnRkCiAgICAg SU5TTihwb3BjbnQsIDY2LCAwZjM4LCA1NSwgdmwsIGRxLCB2bCkKIH07CiAKK3N0YXRpYyBjb25z dCBzdHJ1Y3QgdGVzdCB2cGNsbXVscWRxX2FsbFtdID0geworICAgIElOU04ocGNsbXVscWRxLCA2 NiwgMGYzYSwgNDQsIHZsLCBxX25iLCB2bCkKK307CisKIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj aGFyIHZsX2FsbFtdID0geyBWTF81MTIsIFZMXzEyOCwgVkxfMjU2IH07CiBzdGF0aWMgY29uc3Qg dW5zaWduZWQgY2hhciB2bF8xMjhbXSA9IHsgVkxfMTI4IH07CiBzdGF0aWMgY29uc3QgdW5zaWdu ZWQgY2hhciB2bF9ubzEyOFtdID0geyBWTF81MTIsIFZMXzI1NiB9OwpAQCAtOTY4LDQgKzk3Miw5 IEBAIHZvaWQgZXZleF9kaXNwOF90ZXN0KHZvaWQgKmluc3RyLCBzdHJ1Y3QKICAgICBSVU4oYXZ4 NTEyX3ZibWkyLCBhbGwpOwogICAgIFJVTihhdng1MTJfdm5uaSwgYWxsKTsKICAgICBSVU4oYXZ4 NTEyX3Zwb3BjbnRkcSwgYWxsKTsKKworICAgIGlmICggY3B1X2hhc19hdng1MTJmICkKKyAgICB7 CisgICAgICAgIFJVTih2cGNsbXVscWRxLCBhbGwpOworICAgIH0KIH0KLS0tIGEvdG9vbHMvdGVz dHMveDg2X2VtdWxhdG9yL3g4Ni1lbXVsYXRlLmgKKysrIGIvdG9vbHMvdGVzdHMveDg2X2VtdWxh dG9yL3g4Ni1lbXVsYXRlLmgKQEAgLTE0NCw2ICsxNDQsNyBAQCBzdGF0aWMgaW5saW5lIGJvb2wg eGNyMF9tYXNrKHVpbnQ2NF90IG1hCiAjZGVmaW5lIGNwdV9oYXNfYXZ4NTEydmwgIChjcC5mZWF0 LmF2eDUxMnZsICYmIHhjcjBfbWFzaygweGU2KSkKICNkZWZpbmUgY3B1X2hhc19hdng1MTJfdmJt aSAoY3AuZmVhdC5hdng1MTJfdmJtaSAmJiB4Y3IwX21hc2soMHhlNikpCiAjZGVmaW5lIGNwdV9o YXNfYXZ4NTEyX3ZibWkyIChjcC5mZWF0LmF2eDUxMl92Ym1pMiAmJiB4Y3IwX21hc2soMHhlNikp CisjZGVmaW5lIGNwdV9oYXNfdnBjbG11bHFkcSAoY3AuZmVhdC52cGNsbXVscWRxICYmIHhjcjBf bWFzayg2KSkKICNkZWZpbmUgY3B1X2hhc19hdng1MTJfdm5uaSAoY3AuZmVhdC5hdng1MTJfdm5u aSAmJiB4Y3IwX21hc2soMHhlNikpCiAjZGVmaW5lIGNwdV9oYXNfYXZ4NTEyX2JpdGFsZyAoY3Au ZmVhdC5hdng1MTJfYml0YWxnICYmIHhjcjBfbWFzaygweGU2KSkKICNkZWZpbmUgY3B1X2hhc19h dng1MTJfdnBvcGNudGRxIChjcC5mZWF0LmF2eDUxMl92cG9wY250ZHEgJiYgeGNyMF9tYXNrKDB4 ZTYpKQotLS0gYS94ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUveDg2X2VtdWxhdGUuYworKysgYi94 ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUveDg2X2VtdWxhdGUuYwpAQCAtNTk0LDcgKzU5NCw3IEBA IHN0YXRpYyBjb25zdCBzdHJ1Y3QgZXh0MGYzYV90YWJsZSB7CiAgICAgWzB4M2UgLi4uIDB4M2Zd ID0geyAuc2ltZF9zaXplID0gc2ltZF9wYWNrZWRfaW50LCAuZDhzID0gZDhzX3ZsIH0sCiAgICAg WzB4NDAgLi4uIDB4NDFdID0geyAuc2ltZF9zaXplID0gc2ltZF9wYWNrZWRfZnAgfSwKICAgICBb MHg0MiAuLi4gMHg0M10gPSB7IC5zaW1kX3NpemUgPSBzaW1kX3BhY2tlZF9pbnQsIC5kOHMgPSBk OHNfdmwgfSwKLSAgICBbMHg0NF0gPSB7IC5zaW1kX3NpemUgPSBzaW1kX3BhY2tlZF9pbnQgfSwK KyAgICBbMHg0NF0gPSB7IC5zaW1kX3NpemUgPSBzaW1kX3BhY2tlZF9pbnQsIC5kOHMgPSBkOHNf dmwgfSwKICAgICBbMHg0Nl0gPSB7IC5zaW1kX3NpemUgPSBzaW1kX3BhY2tlZF9pbnQgfSwKICAg ICBbMHg0OCAuLi4gMHg0OV0gPSB7IC5zaW1kX3NpemUgPSBzaW1kX3BhY2tlZF9mcCwgLmZvdXJf b3AgPSAxIH0sCiAgICAgWzB4NGEgLi4uIDB4NGJdID0geyAuc2ltZF9zaXplID0gc2ltZF9wYWNr ZWRfZnAsIC5mb3VyX29wID0gMSB9LApAQCAtMTkyMiw2ICsxOTIyLDcgQEAgc3RhdGljIGJvb2wg dmNwdV9oYXMoCiAjZGVmaW5lIHZjcHVfaGFzX2F2eDUxMnZsKCkgICAgdmNwdV9oYXMoICAgICAg ICAgNywgRUJYLCAzMSwgY3R4dCwgb3BzKQogI2RlZmluZSB2Y3B1X2hhc19hdng1MTJfdmJtaSgp IHZjcHVfaGFzKCAgICAgICAgIDcsIEVDWCwgIDEsIGN0eHQsIG9wcykKICNkZWZpbmUgdmNwdV9o YXNfYXZ4NTEyX3ZibWkyKCkgdmNwdV9oYXMoICAgICAgICA3LCBFQ1gsICA2LCBjdHh0LCBvcHMp CisjZGVmaW5lIHZjcHVfaGFzX3ZwY2xtdWxxZHEoKSAgdmNwdV9oYXMoICAgICAgICAgNywgRUNY LCAxMCwgY3R4dCwgb3BzKQogI2RlZmluZSB2Y3B1X2hhc19hdng1MTJfdm5uaSgpIHZjcHVfaGFz KCAgICAgICAgIDcsIEVDWCwgMTEsIGN0eHQsIG9wcykKICNkZWZpbmUgdmNwdV9oYXNfYXZ4NTEy X2JpdGFsZygpIHZjcHVfaGFzKCAgICAgICA3LCBFQ1gsIDEyLCBjdHh0LCBvcHMpCiAjZGVmaW5l IHZjcHVfaGFzX2F2eDUxMl92cG9wY250ZHEoKSB2Y3B1X2hhcyggICAgNywgRUNYLCAxNCwgY3R4 dCwgb3BzKQpAQCAtMTAxOTQsMTMgKzEwMTk1LDIwIEBAIHg4Nl9lbXVsYXRlKAogICAgICAgICBn b3RvIG9wbWFza19zaGlmdF9pbW07CiAKICAgICBjYXNlIFg4NkVNVUxfT1BDXzY2KDB4MGYzYSwg MHg0NCk6ICAgICAvKiBwY2xtdWxxZHEgJGltbTgseG1tL20xMjgseG1tICovCi0gICAgY2FzZSBY ODZFTVVMX09QQ19WRVhfNjYoMHgwZjNhLCAweDQ0KTogLyogdnBjbG11bHFkcSAkaW1tOCx4bW0v bTEyOCx4bW0seG1tICovCisgICAgY2FzZSBYODZFTVVMX09QQ19WRVhfNjYoMHgwZjNhLCAweDQ0 KTogLyogdnBjbG11bHFkcSAkaW1tOCx7eCx5fW1tL21lbSx7eCx5fW1tLHt4LHl9bW0gKi8KICAg ICAgICAgaG9zdF9hbmRfdmNwdV9tdXN0X2hhdmUocGNsbXVscWRxKTsKICAgICAgICAgaWYgKCB2 ZXgub3BjeCA9PSB2ZXhfbm9uZSApCiAgICAgICAgICAgICBnb3RvIHNpbWRfMGYzYV9jb21tb247 Ci0gICAgICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZih2ZXgubCwgRVhDX1VEKTsKKyAgICAgICAg aWYgKCB2ZXgubCApCisgICAgICAgICAgICBob3N0X2FuZF92Y3B1X211c3RfaGF2ZSh2cGNsbXVs cWRxKTsKICAgICAgICAgZ290byBzaW1kXzBmX2ltbThfYXZ4OwogCisgICAgY2FzZSBYODZFTVVM X09QQ19FVkVYXzY2KDB4MGYzYSwgMHg0NCk6IC8qIHZwY2xtdWxxZHEgJGltbTgsW3h5el1tbS9t ZW0sW3h5el1tbSxbeHl6XW1tICovCisgICAgICAgIGhvc3RfYW5kX3ZjcHVfbXVzdF9oYXZlKHZw Y2xtdWxxZHEpOworICAgICAgICBnZW5lcmF0ZV9leGNlcHRpb25faWYoZXZleC5icnMgfHwgZXZl eC5vcG1zaywgRVhDX1VEKTsKKyAgICAgICAgZmF1bHRfc3VwcHJlc3Npb24gPSBmYWxzZTsKKyAg ICAgICAgZ290byBhdng1MTJmX2ltbThfbm9fc2FlOworCiAgICAgY2FzZSBYODZFTVVMX09QQ19W RVhfNjYoMHgwZjNhLCAweDRhKTogLyogdmJsZW5kdnBzIHt4LHl9bW0se3gseX1tbS9tZW0se3gs eX1tbSx7eCx5fW1tICovCiAgICAgY2FzZSBYODZFTVVMX09QQ19WRVhfNjYoMHgwZjNhLCAweDRi KTogLyogdmJsZW5kdnBkIHt4LHl9bW0se3gseX1tbS9tZW0se3gseX1tbSx7eCx5fW1tICovCiAg ICAgICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZih2ZXgudywgRVhDX1VEKTsKLS0tIGEveGVuL2lu Y2x1ZGUvYXNtLXg4Ni9jcHVmZWF0dXJlLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9jcHVm ZWF0dXJlLmgKQEAgLTExMyw2ICsxMTMsNyBAQAogLyogQ1BVSUQgbGV2ZWwgMHgwMDAwMDAwNzow LmVjeCAqLwogI2RlZmluZSBjcHVfaGFzX2F2eDUxMl92Ym1pICAgICBib290X2NwdV9oYXMoWDg2 X0ZFQVRVUkVfQVZYNTEyX1ZCTUkpCiAjZGVmaW5lIGNwdV9oYXNfYXZ4NTEyX3ZibWkyICAgIGJv b3RfY3B1X2hhcyhYODZfRkVBVFVSRV9BVlg1MTJfVkJNSTIpCisjZGVmaW5lIGNwdV9oYXNfdnBj bG11bHFkcSAgICAgIGJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9WUENMTVVMUURRKQogI2RlZmlu ZSBjcHVfaGFzX2F2eDUxMl92bm5pICAgICBib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfQVZYNTEy X1ZOTkkpCiAjZGVmaW5lIGNwdV9oYXNfYXZ4NTEyX2JpdGFsZyAgIGJvb3RfY3B1X2hhcyhYODZf RkVBVFVSRV9BVlg1MTJfQklUQUxHKQogI2RlZmluZSBjcHVfaGFzX2F2eDUxMl92cG9wY250ZHEg Ym9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX0FWWDUxMl9WUE9QQ05URFEpCi0tLSBhL3hlbi9pbmNs dWRlL3B1YmxpYy9hcmNoLXg4Ni9jcHVmZWF0dXJlc2V0LmgKKysrIGIveGVuL2luY2x1ZGUvcHVi bGljL2FyY2gteDg2L2NwdWZlYXR1cmVzZXQuaApAQCAtMTIxLDcgKzEyMSw3IEBAIFhFTl9DUFVG RUFUVVJFKFBCRSwgICAgICAgICAgIDAqMzIrMzEpIC8KIAogLyogSW50ZWwtZGVmaW5lZCBDUFUg ZmVhdHVyZXMsIENQVUlEIGxldmVsIDB4MDAwMDAwMDEuZWN4LCB3b3JkIDEgKi8KIFhFTl9DUFVG RUFUVVJFKFNTRTMsICAgICAgICAgIDEqMzIrIDApIC8qQSAgU3RyZWFtaW5nIFNJTUQgRXh0ZW5z aW9ucy0zICovCi1YRU5fQ1BVRkVBVFVSRShQQ0xNVUxRRFEsICAgICAxKjMyKyAxKSAvKkEgIENh cnJ5LWxlc3MgbXVsaXRwbGljYXRpb24gKi8KK1hFTl9DUFVGRUFUVVJFKFBDTE1VTFFEUSwgICAg IDEqMzIrIDEpIC8qQSAgQ2FycnktbGVzcyBtdWx0aXBsaWNhdGlvbiAqLwogWEVOX0NQVUZFQVRV UkUoRFRFUzY0LCAgICAgICAgMSozMisgMikgLyogICA2NC1iaXQgRGVidWcgU3RvcmUgKi8KIFhF Tl9DUFVGRUFUVVJFKE1PTklUT1IsICAgICAgIDEqMzIrIDMpIC8qICAgTW9uaXRvci9Nd2FpdCBz dXBwb3J0ICovCiBYRU5fQ1BVRkVBVFVSRShEU0NQTCwgICAgICAgICAxKjMyKyA0KSAvKiAgIENQ TCBRdWFsaWZpZWQgRGVidWcgU3RvcmUgKi8KQEAgLTIyOSw2ICsyMjksNyBAQCBYRU5fQ1BVRkVB VFVSRShVTUlQLCAgICAgICAgICA2KjMyKyAyKSAvCiBYRU5fQ1BVRkVBVFVSRShQS1UsICAgICAg ICAgICA2KjMyKyAzKSAvKkggIFByb3RlY3Rpb24gS2V5cyBmb3IgVXNlcnNwYWNlICovCiBYRU5f Q1BVRkVBVFVSRShPU1BLRSwgICAgICAgICA2KjMyKyA0KSAvKiEgIE9TIFByb3RlY3Rpb24gS2V5 cyBFbmFibGUgKi8KIFhFTl9DUFVGRUFUVVJFKEFWWDUxMl9WQk1JMiwgIDYqMzIrIDYpIC8qQSAg QWRkaXRpb25hbCBBVlgtNTEyIFZlY3RvciBCeXRlIE1hbmlwdWxhdGlvbiBJbnN0cnMgKi8KK1hF Tl9DUFVGRUFUVVJFKFZQQ0xNVUxRRFEsICAgIDYqMzIrMTApIC8qQSAgVmVjdG9yIENhcnJ5LWxl c3MgTXVsdGlwbGljYXRpb24gSW5zdHJzICovCiBYRU5fQ1BVRkVBVFVSRShBVlg1MTJfVk5OSSwg ICA2KjMyKzExKSAvKkEgIFZlY3RvciBOZXVyYWwgTmV0d29yayBJbnN0cnMgKi8KIFhFTl9DUFVG RUFUVVJFKEFWWDUxMl9CSVRBTEcsIDYqMzIrMTIpIC8qQSAgU3VwcG9ydCBmb3IgVlBPUENOVFtC LFddIGFuZCBWUFNIVUZCSVRRTUIgKi8KIFhFTl9DUFVGRUFUVVJFKEFWWDUxMl9WUE9QQ05URFEs IDYqMzIrMTQpIC8qQSAgUE9QQ05UIGZvciB2ZWN0b3JzIG9mIERXL1FXICovCi0tLSBhL3hlbi90 b29scy9nZW4tY3B1aWQucHkKKysrIGIveGVuL3Rvb2xzL2dlbi1jcHVpZC5weQpAQCAtMjU1LDgg KzI1NSw5IEBAIGRlZiBjcnVuY2hfbnVtYmVycyhzdGF0ZSk6CiAKICAgICAgICAgIyBUaGlzIGlz IGp1c3QgdGhlIGRlcGVuZGVuY3kgYmV0d2VlbiBBVlg1MTIgYW5kIEFWWDIgb2YgWFNUQVRFCiAg ICAgICAgICMgZmVhdHVyZSBmbGFncy4gIElmIHdhbnQgdG8gdXNlIEFWWDUxMiwgQVZYMiBtdXN0 IGJlIHN1cHBvcnRlZCBhbmQKLSAgICAgICAgIyBlbmFibGVkLgotICAgICAgICBBVlgyOiBbQVZY NTEyRl0sCisgICAgICAgICMgZW5hYmxlZC4gIENlcnRhaW4gbGF0ZXIgZXh0ZW5zaW9ucywgYWN0 aW5nIG9uIDI1Ni1iaXQgdmVjdG9ycyBvZgorICAgICAgICAjIGludGVnZXJzLCBiZXR0ZXIgZGVw ZW5kIG9uIEFWWDIgdGhhbiBBVlguCisgICAgICAgIEFWWDI6IFtBVlg1MTJGLCBWUENMTVVMUURR XSwKIAogICAgICAgICAjIEFWWDUxMkYgaXMgdGFrZW4gdG8gbWVhbiBoYXJkd2FyZSBzdXBwb3J0 IGZvciA1MTJiaXQgcmVnaXN0ZXJzCiAgICAgICAgICMgKHdoaWNoIGluIHByYWN0aWNlIGRlcGVu ZHMgb24gdGhlIEVWRVggcHJlZml4IHRvIGVuY29kZSkgYXMgd2VsbAoKCgoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlz dApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0 Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==