From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: [PATCH v8 22/50] x86emul: support AVX512DQ packed quad-int/FP conversion insns Date: Fri, 15 Mar 2019 04:52:30 -0600 Message-ID: <5C8B83EE020000780021F20B@prv1-mh.provo.novell.com> References: <5B6BF83602000078001DC548@prv1-mh.provo.novell.com> <5C8B7EC0020000780021F10B@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 1h4kS0-0006aM-Qr for xen-devel@lists.xenproject.org; Fri, 15 Mar 2019 10:52:32 +0000 In-Reply-To: <5C8B7EC0020000780021F10B@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 VkNWVHssVH1QUzJRUSwgc2hhcmluZyB0aGVpciBtYWluIG9wY29kZXMgd2l0aCBvdGhlcnMsIG9u Y2UgYWdhaW4gbmVlZAoibWFudWFsIiBvdmVycmlkZXMgb2YgZGlzcDhzY2FsZS4KCldoaWxlIG5v dCBkaXJlY3RseSByZWxhdGVkIGhlcmUsIGFsc28gYWRkIGEgc2NhbGFyIHZhcmlhbnQgb2YgdG9f d2ludCgpCnRvIHRoZSB0ZXN0IGhhcm5lc3MuCgpTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8 amJldWxpY2hAc3VzZS5jb20+Ci0tLQp2NzogUmUtYmFzZS4KdjY6IFdvcmthcm91bmQgZm9yIGdj YyA3IHF1aXJrLgp2NTogUmUtYmFzZSBvdmVyIGNoYW5nZXMgZWFybGllciBpbiB0aGUgc2VyaWVz Lgp2NDogTmV3LgoKLS0tIGEvdG9vbHMvdGVzdHMveDg2X2VtdWxhdG9yL2V2ZXgtZGlzcDguYwor KysgYi90b29scy90ZXN0cy94ODZfZW11bGF0b3IvZXZleC1kaXNwOC5jCkBAIC00MTAsOCArNDEw LDEyIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgdGVzdCBhdng1MTJkcV9hbGxbXQogICAgIElOU05f UEZQKGFuZCwgICAgICAgICAgICAgIDBmLCA1NCksCiAgICAgSU5TTl9QRlAoYW5kbiwgICAgICAg ICAgICAgMGYsIDU1KSwKICAgICBJTlNOKGJyb2FkY2FzdGkzMngyLCA2NiwgMGYzOCwgNTksIGVs XzIsICBkLCB2bCksCisgICAgSU5TTihjdnRwZDJxcSwgICAgICAgNjYsICAgMGYsIDdiLCAgIHZs LCAgcSwgdmwpLAorICAgIElOU04oY3Z0cHMycXEsICAgICAgIDY2LCAgIDBmLCA3YiwgdmxfMiwg IGQsIHZsKSwKICAgICBJTlNOKGN2dHFxMnBkLCAgICAgICBmMywgICAwZiwgZTYsICAgdmwsICBx LCB2bCksCiAgICAgSU5TTihjdnRxcTJwcywgICAgICAgICAsICAgMGYsIDViLCAgIHZsLCAgcSwg dmwpLAorICAgIElOU04oY3Z0dHBkMnFxLCAgICAgIDY2LCAgIDBmLCA3YSwgICB2bCwgIHEsIHZs KSwKKyAgICBJTlNOKGN2dHRwczJxcSwgICAgICA2NiwgICAwZiwgN2EsIHZsXzIsICBkLCB2bCks CiAgICAgSU5TTl9QRlAob3IsICAgICAgICAgICAgICAgMGYsIDU2KSwKIC8vICAgICAgIHBtb3Zk Mm0sICAgICAgICBmMywgMGYzOCwgMzksICAgICAgICBkCiAvLyAgICAgICBwbW92bTIsICAgICAg ICAgZjMsIDBmMzgsIDM4LCAgICAgICBkcQotLS0gYS90b29scy90ZXN0cy94ODZfZW11bGF0b3Iv c2ltZC5jCisrKyBiL3Rvb2xzL3Rlc3RzL3g4Nl9lbXVsYXRvci9zaW1kLmMKQEAgLTkwLDE0ICs5 MCwzNSBAQCBzdGF0aWMgaW5saW5lIGJvb2wgX3RvX2Jvb2woYnl0ZV92ZWNfdCBiCiAKICNpZiBW RUNfU0laRSA9PSBGTE9BVF9TSVpFCiAjIGRlZmluZSB0b19pbnQoeCkgKHsgaW50IGlfID0gKHgp WzBdOyB0b3VjaChpXyk7ICgodmVjX3QpeyBpXyB9KTsgfSkKKyMgaWZkZWYgX194ODZfNjRfXwor IyAgZGVmaW5lIHRvX3dpbnQoeCkgKHsgbG9uZyBsXyA9ICh4KVswXTsgdG91Y2gobF8pOyAoKHZl Y190KXsgbF8gfSk7IH0pCisjIGVuZGlmCiAjZWxpZiBWRUNfU0laRSA9PSA4ICYmIEZMT0FUX1NJ WkUgPT0gNCAmJiBkZWZpbmVkKF9fM2ROT1dfXykKICMgZGVmaW5lIHRvX2ludCh4KSBfX2J1aWx0 aW5faWEzMl9waTJmZChfX2J1aWx0aW5faWEzMl9wZjJpZCh4KSkKICNlbGlmIGRlZmluZWQoRkxP QVRfU0laRSkgJiYgVkVDX1NJWkUgPiBGTE9BVF9TSVpFICYmIGRlZmluZWQoX19BVlg1MTJGX18p ICYmIFwKICAgICAgIChWRUNfU0laRSA9PSA2NCB8fCBkZWZpbmVkKF9fQVZYNTEyVkxfXykpCiAj IGlmIEZMT0FUX1NJWkUgPT0gNAogIyAgZGVmaW5lIHRvX2ludCh4KSBCUihjdnRkcTJwcywgX21h c2ssIEJSKGN2dHBzMmRxLCBfbWFzaywgeCwgKHZzaV90KXVuZGVmKCksIH4wKSwgdW5kZWYoKSwg fjApCisjICBpZmRlZiBfX0FWWDUxMkRRX18KKyMgICBkZWZpbmUgdG9fd2ludCh4KSAoeyBcCisg ICAgdnNmX2hhbGZfdCB0XyA9IGxvd19oYWxmKHgpOyBcCisgICAgdmRpX3QgbG9fLCBoaV87IFwK KyAgICB0b3VjaCh0Xyk7IFwKKyAgICBsb18gPSBCUihjdnRwczJxcSwgX21hc2ssIHRfLCAodmRp X3QpdW5kZWYoKSwgfjApOyBcCisgICAgdF8gPSBoaWdoX2hhbGYoeCk7IFwKKyAgICB0b3VjaCh0 Xyk7IFwKKyAgICBoaV8gPSBCUihjdnRwczJxcSwgX21hc2ssIHRfLCAodmRpX3QpdW5kZWYoKSwg fjApOyBcCisgICAgdG91Y2gobG9fKTsgdG91Y2goaGlfKTsgXAorICAgIGluc2VydF9oYWxmKGlu c2VydF9oYWxmKHVuZGVmKCksIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBCUihjdnRx cTJwcywgX21hc2ssIGxvXywgKHZzZl9oYWxmX3Qpe30sIH4wKSwgMCksIFwKKyAgICAgICAgICAg ICAgICBCUihjdnRxcTJwcywgX21hc2ssIGhpXywgKHZzZl9oYWxmX3Qpe30sIH4wKSwgMSk7IFwK K30pCisjICBlbmRpZgogIyBlbGlmIEZMT0FUX1NJWkUgPT0gOAogIyAgZGVmaW5lIHRvX2ludCh4 KSBCKGN2dGRxMnBkLCBfbWFzaywgQlIoY3Z0cGQyZHEsIF9tYXNrLCB4LCAodnNpX2hhbGZfdCl7 fSwgfjApLCB1bmRlZigpLCB+MCkKKyMgIGlmZGVmIF9fQVZYNTEyRFFfXworIyAgIGRlZmluZSB0 b193aW50KHgpIEJSKGN2dHFxMnBkLCBfbWFzaywgQlIoY3Z0cGQycXEsIF9tYXNrLCB4LCAodmRp X3QpdW5kZWYoKSwgfjApLCB1bmRlZigpLCB+MCkKKyMgIGVuZGlmCiAjIGVuZGlmCiAjZWxpZiBW RUNfU0laRSA9PSAxNiAmJiBkZWZpbmVkKF9fU1NFMl9fKQogIyBpZiBGTE9BVF9TSVpFID09IDQK QEAgLTEyMSw2ICsxNDIsMjEgQEAgc3RhdGljIGlubGluZSBib29sIF90b19ib29sKGJ5dGVfdmVj X3QgYgogfSkKICNlbmRpZgogCisjaWYgVkVDX1NJWkUgPT0gMTYgJiYgRkxPQVRfU0laRSA9PSA0 ICYmIGRlZmluZWQoX19TU0VfXykKKyMgZGVmaW5lIGxvd19oYWxmKHgpICh4KQorIyBkZWZpbmUg aGlnaF9oYWxmKHgpIEJfKG1vdmhscHMsICwgdW5kZWYoKSwgeCkKKy8qCisgKiBHQ0MgNyAoYW5k IHBlcmhhcHMgZWFybGllcikgcmVwb3J0IGEgYm9ndXMgdHlwZSBtaXNtYXRjaCBmb3IgdGhlIGNv bmRpdGlvbmFsCisgKiBleHByZXNzaW9uIGJlbG93LiBBbGwgd29ya3Mgd2VsbCB3aXRoIHRoaXMg bm8tb3Agd3JhcHBlci4KKyAqLworc3RhdGljIGlubGluZSB2ZWNfdCBtb3ZsaHBzKHZlY190IHgs IHZlY190IHkpIHsKKyAgICByZXR1cm4gX19idWlsdGluX2lhMzJfbW92bGhwcyh4LCB5KTsKK30K KyMgZGVmaW5lIGluc2VydF9wYWlyKHgsIHksIHApIFwKKyAgICAoKHApID8gbW92bGhwcyh4LCB5 KSBcCisgICAgICAgICA6ICh7IHZlY190IHRfID0gKHgpOyB0X1swXSA9ICh5KVswXTsgdF9bMV0g PSAoeSlbMV07IHRfOyB9KSkKKyNlbmRpZgorCiAjaWYgVkVDX1NJWkUgPT0gOCAmJiBGTE9BVF9T SVpFID09IDQgJiYgZGVmaW5lZChfXzNkTk9XX0FfXykKICMgZGVmaW5lIG1heCBfX2J1aWx0aW5f aWEzMl9wZm1heAogIyBkZWZpbmUgbWluIF9fYnVpbHRpbl9pYTMyX3BmbWluCkBAIC0xNDksMTMg KzE4NSwxNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wgX3RvX2Jvb2woYnl0ZV92ZWNfdCBiCiAjIGlm IEVMRU1fQ09VTlQgPT0gOCAvKiB2ZXh0cmFjdGZ7MzIsNjR9eDQgKi8gfHwgXAogICAgICAoRUxF TV9DT1VOVCA9PSAxNiAmJiBFTEVNX1NJWkUgPT0gNCAmJiBkZWZpbmVkKF9fQVZYNTEyRFFfXykp IC8qIHZleHRyYWN0ZjMyeDggKi8gfHwgXAogICAgICAoRUxFTV9DT1VOVCA9PSA0ICYmIEVMRU1f U0laRSA9PSA4ICYmIGRlZmluZWQoX19BVlg1MTJEUV9fKSkgLyogdmV4dHJhY3RmNjR4MiAqLwot IyAgZGVmaW5lIGxvd19oYWxmKHgpICh7IFwKKyMgIGRlZmluZSBfaGFsZih4LCBsaCkgKHsgXAog ICAgIGhhbGZfdCB0XzsgXAotICAgIGFzbSAoICJ2ZXh0cmFjdGYlY1t3XXglY1tuXSAkMCwgJVtz XSwgJVtkXSIgXAorICAgIGFzbSAoICJ2ZXh0cmFjdGYlY1t3XXglY1tuXSAlW3NlbF0sICVbc10s ICVbZF0iIFwKICAgICAgICAgICA6IFtkXSAiPW0iICh0XykgXAotICAgICAgICAgIDogW3NdICJ2 IiAoeCksIFt3XSAiaSIgKEVMRU1fU0laRSAqIDgpLCBbbl0gImkiIChFTEVNX0NPVU5UIC8gMikg KTsgXAorICAgICAgICAgIDogW3NdICJ2IiAoeCksIFtzZWxdICJpIiAobGgpLCBcCisgICAgICAg ICAgICBbd10gImkiIChFTEVNX1NJWkUgKiA4KSwgW25dICJpIiAoRUxFTV9DT1VOVCAvIDIpICk7 IFwKICAgICB0XzsgXAogfSkKKyMgIGRlZmluZSBsb3dfaGFsZih4KSAgX2hhbGYoeCwgMCkKKyMg IGRlZmluZSBoaWdoX2hhbGYoeCkgX2hhbGYoeCwgMSkKICMgZW5kaWYKICMgaWYgKEVMRU1fQ09V TlQgPT0gMTYgJiYgRUxFTV9TSVpFID09IDQpIC8qIHZleHRyYWN0ZjMyeDQgKi8gfHwgXAogICAg ICAoRUxFTV9DT1VOVCA9PSA4ICYmIEVMRU1fU0laRSA9PSA4ICYmIGRlZmluZWQoX19BVlg1MTJE UV9fKSkgLyogdmV4dHJhY3RmNjR4MiAqLwpAQCAtMTE3Niw2ICsxMjE1LDEzIEBAIGludCBzaW1k X3Rlc3Qodm9pZCkKIAogIyBlbmRpZgogCisjIGlmZGVmIHRvX3dpbnQKKyAgICB0b3VjaChzcmMp OworICAgIHggPSB0b193aW50KHNyYyk7CisgICAgdG91Y2goc3JjKTsKKyAgICBpZiAoICFlcSh4 LCBzcmMpICkgcmV0dXJuIF9fTElORV9fOworIyBlbmRpZgorCiAjIGlmZGVmIHNxcnQKICAgICB4 ID0gc3JjICogc3JjOwogICAgIHRvdWNoKHgpOwotLS0gYS94ZW4vYXJjaC94ODYveDg2X2VtdWxh dGUveDg2X2VtdWxhdGUuYworKysgYi94ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUveDg2X2VtdWxh dGUuYwpAQCAtMzI1LDYgKzMyNSw4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgdHdvYnl0ZV90YWJs ZSB7CiAgICAgWzB4NzddID0geyBEc3RJbXBsaWNpdHxTcmNOb25lIH0sCiAgICAgWzB4NzhdID0g eyBJbXBsaWNpdE9wc3xNb2RSTSB9LAogICAgIFsweDc5XSA9IHsgRHN0UmVnfFNyY01lbXxNb2RS TSwgc2ltZF9wYWNrZWRfaW50IH0sCisgICAgWzB4N2FdID0geyBEc3RJbXBsaWNpdHxTcmNNZW18 TW9kUk18TW92LCBzaW1kX3BhY2tlZF9mcCwgZDhzX3ZsIH0sCisgICAgWzB4N2JdID0geyBEc3RJ bXBsaWNpdHxTcmNNZW18TW9kUk18TW92LCBzaW1kX290aGVyLCBkOHNfdmwgfSwKICAgICBbMHg3 YyAuLi4gMHg3ZF0gPSB7IERzdEltcGxpY2l0fFNyY01lbXxNb2RSTSwgc2ltZF9vdGhlciB9LAog ICAgIFsweDdlXSA9IHsgRHN0TWVtfFNyY0ltcGxpY2l0fE1vZFJNfE1vdiwgc2ltZF9ub25lLCBk OHNfZHE2NCB9LAogICAgIFsweDdmXSA9IHsgRHN0TWVtfFNyY0ltcGxpY2l0fE1vZFJNfE1vdiwg c2ltZF9wYWNrZWRfaW50LCBkOHNfdmwgfSwKQEAgLTMwODMsNiArMzA4NSwxMiBAQCB4ODZfZGVj b2RlKAogICAgICAgICAgICAgICAgICAgICAtLWRpc3A4c2NhbGU7CiAgICAgICAgICAgICAgICAg YnJlYWs7CiAKKyAgICAgICAgICAgIGNhc2UgMHg3YTogLyogdmN2dHRwczJxcSBuZWVkcyBzcGVj aWFsIGNhc2luZyAqLworICAgICAgICAgICAgY2FzZSAweDdiOiAvKiB2Y3Z0cHMycXEgbmVlZHMg c3BlY2lhbCBjYXNpbmcgKi8KKyAgICAgICAgICAgICAgICBpZiAoIGRpc3A4c2NhbGUgJiYgZXZl eC5wZnggPT0gdmV4XzY2ICYmICFldmV4LncgJiYgIWV2ZXguYnJzICkKKyAgICAgICAgICAgICAg ICAgICAgLS1kaXNwOHNjYWxlOworICAgICAgICAgICAgICAgIGJyZWFrOworCiAgICAgICAgICAg ICBjYXNlIDB4N2U6IC8qIHZtb3ZxIHhtbS9tNjQseG1tIG5lZWRzIHNwZWNpYWwgY2FzaW5nICov CiAgICAgICAgICAgICAgICAgaWYgKCBkaXNwOHNjYWxlID09IDIgJiYgZXZleC5wZnggPT0gdmV4 X2YzICkKICAgICAgICAgICAgICAgICAgICAgZGlzcDhzY2FsZSA9IDM7CkBAIC03MzU1LDcgKzcz NjMsMTMgQEAgeDg2X2VtdWxhdGUoCiAgICAgICAgIGlmICggZXZleC5wZnggIT0gdmV4X2YzICkK ICAgICAgICAgICAgIGhvc3RfYW5kX3ZjcHVfbXVzdF9oYXZlKGF2eDUxMmYpOwogICAgICAgICBl bHNlIGlmICggZXZleC53ICkKKyAgICAgICAgeworICAgIGNhc2UgWDg2RU1VTF9PUENfRVZFWF82 NigweDBmLCAweDdhKTogICAvKiB2Y3Z0dHBzMnFxIHt4LHl9bW0vbWVtLFt4eXpdbW17a30gKi8K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdmN2dHRwZDJx cSBbeHl6XW1tL21lbSxbeHl6XW1te2t9ICovCisgICAgY2FzZSBYODZFTVVMX09QQ19FVkVYXzY2 KDB4MGYsIDB4N2IpOiAgIC8qIHZjdnRwczJxcSB7eCx5fW1tL21lbSxbeHl6XW1te2t9ICovCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHZjdnRwZDJxcSBb eHl6XW1tL21lbSxbeHl6XW1te2t9ICovCiAgICAgICAgICAgICBob3N0X2FuZF92Y3B1X211c3Rf aGF2ZShhdng1MTJkcSk7CisgICAgICAgIH0KICAgICAgICAgZWxzZQogICAgICAgICB7CiAgICAg ICAgICAgICBob3N0X2FuZF92Y3B1X211c3RfaGF2ZShhdng1MTJmKTsKCgoKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxp c3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVj dC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=