From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id AAE5ACDB482 for ; Thu, 19 Oct 2023 02:18:54 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qtIbi-00006b-TU; Wed, 18 Oct 2023 22:17:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qtIbh-00005w-4L for qemu-devel@nongnu.org; Wed, 18 Oct 2023 22:17:53 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qtIba-0001yG-Mr for qemu-devel@nongnu.org; Wed, 18 Oct 2023 22:17:52 -0400 Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 39J1rq80018996; Thu, 19 Oct 2023 02:17:44 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quicinc.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-type : content-transfer-encoding; s=qcppdkim1; bh=IVK7Gi92NitUwXr9s082RByfnBNxg00WMbEryOFwbyw=; b=JWJHVrTMYhA5+KnkFS1TfZy7/rwdjqaocqa7uBYOXOKQpjqJ24XK0glxuY9iWNbT3Slp XVwEUxmsK9HhMngqfYqGi7mit9JpVBQoYyXATFZo/AEX7/RTiN11lE1zFRItftHc5T8Z 2DKKRJVKYs5vgpDxoJpvh8GauETW4/lyrE192Wh3DoRdYrPQdbjEQJOFFjoGRIJy+fNH ZzuhL6cTxCTruPvNLPf2PNtipl8cmzb/DaC88U6a0XiqCCQu/M+4Yg+BNlkNep8gOsDY YpD0fTac8nuSLxYs4Zv4mT4RVgrD90WKRRb0Ltc0cG37uVwQrMEkAtAcDP2/CJ7h75gU 9g== Received: from nalasppmta02.qualcomm.com (Global_NAT1.qualcomm.com [129.46.96.20]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3tt5v82qvd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 19 Oct 2023 02:17:43 +0000 Received: from nalasex01a.na.qualcomm.com (nalasex01a.na.qualcomm.com [10.47.209.196]) by NALASPPMTA02.qualcomm.com (8.17.1.5/8.17.1.5) with ESMTPS id 39J2HgiC022639 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 19 Oct 2023 02:17:42 GMT Received: from hu-bcain-lv.qualcomm.com (10.49.16.6) by nalasex01a.na.qualcomm.com (10.47.209.196) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.39; Wed, 18 Oct 2023 19:17:41 -0700 From: Brian Cain To: CC: , , , , , , , , , , Subject: [PULL 1/2] target/hexagon: move GETPC() calls to top level helpers Date: Wed, 18 Oct 2023 19:17:32 -0700 Message-ID: <20231019021733.2258592-2-bcain@quicinc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20231019021733.2258592-1-bcain@quicinc.com> References: <20231019021733.2258592-1-bcain@quicinc.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Originating-IP: [10.49.16.6] X-ClientProxiedBy: nalasex01b.na.qualcomm.com (10.47.209.197) To nalasex01a.na.qualcomm.com (10.47.209.196) X-QCInternal: smtphost X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=5800 signatures=585085 X-Proofpoint-GUID: 6RxVtlntGlSxm0fLKYn8vHSjmP7bMmVd X-Proofpoint-ORIG-GUID: 6RxVtlntGlSxm0fLKYn8vHSjmP7bMmVd X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-10-19_02,2023-10-18_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 mlxlogscore=999 lowpriorityscore=0 phishscore=0 impostorscore=0 suspectscore=0 mlxscore=0 clxscore=1015 bulkscore=0 priorityscore=1501 spamscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000 definitions=main-2310190017 Received-SPF: pass client-ip=205.220.180.131; envelope-from=bcain@quicinc.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org RnJvbTogTWF0aGV1cyBUYXZhcmVzIEJlcm5hcmRpbm8gPHF1aWNfbWF0aGJlcm5AcXVpY2luYy5j b20+CgpBcyBkb2NzL2RldmVsL2xvYWRzLXN0b3Jlcy5yc3Qgc3RhdGVzOgoKICBgYEdFVFBDKClg YCBzaG91bGQgYmUgdXNlZCB3aXRoIGdyZWF0IGNhcmU6IGNhbGxpbmcKICBpdCBpbiBvdGhlciBm dW5jdGlvbnMgdGhhdCBhcmUgKm5vdCogdGhlIHRvcCBsZXZlbAogIGBgSEVMUEVSKGZvbylgYCB3 aWxsIGNhdXNlIHVuZXhwZWN0ZWQgYmVoYXZpb3IuIEluc3RlYWQsIHRoZQogIHZhbHVlIG9mIGBg R0VUUEMoKWBgIHNob3VsZCBiZSByZWFkIGZyb20gdGhlIGhlbHBlciBhbmQgcGFzc2VkCiAgaWYg bmVlZGVkIHRvIHRoZSBmdW5jdGlvbnMgdGhhdCB0aGUgaGVscGVyIGNhbGxzLgoKTGV0J3MgZml4 IHRoZSBHRVRQQygpIHVzYWdlIGluIEhleGFnb24sIG1ha2luZyBzdXJlIGl0J3MgYWx3YXlzIGNh bGxlZApmcm9tIHRvcCBsZXZlbCBoZWxwZXJzIGFuZCBwYXNzZWQgZG93biB0byB0aGUgcGxhY2Vz IHdoZXJlIGl0J3MKbmVlZGVkLiBUaGVyZSBhcmUgYSBmZXcgc25pcHBldHMgd2hlcmUgdGhhdCBp cyBub3QgY3VycmVudGx5IHRoZSBjYXNlOgoKLSBwcm9iZV9zdG9yZSgpLCB3aGljaCBpcyBvbmx5 IGNhbGxlZCBmcm9tIHR3byBoZWxwZXJzLCBzbyBpdCdzIGVhc3kgdG8KICBtb3ZlIEdFVFBDKCkg dXAuCgotIG1lbV9sb2FkKigpIGZ1bmN0aW9ucywgd2hpY2ggYXJlIGFsc28gY2FsbGVkIGRpcmVj dGx5IGZyb20gaGVscGVycywKICBidXQgdGhyb3VnaCB0aGUgTUVNX0xPQUQqKCkgc2V0IG9mIG1h Y3Jvcy4gTm90ZSB0aGF0IHRoaXMgYXJlIG9ubHkKICB1c2VkIHdoZW4gY29tcGlsaW5nIHdpdGgg LS1kaXNhYmxlLWhleGFnb24taWRlZi1wYXJzZXIuCgogIEluIHRoaXMgY2FzZSwgd2UgYWxzbyB0 YWtlIHRoaXMgb3Bwb3J0dW5pdHkgdG8gc2ltcGxpZnkgdGhlIGNvZGUsCiAgdW5pZnlpbmcgdGhl IG1lbV9sb2FkKigpIGZ1bmN0aW9ucy4KCi0gSEVMUEVSKHByb2JlX2h2eF9zdG9yZXMpLCB3aGVu IGNhbGxlZCBmcm9tIGFub3RoZXIgaGVscGVyLCBlbmRzIHVwCiAgdXNpbmcgaXRzIG93biBHRVRQ QygpIGV4cGFuc2lvbiBpbnN0ZWFkIG9mIHRoZSB0b3AgbGV2ZWwgY2FsbGVyLgoKU2lnbmVkLW9m Zi1ieTogTWF0aGV1cyBUYXZhcmVzIEJlcm5hcmRpbm8gPHF1aWNfbWF0aGJlcm5AcXVpY2luYy5j b20+ClJldmlld2VkLWJ5OiBUYXlsb3IgU2ltcHNvbiA8bHRheWxvcnNpbXBzb25AZ21haWwuY29t PgpNZXNzYWdlLUlkOiA8MmM3NGMzNjk2OTQ2ZWRiYTdjYzViMjk0MmNmMjk2YTVhZjUzMjA1Mi4x Njg5MDcwNDEyLmdpdC5xdWljX21hdGhiZXJuQHF1aWNpbmMuY29tPi1uZQpSZXZpZXdlZC1ieTog QnJpYW4gQ2FpbiA8YmNhaW5AcXVpY2luYy5jb20+ClNpZ25lZC1vZmYtYnk6IEJyaWFuIENhaW4g PGJjYWluQHF1aWNpbmMuY29tPgpNZXNzYWdlLUlkOiA8MjAyMzEwMDgyMjA5NDUuOTgzNjQzLTIt YmNhaW5AcXVpY2luYy5jb20+Ci0tLQogdGFyZ2V0L2hleGFnb24vbWFjcm9zLmggICAgfCAxOSAr KysrKy0tLS0tCiB0YXJnZXQvaGV4YWdvbi9vcF9oZWxwZXIuYyB8IDc1ICsrKysrKysrKysrKysr Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiB0YXJnZXQvaGV4YWdvbi9vcF9oZWxwZXIuaCB8ICA5 IC0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKyksIDY1IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3RhcmdldC9oZXhhZ29uL21hY3Jvcy5oIGIvdGFyZ2V0L2hleGFnb24v bWFjcm9zLmgKaW5kZXggYjM1NmQ4NTc5Mi4uOWE1MWI1NzA5YiAxMDA2NDQKLS0tIGEvdGFyZ2V0 L2hleGFnb24vbWFjcm9zLmgKKysrIGIvdGFyZ2V0L2hleGFnb24vbWFjcm9zLmgKQEAgLTE3Mywx NSArMTczLDYgQEAKICNkZWZpbmUgTUVNX1NUT1JFOChWQSwgREFUQSwgU0xPVCkgXAogICAgIE1F TV9TVE9SRThfRlVOQyhEQVRBKSh0Y2dfZW52LCBWQSwgREFUQSwgU0xPVCkKICNlbHNlCi0jZGVm aW5lIE1FTV9MT0FEMXMoVkEpICgoaW50OF90KW1lbV9sb2FkMShlbnYsIHBrdF9oYXNfc3RvcmVf czEsIHNsb3QsIFZBKSkKLSNkZWZpbmUgTUVNX0xPQUQxdShWQSkgKCh1aW50OF90KW1lbV9sb2Fk MShlbnYsIHBrdF9oYXNfc3RvcmVfczEsIHNsb3QsIFZBKSkKLSNkZWZpbmUgTUVNX0xPQUQycyhW QSkgKChpbnQxNl90KW1lbV9sb2FkMihlbnYsIHBrdF9oYXNfc3RvcmVfczEsIHNsb3QsIFZBKSkK LSNkZWZpbmUgTUVNX0xPQUQydShWQSkgKCh1aW50MTZfdCltZW1fbG9hZDIoZW52LCBwa3RfaGFz X3N0b3JlX3MxLCBzbG90LCBWQSkpCi0jZGVmaW5lIE1FTV9MT0FENHMoVkEpICgoaW50MzJfdClt ZW1fbG9hZDQoZW52LCBwa3RfaGFzX3N0b3JlX3MxLCBzbG90LCBWQSkpCi0jZGVmaW5lIE1FTV9M T0FENHUoVkEpICgodWludDMyX3QpbWVtX2xvYWQ0KGVudiwgcGt0X2hhc19zdG9yZV9zMSwgc2xv dCwgVkEpKQotI2RlZmluZSBNRU1fTE9BRDhzKFZBKSAoKGludDY0X3QpbWVtX2xvYWQ4KGVudiwg cGt0X2hhc19zdG9yZV9zMSwgc2xvdCwgVkEpKQotI2RlZmluZSBNRU1fTE9BRDh1KFZBKSAoKHVp bnQ2NF90KW1lbV9sb2FkOChlbnYsIHBrdF9oYXNfc3RvcmVfczEsIHNsb3QsIFZBKSkKLQogI2Rl ZmluZSBNRU1fU1RPUkUxKFZBLCBEQVRBLCBTTE9UKSBsb2dfc3RvcmUzMihlbnYsIFZBLCBEQVRB LCAxLCBTTE9UKQogI2RlZmluZSBNRU1fU1RPUkUyKFZBLCBEQVRBLCBTTE9UKSBsb2dfc3RvcmUz MihlbnYsIFZBLCBEQVRBLCAyLCBTTE9UKQogI2RlZmluZSBNRU1fU1RPUkU0KFZBLCBEQVRBLCBT TE9UKSBsb2dfc3RvcmUzMihlbnYsIFZBLCBEQVRBLCA0LCBTTE9UKQpAQCAtNTMwLDggKzUyMSwx NiBAQCBzdGF0aWMgaW5saW5lIFRDR3YgZ2VuX3JlYWRfaXJlZyhUQ0d2IHJlc3VsdCwgVENHdiB2 YWwsIGludCBzaGlmdCkKICNpZmRlZiBRRU1VX0dFTkVSQVRFCiAjZGVmaW5lIGZMT0FEKE5VTSwg U0laRSwgU0lHTiwgRUEsIERTVCkgTUVNX0xPQUQjI1NJWkUjI1NJR04oRFNULCBFQSkKICNlbHNl CisjZGVmaW5lIE1FTV9MT0FEMSBjcHVfbGR1Yl9kYXRhX3JhCisjZGVmaW5lIE1FTV9MT0FEMiBj cHVfbGR1d19kYXRhX3JhCisjZGVmaW5lIE1FTV9MT0FENCBjcHVfbGRsX2RhdGFfcmEKKyNkZWZp bmUgTUVNX0xPQUQ4IGNwdV9sZHFfZGF0YV9yYQorCiAjZGVmaW5lIGZMT0FEKE5VTSwgU0laRSwg U0lHTiwgRUEsIERTVCkgXAotICAgIERTVCA9IChzaXplIyNTSVpFIyNTSUdOIyNfdClNRU1fTE9B RCMjU0laRSMjU0lHTihFQSkKKyAgICBkbyB7IFwKKyAgICAgICAgY2hlY2tfbm9zaHVmKGVudiwg cGt0X2hhc19zdG9yZV9zMSwgc2xvdCwgRUEsIFNJWkUsIEdFVFBDKCkpOyBcCisgICAgICAgIERT VCA9IChzaXplIyNTSVpFIyNTSUdOIyNfdClNRU1fTE9BRCMjU0laRShlbnYsIEVBLCBHRVRQQygp KTsgXAorICAgIH0gd2hpbGUgKDApCiAjZW5kaWYKIAogI2RlZmluZSBmTUVNT1AoTlVNLCBTSVpF LCBTSUdOLCBFQSwgRk5UWVBFLCBWQUxVRSkKZGlmZiAtLWdpdCBhL3RhcmdldC9oZXhhZ29uL29w X2hlbHBlci5jIGIvdGFyZ2V0L2hleGFnb24vb3BfaGVscGVyLmMKaW5kZXggMTI5NjdhYzIxZS4u OGNhMzk3NmE2NSAxMDA2NDQKLS0tIGEvdGFyZ2V0L2hleGFnb24vb3BfaGVscGVyLmMKKysrIGIv dGFyZ2V0L2hleGFnb24vb3BfaGVscGVyLmMKQEAgLTk1LDkgKzk1LDggQEAgdm9pZCBIRUxQRVIo ZGVidWdfY2hlY2tfc3RvcmVfd2lkdGgpKENQVUhleGFnb25TdGF0ZSAqZW52LCBpbnQgc2xvdCwg aW50IGNoZWNrKQogICAgIH0KIH0KIAotdm9pZCBIRUxQRVIoY29tbWl0X3N0b3JlKShDUFVIZXhh Z29uU3RhdGUgKmVudiwgaW50IHNsb3RfbnVtKQorc3RhdGljIHZvaWQgY29tbWl0X3N0b3JlKENQ VUhleGFnb25TdGF0ZSAqZW52LCBpbnQgc2xvdF9udW0sIHVpbnRwdHJfdCByYSkKIHsKLSAgICB1 aW50cHRyX3QgcmEgPSBHRVRQQygpOwogICAgIHVpbnQ4X3Qgd2lkdGggPSBlbnYtPm1lbV9sb2df c3RvcmVzW3Nsb3RfbnVtXS53aWR0aDsKICAgICB0YXJnZXRfdWxvbmcgdmEgPSBlbnYtPm1lbV9s b2dfc3RvcmVzW3Nsb3RfbnVtXS52YTsKIApAQCAtMTE5LDYgKzExOCwxMiBAQCB2b2lkIEhFTFBF Uihjb21taXRfc3RvcmUpKENQVUhleGFnb25TdGF0ZSAqZW52LCBpbnQgc2xvdF9udW0pCiAgICAg fQogfQogCit2b2lkIEhFTFBFUihjb21taXRfc3RvcmUpKENQVUhleGFnb25TdGF0ZSAqZW52LCBp bnQgc2xvdF9udW0pCit7CisgICAgdWludHB0cl90IHJhID0gR0VUUEMoKTsKKyAgICBjb21taXRf c3RvcmUoZW52LCBzbG90X251bSwgcmEpOworfQorCiB2b2lkIEhFTFBFUihnYXRoZXJfc3RvcmUp KENQVUhleGFnb25TdGF0ZSAqZW52LCB1aW50MzJfdCBhZGRyLCBpbnQgc2xvdCkKIHsKICAgICBt ZW1fZ2F0aGVyX3N0b3JlKGVudiwgYWRkciwgc2xvdCk7CkBAIC00NjcsMTMgKzQ3MiwxMiBAQCBp bnQzMl90IEhFTFBFUihjYWJhY2RlY2Jpbl9wcmVkKShpbnQ2NF90IFJzc1YsIGludDY0X3QgUnR0 VikKIH0KIAogc3RhdGljIHZvaWQgcHJvYmVfc3RvcmUoQ1BVSGV4YWdvblN0YXRlICplbnYsIGlu dCBzbG90LCBpbnQgbW11X2lkeCwKLSAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNfcHJl ZGljYXRlZCkKKyAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNfcHJlZGljYXRlZCwgdWlu dHB0cl90IHJldGFkZHIpCiB7CiAgICAgaWYgKCFpc19wcmVkaWNhdGVkIHx8ICEoZW52LT5zbG90 X2NhbmNlbGxlZCAmICgxIDw8IHNsb3QpKSkgewogICAgICAgICBzaXplMXVfdCB3aWR0aCA9IGVu di0+bWVtX2xvZ19zdG9yZXNbc2xvdF0ud2lkdGg7CiAgICAgICAgIHRhcmdldF91bG9uZyB2YSA9 IGVudi0+bWVtX2xvZ19zdG9yZXNbc2xvdF0udmE7Ci0gICAgICAgIHVpbnRwdHJfdCByYSA9IEdF VFBDKCk7Ci0gICAgICAgIHByb2JlX3dyaXRlKGVudiwgdmEsIHdpZHRoLCBtbXVfaWR4LCByYSk7 CisgICAgICAgIHByb2JlX3dyaXRlKGVudiwgdmEsIHdpZHRoLCBtbXVfaWR4LCByZXRhZGRyKTsK ICAgICB9CiB9CiAKQEAgLTQ5NCwxMiArNDk4LDEzIEBAIHZvaWQgSEVMUEVSKHByb2JlX3BrdF9z Y2FsYXJfc3RvcmVfczApKENQVUhleGFnb25TdGF0ZSAqZW52LCBpbnQgYXJncykKICAgICBpbnQg bW11X2lkeCA9IEZJRUxEX0VYMzIoYXJncywgUFJPQkVfUEtUX1NDQUxBUl9TVE9SRV9TMCwgTU1V X0lEWCk7CiAgICAgYm9vbCBpc19wcmVkaWNhdGVkID0KICAgICAgICAgRklFTERfRVgzMihhcmdz LCBQUk9CRV9QS1RfU0NBTEFSX1NUT1JFX1MwLCBJU19QUkVESUNBVEVEKTsKLSAgICBwcm9iZV9z dG9yZShlbnYsIDAsIG1tdV9pZHgsIGlzX3ByZWRpY2F0ZWQpOworICAgIHVpbnRwdHJfdCByYSA9 IEdFVFBDKCk7CisgICAgcHJvYmVfc3RvcmUoZW52LCAwLCBtbXVfaWR4LCBpc19wcmVkaWNhdGVk LCByYSk7CiB9CiAKLXZvaWQgSEVMUEVSKHByb2JlX2h2eF9zdG9yZXMpKENQVUhleGFnb25TdGF0 ZSAqZW52LCBpbnQgbW11X2lkeCkKK3N0YXRpYyB2b2lkIHByb2JlX2h2eF9zdG9yZXMoQ1BVSGV4 YWdvblN0YXRlICplbnYsIGludCBtbXVfaWR4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdWludHB0cl90IHJldGFkZHIpCiB7Ci0gICAgdWludHB0cl90IHJldGFkZHIgPSBH RVRQQygpOwogICAgIGludCBpOwogCiAgICAgLyogTm9ybWFsIChwb3NzaWJseSBtYXNrZWQpIHZl Y3RvciBzdG9yZSAqLwpAQCAtNTM4LDYgKzU0MywxMiBAQCB2b2lkIEhFTFBFUihwcm9iZV9odnhf c3RvcmVzKShDUFVIZXhhZ29uU3RhdGUgKmVudiwgaW50IG1tdV9pZHgpCiAgICAgfQogfQogCit2 b2lkIEhFTFBFUihwcm9iZV9odnhfc3RvcmVzKShDUFVIZXhhZ29uU3RhdGUgKmVudiwgaW50IG1t dV9pZHgpCit7CisgICAgdWludHB0cl90IHJldGFkZHIgPSBHRVRQQygpOworICAgIHByb2JlX2h2 eF9zdG9yZXMoZW52LCBtbXVfaWR4LCByZXRhZGRyKTsKK30KKwogdm9pZCBIRUxQRVIocHJvYmVf cGt0X3NjYWxhcl9odnhfc3RvcmVzKShDUFVIZXhhZ29uU3RhdGUgKmVudiwgaW50IG1hc2spCiB7 CiAgICAgYm9vbCBoYXNfc3QwID0gRklFTERfRVgzMihtYXNrLCBQUk9CRV9QS1RfU0NBTEFSX0hW WF9TVE9SRVMsIEhBU19TVDApOwpAQCAtNTQ3LDE4ICs1NTgsMjAgQEAgdm9pZCBIRUxQRVIocHJv YmVfcGt0X3NjYWxhcl9odnhfc3RvcmVzKShDUFVIZXhhZ29uU3RhdGUgKmVudiwgaW50IG1hc2sp CiAgICAgYm9vbCBzMF9pc19wcmVkID0gRklFTERfRVgzMihtYXNrLCBQUk9CRV9QS1RfU0NBTEFS X0hWWF9TVE9SRVMsIFMwX0lTX1BSRUQpOwogICAgIGJvb2wgczFfaXNfcHJlZCA9IEZJRUxEX0VY MzIobWFzaywgUFJPQkVfUEtUX1NDQUxBUl9IVlhfU1RPUkVTLCBTMV9JU19QUkVEKTsKICAgICBp bnQgbW11X2lkeCA9IEZJRUxEX0VYMzIobWFzaywgUFJPQkVfUEtUX1NDQUxBUl9IVlhfU1RPUkVT LCBNTVVfSURYKTsKKyAgICB1aW50cHRyX3QgcmEgPSBHRVRQQygpOwogCiAgICAgaWYgKGhhc19z dDApIHsKLSAgICAgICAgcHJvYmVfc3RvcmUoZW52LCAwLCBtbXVfaWR4LCBzMF9pc19wcmVkKTsK KyAgICAgICAgcHJvYmVfc3RvcmUoZW52LCAwLCBtbXVfaWR4LCBzMF9pc19wcmVkLCByYSk7CiAg ICAgfQogICAgIGlmIChoYXNfc3QxKSB7Ci0gICAgICAgIHByb2JlX3N0b3JlKGVudiwgMSwgbW11 X2lkeCwgczFfaXNfcHJlZCk7CisgICAgICAgIHByb2JlX3N0b3JlKGVudiwgMSwgbW11X2lkeCwg czFfaXNfcHJlZCwgcmEpOwogICAgIH0KICAgICBpZiAoaGFzX2h2eF9zdG9yZXMpIHsKLSAgICAg ICAgSEVMUEVSKHByb2JlX2h2eF9zdG9yZXMpKGVudiwgbW11X2lkeCk7CisgICAgICAgIHByb2Jl X2h2eF9zdG9yZXMoZW52LCBtbXVfaWR4LCByYSk7CiAgICAgfQogfQogCisjaWZuZGVmIENPTkZJ R19IRVhBR09OX0lERUZfUEFSU0VSCiAvKgogICogbWVtX25vc2h1ZgogICogU2VjdGlvbiA1LjUg b2YgdGhlIEhleGFnb24gVjY3IFByb2dyYW1tZXIncyBSZWZlcmVuY2UgTWFudWFsCkBAIC01Njcs NDYgKzU4MCwxNiBAQCB2b2lkIEhFTFBFUihwcm9iZV9wa3Rfc2NhbGFyX2h2eF9zdG9yZXMpKENQ VUhleGFnb25TdGF0ZSAqZW52LCBpbnQgbWFzaykKICAqIHdhc24ndCBjYW5jZWxsZWQpLCB3ZSBo YXZlIHRvIGRvIHRoZSBzdG9yZSBmaXJzdC4KICAqLwogc3RhdGljIHZvaWQgY2hlY2tfbm9zaHVm KENQVUhleGFnb25TdGF0ZSAqZW52LCBib29sIHBrdF9oYXNfc3RvcmVfczEsCi0gICAgICAgICAg ICAgICAgICAgICAgICAgdWludDMyX3Qgc2xvdCwgdGFyZ2V0X3Vsb25nIHZhZGRyLCBpbnQgc2l6 ZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzbG90LCB0YXJnZXRfdWxvbmcg dmFkZHIsIGludCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnRwdHJfdCByYSkK IHsKICAgICBpZiAoc2xvdCA9PSAwICYmIHBrdF9oYXNfc3RvcmVfczEgJiYKICAgICAgICAgKChl bnYtPnNsb3RfY2FuY2VsbGVkICYgKDEgPDwgMSkpID09IDApKSB7Ci0gICAgICAgIEhFTFBFUihw cm9iZV9ub3NodWZfbG9hZCkoZW52LCB2YWRkciwgc2l6ZSwgTU1VX1VTRVJfSURYKTsKLSAgICAg ICAgSEVMUEVSKGNvbW1pdF9zdG9yZSkoZW52LCAxKTsKKyAgICAgICAgcHJvYmVfcmVhZChlbnYs IHZhZGRyLCBzaXplLCBNTVVfVVNFUl9JRFgsIHJhKTsKKyAgICAgICAgY29tbWl0X3N0b3JlKGVu diwgMSwgcmEpOwogICAgIH0KIH0KLQotdWludDhfdCBtZW1fbG9hZDEoQ1BVSGV4YWdvblN0YXRl ICplbnYsIGJvb2wgcGt0X2hhc19zdG9yZV9zMSwKLSAgICAgICAgICAgICAgICAgIHVpbnQzMl90 IHNsb3QsIHRhcmdldF91bG9uZyB2YWRkcikKLXsKLSAgICB1aW50cHRyX3QgcmEgPSBHRVRQQygp OwotICAgIGNoZWNrX25vc2h1ZihlbnYsIHBrdF9oYXNfc3RvcmVfczEsIHNsb3QsIHZhZGRyLCAx KTsKLSAgICByZXR1cm4gY3B1X2xkdWJfZGF0YV9yYShlbnYsIHZhZGRyLCByYSk7Ci19Ci0KLXVp bnQxNl90IG1lbV9sb2FkMihDUFVIZXhhZ29uU3RhdGUgKmVudiwgYm9vbCBwa3RfaGFzX3N0b3Jl X3MxLAotICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHNsb3QsIHRhcmdldF91bG9uZyB2YWRk cikKLXsKLSAgICB1aW50cHRyX3QgcmEgPSBHRVRQQygpOwotICAgIGNoZWNrX25vc2h1ZihlbnYs IHBrdF9oYXNfc3RvcmVfczEsIHNsb3QsIHZhZGRyLCAyKTsKLSAgICByZXR1cm4gY3B1X2xkdXdf ZGF0YV9yYShlbnYsIHZhZGRyLCByYSk7Ci19Ci0KLXVpbnQzMl90IG1lbV9sb2FkNChDUFVIZXhh Z29uU3RhdGUgKmVudiwgYm9vbCBwa3RfaGFzX3N0b3JlX3MxLAotICAgICAgICAgICAgICAgICAg IHVpbnQzMl90IHNsb3QsIHRhcmdldF91bG9uZyB2YWRkcikKLXsKLSAgICB1aW50cHRyX3QgcmEg PSBHRVRQQygpOwotICAgIGNoZWNrX25vc2h1ZihlbnYsIHBrdF9oYXNfc3RvcmVfczEsIHNsb3Qs IHZhZGRyLCA0KTsKLSAgICByZXR1cm4gY3B1X2xkbF9kYXRhX3JhKGVudiwgdmFkZHIsIHJhKTsK LX0KLQotdWludDY0X3QgbWVtX2xvYWQ4KENQVUhleGFnb25TdGF0ZSAqZW52LCBib29sIHBrdF9o YXNfc3RvcmVfczEsCi0gICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc2xvdCwgdGFyZ2V0X3Vs b25nIHZhZGRyKQotewotICAgIHVpbnRwdHJfdCByYSA9IEdFVFBDKCk7Ci0gICAgY2hlY2tfbm9z aHVmKGVudiwgcGt0X2hhc19zdG9yZV9zMSwgc2xvdCwgdmFkZHIsIDgpOwotICAgIHJldHVybiBj cHVfbGRxX2RhdGFfcmEoZW52LCB2YWRkciwgcmEpOwotfQorI2VuZGlmCiAKIC8qIEZsb2F0aW5n IHBvaW50ICovCiBmbG9hdDY0IEhFTFBFUihjb252X3NmMmRmKShDUFVIZXhhZ29uU3RhdGUgKmVu diwgZmxvYXQzMiBSc1YpCmRpZmYgLS1naXQgYS90YXJnZXQvaGV4YWdvbi9vcF9oZWxwZXIuaCBi L3RhcmdldC9oZXhhZ29uL29wX2hlbHBlci5oCmluZGV4IDhmMzc2NGQxNWUuLjY2MTE5Y2YzZDQg MTAwNjQ0Ci0tLSBhL3RhcmdldC9oZXhhZ29uL29wX2hlbHBlci5oCisrKyBiL3RhcmdldC9oZXhh Z29uL29wX2hlbHBlci5oCkBAIC0xOSwxNSArMTksNiBAQAogI2RlZmluZSBIRVhBR09OX09QX0hF TFBFUl9ICiAKIC8qIE1pc2MgZnVuY3Rpb25zICovCi11aW50OF90IG1lbV9sb2FkMShDUFVIZXhh Z29uU3RhdGUgKmVudiwgYm9vbCBwa3RfaGFzX3N0b3JlX3MxLAotICAgICAgICAgICAgICAgICAg dWludDMyX3Qgc2xvdCwgdGFyZ2V0X3Vsb25nIHZhZGRyKTsKLXVpbnQxNl90IG1lbV9sb2FkMihD UFVIZXhhZ29uU3RhdGUgKmVudiwgYm9vbCBwa3RfaGFzX3N0b3JlX3MxLAotICAgICAgICAgICAg ICAgICAgIHVpbnQzMl90IHNsb3QsIHRhcmdldF91bG9uZyB2YWRkcik7Ci11aW50MzJfdCBtZW1f bG9hZDQoQ1BVSGV4YWdvblN0YXRlICplbnYsIGJvb2wgcGt0X2hhc19zdG9yZV9zMSwKLSAgICAg ICAgICAgICAgICAgICB1aW50MzJfdCBzbG90LCB0YXJnZXRfdWxvbmcgdmFkZHIpOwotdWludDY0 X3QgbWVtX2xvYWQ4KENQVUhleGFnb25TdGF0ZSAqZW52LCBib29sIHBrdF9oYXNfc3RvcmVfczEs Ci0gICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc2xvdCwgdGFyZ2V0X3Vsb25nIHZhZGRyKTsK LQogdm9pZCBsb2dfc3RvcmU2NChDUFVIZXhhZ29uU3RhdGUgKmVudiwgdGFyZ2V0X3Vsb25nIGFk ZHIsCiAgICAgICAgICAgICAgICAgIGludDY0X3QgdmFsLCBpbnQgd2lkdGgsIGludCBzbG90KTsK IHZvaWQgbG9nX3N0b3JlMzIoQ1BVSGV4YWdvblN0YXRlICplbnYsIHRhcmdldF91bG9uZyBhZGRy LAotLSAKMi4yNS4xCgo=