From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: [PATCH v7 21/49] x86emul: support AVX512F legacy-equivalent packed int/FP conversion insns Date: Wed, 19 Dec 2018 07:48:57 -0700 Message-ID: <5C1A5A590200007800207955@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 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 1gZd9h-0004nb-VT for xen-devel@lists.xenproject.org; Wed, 19 Dec 2018 14:49:02 +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 Li4uIGluY2x1ZGluZyB0aGUgdHdvIEFWWDUxMkRRIGZvcm1zIHdoaWNoIHNoYXJlZCBlbmNvZGlu Z3MsIGp1c3Qgd2l0aApFVkVYLlcgc2V0IHRoZXJlLgoKVkNWVERRMlBELCBzaGFyaW5nIGl0cyBt YWluIG9wY29kZSB3aXRoIG90aGVycywgbmVlZHMgYSAibWFudWFsIgpvdmVycmlkZSBvZiBkaXNw OHNjYWxlLgoKVGhlIHNpbWRfc2l6ZSBjaGFuZ2VzIGZvciB0aGUgdHdvYnl0ZV90YWJsZVtdIGVu dHJpZXMgYXJlIGJlbmlnbiB0bwpwcmUtZXhpc3RpbmcgY29kZSwgYnV0IGFsbG93IGRlY29kZV9k aXNwOHNjYWxlKCkgdG8gd29yayBhcyBpcyBoZXJlLgoKVGhlIGF0IHRoaXMgcG9pbnQgd3Jvbmcg cGxhY2VtZW50IG9mIHRoZSAweGU2IGNhc2UgYmxvY2sgaXMgb25jZSBhZ2FpbgppbiBhbnRpY2lw YXRpb24gb2YgZnVydGhlciBhZGRpdGlvbnMgb2YgY2FzZSBsYWJlbHMuCgpTaWduZWQtb2ZmLWJ5 OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0tLQp2NzogZWEudHlwZSA9PSBPUF8q IC0+IGVhLnR5cGUgIT0gT1BfKi4gUmUtYmFzZS4KdjY6IFJlLWJhc2Ugb3ZlciBjaGFuZ2VzIGVh cmxpZXIgaW4gdGhlIHNlcmllcy4KdjQ6IE5ldy4KCi0tLSBhL3Rvb2xzL3Rlc3RzL3g4Nl9lbXVs YXRvci9ldmV4LWRpc3A4LmMKKysrIGIvdG9vbHMvdGVzdHMveDg2X2VtdWxhdG9yL2V2ZXgtZGlz cDguYwpAQCAtMTA5LDggKzEwOSwxMiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHRlc3QgYXZ4NTEy Zl9hbGxbXSA9CiAgICAgSU5TTl9GUChjbXAsICAgICAgICAgICAgIDBmLCBjMiksCiAgICAgSU5T Tihjb21pc2QsICAgICAgIDY2LCAgIDBmLCAyZiwgICAgZWwsICAgICAgcSwgZWwpLAogICAgIElO U04oY29taXNzLCAgICAgICAgICwgICAwZiwgMmYsICAgIGVsLCAgICAgIGQsIGVsKSwKKyAgICBJ TlNOKGN2dGRxMnBkLCAgICAgZjMsICAgMGYsIGU2LCAgICB2bF8yLCAgICBkLCB2bCksCisgICAg SU5TTihjdnRkcTJwcywgICAgICAgLCAgIDBmLCA1YiwgICAgdmwsICAgICAgZCwgdmwpLAorICAg IElOU04oY3Z0cGQyZHEsICAgICBmMiwgICAwZiwgZTYsICAgIHZsLCAgICAgIHEsIHZsKSwKICAg ICBJTlNOKGN2dHBkMnBzLCAgICAgNjYsICAgMGYsIDVhLCAgICB2bCwgICAgICBxLCB2bCksCiAg ICAgSU5TTihjdnRwaDJwcywgICAgIDY2LCAwZjM4LCAxMywgICAgdmxfMiwgZF9uYiwgdmwpLAor ICAgIElOU04oY3Z0cHMyZHEsICAgICA2NiwgICAwZiwgNWIsICAgIHZsLCAgICAgIGQsIHZsKSwK ICAgICBJTlNOKGN2dHBzMnBkLCAgICAgICAsICAgMGYsIDVhLCAgICB2bF8yLCAgICBkLCB2bCks CiAgICAgSU5TTihjdnRwczJwaCwgICAgIDY2LCAwZjNhLCAxZCwgICAgdmxfMiwgZF9uYiwgdmwp LAogICAgIElOU04oY3Z0c2Qyc3MsICAgICBmMiwgICAwZiwgNWEsICAgIGVsLCAgICAgIHEsIGVs KSwKQEAgLTM5OCw2ICs0MDIsOCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHRlc3QgYXZ4NTEyZHFf YWxsW10KICAgICBJTlNOX1BGUChhbmQsICAgICAgICAgICAgICAwZiwgNTQpLAogICAgIElOU05f UEZQKGFuZG4sICAgICAgICAgICAgIDBmLCA1NSksCiAgICAgSU5TTihicm9hZGNhc3RpMzJ4Miwg NjYsIDBmMzgsIDU5LCBlbF8yLCAgZCwgdmwpLAorICAgIElOU04oY3Z0cXEycGQsICAgICAgIGYz LCAgIDBmLCBlNiwgICB2bCwgIHEsIHZsKSwKKyAgICBJTlNOKGN2dHFxMnBzLCAgICAgICAgICwg ICAwZiwgNWIsICAgdmwsICBxLCB2bCksCiAgICAgSU5TTl9QRlAob3IsICAgICAgICAgICAgICAg MGYsIDU2KSwKIC8vICAgICAgIHBtb3ZkMm0sICAgICAgICBmMywgMGYzOCwgMzksICAgICAgICBk CiAvLyAgICAgICBwbW92bTIsICAgICAgICAgZjMsIDBmMzgsIDM4LCAgICAgICBkcQotLS0gYS90 b29scy90ZXN0cy94ODZfZW11bGF0b3Ivc2ltZC5jCisrKyBiL3Rvb2xzL3Rlc3RzL3g4Nl9lbXVs YXRvci9zaW1kLmMKQEAgLTkyLDYgKzkyLDEzIEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBfdG9fYm9v bChieXRlX3ZlY190IGIKICMgZGVmaW5lIHRvX2ludCh4KSAoKHZlY190KXsgKGludCkoeClbMF0g fSkKICNlbGlmIFZFQ19TSVpFID09IDggJiYgRkxPQVRfU0laRSA9PSA0ICYmIGRlZmluZWQoX18z ZE5PV19fKQogIyBkZWZpbmUgdG9faW50KHgpIF9fYnVpbHRpbl9pYTMyX3BpMmZkKF9fYnVpbHRp bl9pYTMyX3BmMmlkKHgpKQorI2VsaWYgZGVmaW5lZChGTE9BVF9TSVpFKSAmJiBWRUNfU0laRSA+ IEZMT0FUX1NJWkUgJiYgZGVmaW5lZChfX0FWWDUxMkZfXykgJiYgXAorICAgICAgKFZFQ19TSVpF ID09IDY0IHx8IGRlZmluZWQoX19BVlg1MTJWTF9fKSkKKyMgaWYgRkxPQVRfU0laRSA9PSA0Cisj ICBkZWZpbmUgdG9faW50KHgpIEJSKGN2dGRxMnBzLCBfbWFzaywgQlIoY3Z0cHMyZHEsIF9tYXNr LCB4LCAodnNpX3QpdW5kZWYoKSwgfjApLCB1bmRlZigpLCB+MCkKKyMgZWxpZiBGTE9BVF9TSVpF ID09IDgKKyMgIGRlZmluZSB0b19pbnQoeCkgQihjdnRkcTJwZCwgX21hc2ssIEJSKGN2dHBkMmRx LCBfbWFzaywgeCwgKHZzaV9oYWxmX3Qpe30sIH4wKSwgdW5kZWYoKSwgfjApCisjIGVuZGlmCiAj ZWxpZiBWRUNfU0laRSA9PSAxNiAmJiBkZWZpbmVkKF9fU1NFMl9fKQogIyBpZiBGTE9BVF9TSVpF ID09IDQKICMgIGRlZmluZSB0b19pbnQoeCkgX19idWlsdGluX2lhMzJfY3Z0ZHEycHMoX19idWls dGluX2lhMzJfY3Z0cHMyZHEoeCkpCkBAIC0xMTQyLDE1ICsxMTQ5LDIxIEBAIGludCBzaW1kX3Rl c3Qodm9pZCkKICAgICB0b3VjaChzcmMpOwogICAgIGlmICggIWVxKHggKiAtYWx0LCAtc3JjKSAp IHJldHVybiBfX0xJTkVfXzsKIAotIyBpZiBkZWZpbmVkKHJlY2lwKSAmJiBkZWZpbmVkKHRvX2lu dCkKKyMgaWZkZWYgdG9faW50CisKKyAgICB0b3VjaChzcmMpOworICAgIHggPSB0b19pbnQoc3Jj KTsKKyAgICB0b3VjaChzcmMpOworICAgIGlmICggIWVxKHgsIHNyYykgKSByZXR1cm4gX19MSU5F X187CiAKKyMgIGlmZGVmIHJlY2lwCiAgICAgdG91Y2goc3JjKTsKICAgICB4ID0gcmVjaXAoc3Jj KTsKICAgICB0b3VjaChzcmMpOwogICAgIHRvdWNoKHgpOwogICAgIGlmICggIWVxKHRvX2ludChy ZWNpcCh4KSksIHNyYykgKSByZXR1cm4gX19MSU5FX187CiAKLSMgIGlmZGVmIHJzcXJ0CisjICAg aWZkZWYgcnNxcnQKICAgICB4ID0gc3JjICogc3JjOwogICAgIHRvdWNoKHgpOwogICAgIHkgPSBy c3FydCh4KTsKQEAgLTExNTgsNiArMTE3MSw3IEBAIGludCBzaW1kX3Rlc3Qodm9pZCkKICAgICBp ZiAoICFlcSh0b19pbnQocmVjaXAoeSkpLCBzcmMpICkgcmV0dXJuIF9fTElORV9fOwogICAgIHRv dWNoKHNyYyk7CiAgICAgaWYgKCAhZXEodG9faW50KHkpLCB0b19pbnQocmVjaXAoc3JjKSkpICkg cmV0dXJuIF9fTElORV9fOworIyAgIGVuZGlmCiAjICBlbmRpZgogCiAjIGVuZGlmCi0tLSBhL3Rv b2xzL3Rlc3RzL3g4Nl9lbXVsYXRvci9zaW1kLmgKKysrIGIvdG9vbHMvdGVzdHMveDg2X2VtdWxh dG9yL3NpbWQuaApAQCAtMjQ0LDYgKzI0NCw3IEBAIGFzbSAoICIubWFjcm8gb3ZlcnJpZGUgaW5z biAgICBcblx0IgogT1ZSX0lOVChicm9hZGNhc3QpOwogT1ZSX1NGUChicm9hZGNhc3QpOwogT1ZS X1NGUChjb21pKTsKK09WUl9WRlAoY3Z0ZHEyKTsKIE9WUl9GUChhZGQpOwogT1ZSX0lOVChhZGQp OwogT1ZSX0JXKGFkZHMpOwpAQCAtMzMwLDEzICszMzEsMTkgQEAgUkVOKHBhbmRuLCAsIGQpOwog UkVOKHBvciwgLCBkKTsKIFJFTihweG9yLCAsIGQpOwogIyAgZW5kaWYKK09WUihjdnRwZDJkcXgp OworT1ZSKGN2dHBkMmRxeSk7CiBPVlIoY3Z0cGQycHN4KTsKIE9WUihjdnRwZDJwc3kpOwogT1ZS KGN2dHBoMnBzKTsKK09WUihjdnRwczJkcSk7CiBPVlIoY3Z0cHMycGQpOwogT1ZSKGN2dHBzMnBo KTsKIE9WUihjdnRzZDJzcyk7CiBPVlIoY3Z0c3Myc2QpOworT1ZSKGN2dHRwZDJkcXgpOworT1ZS KGN2dHRwZDJkcXkpOworT1ZSKGN2dHRwczJkcSk7CiBPVlIobW92ZGR1cCk7CiBPVlIobW92bnRk cSk7CiBPVlIobW92bnRkcWEpOwotLS0gYS94ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUveDg2X2Vt dWxhdGUuYworKysgYi94ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUveDg2X2VtdWxhdGUuYwpAQCAt MzExLDcgKzMxMSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgdHdvYnl0ZV90YWJsZSB7CiAgICAg WzB4NTQgLi4uIDB4NTddID0geyBEc3RJbXBsaWNpdHxTcmNNZW18TW9kUk0sIHNpbWRfcGFja2Vk X2ZwLCBkOHNfdmwgfSwKICAgICBbMHg1OCAuLi4gMHg1OV0gPSB7IERzdEltcGxpY2l0fFNyY01l bXxNb2RSTSwgc2ltZF9hbnlfZnAsIGQ4c192bCB9LAogICAgIFsweDVhXSA9IHsgRHN0SW1wbGlj aXR8U3JjTWVtfE1vZFJNfE1vdiwgc2ltZF9hbnlfZnAsIGQ4c192bCB9LAotICAgIFsweDViXSA9 IHsgRHN0SW1wbGljaXR8U3JjTWVtfE1vZFJNfE1vdiwgc2ltZF9vdGhlciB9LAorICAgIFsweDVi XSA9IHsgRHN0SW1wbGljaXR8U3JjTWVtfE1vZFJNfE1vdiwgc2ltZF9wYWNrZWRfZnAsIGQ4c192 bCB9LAogICAgIFsweDVjIC4uLiAweDVmXSA9IHsgRHN0SW1wbGljaXR8U3JjTWVtfE1vZFJNLCBz aW1kX2FueV9mcCwgZDhzX3ZsIH0sCiAgICAgWzB4NjAgLi4uIDB4NjJdID0geyBEc3RJbXBsaWNp dHxTcmNNZW18TW9kUk0sIHNpbWRfb3RoZXIsIGQ4c192bCB9LAogICAgIFsweDYzIC4uLiAweDY3 XSA9IHsgRHN0SW1wbGljaXR8U3JjTWVtfE1vZFJNLCBzaW1kX3BhY2tlZF9pbnQsIGQ4c192bCB9 LApAQCAtMzc1LDcgKzM3NSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgdHdvYnl0ZV90YWJsZSB7 CiAgICAgWzB4ZTBdID0geyBEc3RJbXBsaWNpdHxTcmNNZW18TW9kUk0sIHNpbWRfcGFja2VkX2lu dCwgZDhzX3ZsIH0sCiAgICAgWzB4ZTEgLi4uIDB4ZTJdID0geyBEc3RJbXBsaWNpdHxTcmNNZW18 TW9kUk0sIHNpbWRfMTI4LCA0IH0sCiAgICAgWzB4ZTMgLi4uIDB4ZTVdID0geyBEc3RJbXBsaWNp dHxTcmNNZW18TW9kUk0sIHNpbWRfcGFja2VkX2ludCwgZDhzX3ZsIH0sCi0gICAgWzB4ZTZdID0g eyBEc3RJbXBsaWNpdHxTcmNNZW18TW9kUk18TW92LCBzaW1kX290aGVyIH0sCisgICAgWzB4ZTZd ID0geyBEc3RJbXBsaWNpdHxTcmNNZW18TW9kUk18TW92LCBzaW1kX3BhY2tlZF9mcCwgZDhzX3Zs IH0sCiAgICAgWzB4ZTddID0geyBEc3RNZW18U3JjSW1wbGljaXR8TW9kUk18TW92LCBzaW1kX3Bh Y2tlZF9pbnQsIGQ4c192bCB9LAogICAgIFsweGU4IC4uLiAweGVmXSA9IHsgRHN0SW1wbGljaXR8 U3JjTWVtfE1vZFJNLCBzaW1kX3BhY2tlZF9pbnQsIGQ4c192bCB9LAogICAgIFsweGYwXSA9IHsg RHN0SW1wbGljaXR8U3JjTWVtfE1vZFJNfE1vdiwgc2ltZF9vdGhlciB9LApAQCAtMzA4MSw2ICsz MDgxLDExIEBAIHg4Nl9kZWNvZGUoCiAgICAgICAgICAgICAgICAgaWYgKCBkaXNwOHNjYWxlID09 IDIgJiYgZXZleC5wZnggPT0gdmV4X2YzICkKICAgICAgICAgICAgICAgICAgICAgZGlzcDhzY2Fs ZSA9IDM7CiAgICAgICAgICAgICAgICAgYnJlYWs7CisKKyAgICAgICAgICAgIGNhc2UgMHhlNjog LyogdmN2dGRxMnBkIG5lZWRzIHNwZWNpYWwgY2FzaW5nICovCisgICAgICAgICAgICAgICAgaWYg KCBkaXNwOHNjYWxlICYmIGV2ZXgucGZ4ID09IHZleF9mMyAmJiAhZXZleC53ICYmICFldmV4LmJy cyApCisgICAgICAgICAgICAgICAgICAgIC0tZGlzcDhzY2FsZTsKKyAgICAgICAgICAgICAgICBi cmVhazsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGJyZWFrOwogCkBAIC02NTc4LDYgKzY1 ODMsMjIgQEAgeDg2X2VtdWxhdGUoCiAgICAgICAgIG9wX2J5dGVzID0gMTYgPDwgdmV4Lmw7CiAg ICAgICAgIGdvdG8gc2ltZF8wZl9jdnQ7CiAKKyAgICBjYXNlIFg4NkVNVUxfT1BDX0VWRVhfNjYo MHgwZiwgMHg1Yik6IC8qIHZjdnRwczJkcSBbeHl6XW1tL21lbSxbeHl6XW1te2t9ICovCisgICAg Y2FzZSBYODZFTVVMX09QQ19FVkVYX0YzKDB4MGYsIDB4NWIpOiAvKiB2Y3Z0dHBzMmRxIFt4eXpd bW0vbWVtLFt4eXpdbW17a30gKi8KKyAgICAgICAgZ2VuZXJhdGVfZXhjZXB0aW9uX2lmKGV2ZXgu dywgRVhDX1VEKTsKKyAgICAgICAgLyogZmFsbCB0aHJvdWdoICovCisgICAgY2FzZSBYODZFTVVM X09QQ19FVkVYKDB4MGYsIDB4NWIpOiAgICAvKiB2Y3Z0ZHEycHMgW3h5el1tbS9tZW0sW3h5el1t bXtrfSAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdmN2 dHFxMnBzIFt4eXpdbW0vbWVtLHt4LHl9bW17a30gKi8KKyAgICAgICAgaWYgKCBldmV4LncgKQor ICAgICAgICAgICAgaG9zdF9hbmRfdmNwdV9tdXN0X2hhdmUoYXZ4NTEyZHEpOworICAgICAgICBl bHNlCisgICAgICAgICAgICBob3N0X2FuZF92Y3B1X211c3RfaGF2ZShhdng1MTJmKTsKKyAgICAg ICAgaWYgKCBlYS50eXBlICE9IE9QX1JFRyB8fCAhZXZleC5icnMgKQorICAgICAgICAgICAgYXZ4 NTEyX3ZsZW5fY2hlY2soZmFsc2UpOworICAgICAgICBkIHw9IFR3b09wOworICAgICAgICBvcF9i eXRlcyA9IDE2IDw8IGV2ZXgubHI7CisgICAgICAgIGdvdG8gc2ltZF96bW07CisKICAgICBDQVNF X1NJTURfUEFDS0VEX0lOVCgweDBmLCAweDYwKTogICAgLyogcHVucGNrbGJ3IHsseH1tbS9tZW0s eyx4fW1tICovCiAgICAgY2FzZSBYODZFTVVMX09QQ19WRVhfNjYoMHgwZiwgMHg2MCk6IC8qIHZw dW5wY2tsYncge3gseX1tbS9tZW0se3gseX1tbSx7eCx5fW1tICovCiAgICAgQ0FTRV9TSU1EX1BB Q0tFRF9JTlQoMHgwZiwgMHg2MSk6ICAgIC8qIHB1bnBja2x3ZCB7LHh9bW0vbWVtLHsseH1tbSAq LwpAQCAtNzI0MCw2ICs3MjYxLDI3IEBAIHg4Nl9lbXVsYXRlKAogICAgICAgICBvcF9ieXRlcyA9 IDg7CiAgICAgICAgIGdvdG8gc2ltZF8wZl94bW07CiAKKyAgICBjYXNlIFg4NkVNVUxfT1BDX0VW RVhfNjYoMHgwZiwgMHhlNik6ICAgLyogdmN2dHRwZDJkcSBbeHl6XW1tL21lbSx7eCx5fW1te2t9 ICovCisgICAgY2FzZSBYODZFTVVMX09QQ19FVkVYX0YyKDB4MGYsIDB4ZTYpOiAgIC8qIHZjdnRw ZDJkcSBbeHl6XW1tL21lbSx7eCx5fW1te2t9ICovCisgICAgICAgIGdlbmVyYXRlX2V4Y2VwdGlv bl9pZighZXZleC53LCBFWENfVUQpOworICAgICAgICAvKiBmYWxsIHRocm91Z2ggKi8KKyAgICBj YXNlIFg4NkVNVUxfT1BDX0VWRVhfRjMoMHgwZiwgMHhlNik6ICAgLyogdmN2dGRxMnBkIHt4LHl9 bW0vbWVtLFt4eXpdbW17a30gKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgLyogdmN2dHFxMnBkIFt4eXpdbW0vbWVtLFt4eXpdbW17a30gKi8KKyAgICAgICAg aWYgKCBldmV4LnBmeCAhPSB2ZXhfZjMgKQorICAgICAgICAgICAgaG9zdF9hbmRfdmNwdV9tdXN0 X2hhdmUoYXZ4NTEyZik7CisgICAgICAgIGVsc2UgaWYgKCBldmV4LncgKQorICAgICAgICAgICAg aG9zdF9hbmRfdmNwdV9tdXN0X2hhdmUoYXZ4NTEyZHEpOworICAgICAgICBlbHNlCisgICAgICAg IHsKKyAgICAgICAgICAgIGhvc3RfYW5kX3ZjcHVfbXVzdF9oYXZlKGF2eDUxMmYpOworICAgICAg ICAgICAgZ2VuZXJhdGVfZXhjZXB0aW9uX2lmKGVhLnR5cGUgIT0gT1BfTUVNICYmIGV2ZXguYnJz LCBFWENfVUQpOworICAgICAgICB9CisgICAgICAgIGlmICggZWEudHlwZSAhPSBPUF9SRUcgfHwg IWV2ZXguYnJzICkKKyAgICAgICAgICAgIGF2eDUxMl92bGVuX2NoZWNrKGZhbHNlKTsKKyAgICAg ICAgZCB8PSBUd29PcDsKKyAgICAgICAgb3BfYnl0ZXMgPSA4IDw8IChldmV4LncgKyBldmV4Lmxy KTsKKyAgICAgICAgZ290byBzaW1kX3ptbTsKKwogICAgIGNhc2UgWDg2RU1VTF9PUENfRjIoMHgw ZiwgMHhmMCk6ICAgICAvKiBsZGRxdSBtMTI4LHhtbSAqLwogICAgIGNhc2UgWDg2RU1VTF9PUENf VkVYX0YyKDB4MGYsIDB4ZjApOiAvKiB2bGRkcXUgbWVtLHt4LHl9bW0gKi8KICAgICAgICAgZ2Vu ZXJhdGVfZXhjZXB0aW9uX2lmKGVhLnR5cGUgIT0gT1BfTUVNLCBFWENfVUQpOwoKCgoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxp bmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5w cm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==