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 D64DEE7B604 for ; Wed, 4 Oct 2023 12:42:09 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qo1B3-0006V0-Ig; Wed, 04 Oct 2023 08:40:33 -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 1qo1B1-0006US-VQ for qemu-devel@nongnu.org; Wed, 04 Oct 2023 08:40:32 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qo1Al-0002eV-Er for qemu-devel@nongnu.org; Wed, 04 Oct 2023 08:40:31 -0400 Received: from pps.filterd (m0279867.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 394AjXSW026821; Wed, 4 Oct 2023 12:40:06 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=CPOrt4cmuEgruaE/JyO9AD/zM/Dbr+YkeqN1sJxSa90=; b=pSY7xU2cgPq7QKO5ReGpzwykPG4TqvqgMyXu7vzS0hIihuXdrPJpqVekKpjfYqZgzQnI eGZ3k2NgMzJ4G7n1AjNF9QswwNCFo6StGcegClEqbjSSELDtzRIC5lL4Ei/LpPov1SUj BtmyDbrblst/7OMAzjolYrYH/WF4k9QpXTCICNIMMLdeSD9eHz7h1PDMhilmTXrj225x x+XPUQh8Bi1xswfryo+p0WBI6MOsgYh8WwB/R8iku+mTuQirDnnkZK6sy+JagfZjJDbe ExYUCoGAR/VosmhFDrdmmctzjzXeYKgTusnovYbkmQDvzfNS8Vzd7AWpKDM8Ye06IwHT 3Q== Received: from nalasppmta01.qualcomm.com (Global_NAT1.qualcomm.com [129.46.96.20]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3tgxrjs8y9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 04 Oct 2023 12:40:06 +0000 Received: from nalasex01a.na.qualcomm.com (nalasex01a.na.qualcomm.com [10.47.209.196]) by NALASPPMTA01.qualcomm.com (8.17.1.5/8.17.1.5) with ESMTPS id 394Ce5C9007683 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 4 Oct 2023 12:40:05 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.36; Wed, 4 Oct 2023 05:40:04 -0700 From: Brian Cain To: CC: , , , , , , , , , , Subject: [PATCH 1/2] target/hexagon: move GETPC() calls to top level helpers Date: Wed, 4 Oct 2023 05:39:56 -0700 Message-ID: <20231004123957.1732915-2-bcain@quicinc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20231004123957.1732915-1-bcain@quicinc.com> References: <20231004123957.1732915-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: nalasex01a.na.qualcomm.com (10.47.209.196) 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: B3AIKyqOprWxjQG2Dk1S7Aix45q4Hzuo X-Proofpoint-ORIG-GUID: B3AIKyqOprWxjQG2Dk1S7Aix45q4Hzuo X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-10-04_04,2023-10-02_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 malwarescore=0 clxscore=1015 suspectscore=0 phishscore=0 mlxlogscore=999 impostorscore=0 priorityscore=1501 lowpriorityscore=0 spamscore=0 mlxscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000 definitions=main-2310040092 Received-SPF: pass client-ip=205.220.168.131; envelope-from=bcain@quicinc.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 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, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01 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+Ci0tLQogdGFyZ2V0L2hleGFnb24vbWFjcm9z LmggICAgfCAxOSArKysrKy0tLS0tCiB0YXJnZXQvaGV4YWdvbi9vcF9oZWxwZXIuYyB8IDc1ICsr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiB0YXJnZXQvaGV4YWdvbi9vcF9o ZWxwZXIuaCB8ICA5IC0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKyksIDY1 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3RhcmdldC9oZXhhZ29uL21hY3Jvcy5oIGIvdGFy Z2V0L2hleGFnb24vbWFjcm9zLmgKaW5kZXggNTQ1MWIwNjFlZS4uZGFmYTBkZjZlZCAxMDA2NDQK LS0tIGEvdGFyZ2V0L2hleGFnb24vbWFjcm9zLmgKKysrIGIvdGFyZ2V0L2hleGFnb24vbWFjcm9z LmgKQEAgLTE3MywxNSArMTczLDYgQEAKICNkZWZpbmUgTUVNX1NUT1JFOChWQSwgREFUQSwgU0xP VCkgXAogICAgIE1FTV9TVE9SRThfRlVOQyhEQVRBKShjcHVfZW52LCBWQSwgREFUQSwgU0xPVCkK ICNlbHNlCi0jZGVmaW5lIE1FTV9MT0FEMXMoVkEpICgoaW50OF90KW1lbV9sb2FkMShlbnYsIHBr dF9oYXNfc3RvcmVfczEsIHNsb3QsIFZBKSkKLSNkZWZpbmUgTUVNX0xPQUQxdShWQSkgKCh1aW50 OF90KW1lbV9sb2FkMShlbnYsIHBrdF9oYXNfc3RvcmVfczEsIHNsb3QsIFZBKSkKLSNkZWZpbmUg TUVNX0xPQUQycyhWQSkgKChpbnQxNl90KW1lbV9sb2FkMihlbnYsIHBrdF9oYXNfc3RvcmVfczEs IHNsb3QsIFZBKSkKLSNkZWZpbmUgTUVNX0xPQUQydShWQSkgKCh1aW50MTZfdCltZW1fbG9hZDIo ZW52LCBwa3RfaGFzX3N0b3JlX3MxLCBzbG90LCBWQSkpCi0jZGVmaW5lIE1FTV9MT0FENHMoVkEp ICgoaW50MzJfdCltZW1fbG9hZDQoZW52LCBwa3RfaGFzX3N0b3JlX3MxLCBzbG90LCBWQSkpCi0j ZGVmaW5lIE1FTV9MT0FENHUoVkEpICgodWludDMyX3QpbWVtX2xvYWQ0KGVudiwgcGt0X2hhc19z dG9yZV9zMSwgc2xvdCwgVkEpKQotI2RlZmluZSBNRU1fTE9BRDhzKFZBKSAoKGludDY0X3QpbWVt X2xvYWQ4KGVudiwgcGt0X2hhc19zdG9yZV9zMSwgc2xvdCwgVkEpKQotI2RlZmluZSBNRU1fTE9B RDh1KFZBKSAoKHVpbnQ2NF90KW1lbV9sb2FkOChlbnYsIHBrdF9oYXNfc3RvcmVfczEsIHNsb3Qs IFZBKSkKLQogI2RlZmluZSBNRU1fU1RPUkUxKFZBLCBEQVRBLCBTTE9UKSBsb2dfc3RvcmUzMihl bnYsIFZBLCBEQVRBLCAxLCBTTE9UKQogI2RlZmluZSBNRU1fU1RPUkUyKFZBLCBEQVRBLCBTTE9U KSBsb2dfc3RvcmUzMihlbnYsIFZBLCBEQVRBLCAyLCBTTE9UKQogI2RlZmluZSBNRU1fU1RPUkU0 KFZBLCBEQVRBLCBTTE9UKSBsb2dfc3RvcmUzMihlbnYsIFZBLCBEQVRBLCA0LCBTTE9UKQpAQCAt NTMwLDggKzUyMSwxNiBAQCBzdGF0aWMgaW5saW5lIFRDR3YgZ2VuX3JlYWRfaXJlZyhUQ0d2IHJl c3VsdCwgVENHdiB2YWwsIGludCBzaGlmdCkKICNpZmRlZiBRRU1VX0dFTkVSQVRFCiAjZGVmaW5l IGZMT0FEKE5VTSwgU0laRSwgU0lHTiwgRUEsIERTVCkgTUVNX0xPQUQjI1NJWkUjI1NJR04oRFNU LCBFQSkKICNlbHNlCisjZGVmaW5lIE1FTV9MT0FEMSBjcHVfbGR1Yl9kYXRhX3JhCisjZGVmaW5l IE1FTV9MT0FEMiBjcHVfbGR1d19kYXRhX3JhCisjZGVmaW5lIE1FTV9MT0FENCBjcHVfbGRsX2Rh dGFfcmEKKyNkZWZpbmUgTUVNX0xPQUQ4IGNwdV9sZHFfZGF0YV9yYQorCiAjZGVmaW5lIGZMT0FE KE5VTSwgU0laRSwgU0lHTiwgRUEsIERTVCkgXAotICAgIERTVCA9IChzaXplIyNTSVpFIyNTSUdO IyNfdClNRU1fTE9BRCMjU0laRSMjU0lHTihFQSkKKyAgICBkbyB7IFwKKyAgICAgICAgY2hlY2tf bm9zaHVmKGVudiwgcGt0X2hhc19zdG9yZV9zMSwgc2xvdCwgRUEsIFNJWkUsIEdFVFBDKCkpOyBc CisgICAgICAgIERTVCA9IChzaXplIyNTSVpFIyNTSUdOIyNfdClNRU1fTE9BRCMjU0laRShlbnYs IEVBLCBHRVRQQygpKTsgXAorICAgIH0gd2hpbGUgKDApCiAjZW5kaWYKIAogI2RlZmluZSBmTUVN T1AoTlVNLCBTSVpFLCBTSUdOLCBFQSwgRk5UWVBFLCBWQUxVRSkKZGlmZiAtLWdpdCBhL3Rhcmdl dC9oZXhhZ29uL29wX2hlbHBlci5jIGIvdGFyZ2V0L2hleGFnb24vb3BfaGVscGVyLmMKaW5kZXgg MTI5NjdhYzIxZS4uOGNhMzk3NmE2NSAxMDA2NDQKLS0tIGEvdGFyZ2V0L2hleGFnb24vb3BfaGVs cGVyLmMKKysrIGIvdGFyZ2V0L2hleGFnb24vb3BfaGVscGVyLmMKQEAgLTk1LDkgKzk1LDggQEAg dm9pZCBIRUxQRVIoZGVidWdfY2hlY2tfc3RvcmVfd2lkdGgpKENQVUhleGFnb25TdGF0ZSAqZW52 LCBpbnQgc2xvdCwgaW50IGNoZWNrKQogICAgIH0KIH0KIAotdm9pZCBIRUxQRVIoY29tbWl0X3N0 b3JlKShDUFVIZXhhZ29uU3RhdGUgKmVudiwgaW50IHNsb3RfbnVtKQorc3RhdGljIHZvaWQgY29t bWl0X3N0b3JlKENQVUhleGFnb25TdGF0ZSAqZW52LCBpbnQgc2xvdF9udW0sIHVpbnRwdHJfdCBy YSkKIHsKLSAgICB1aW50cHRyX3QgcmEgPSBHRVRQQygpOwogICAgIHVpbnQ4X3Qgd2lkdGggPSBl bnYtPm1lbV9sb2dfc3RvcmVzW3Nsb3RfbnVtXS53aWR0aDsKICAgICB0YXJnZXRfdWxvbmcgdmEg PSBlbnYtPm1lbV9sb2dfc3RvcmVzW3Nsb3RfbnVtXS52YTsKIApAQCAtMTE5LDYgKzExOCwxMiBA QCB2b2lkIEhFTFBFUihjb21taXRfc3RvcmUpKENQVUhleGFnb25TdGF0ZSAqZW52LCBpbnQgc2xv dF9udW0pCiAgICAgfQogfQogCit2b2lkIEhFTFBFUihjb21taXRfc3RvcmUpKENQVUhleGFnb25T dGF0ZSAqZW52LCBpbnQgc2xvdF9udW0pCit7CisgICAgdWludHB0cl90IHJhID0gR0VUUEMoKTsK KyAgICBjb21taXRfc3RvcmUoZW52LCBzbG90X251bSwgcmEpOworfQorCiB2b2lkIEhFTFBFUihn YXRoZXJfc3RvcmUpKENQVUhleGFnb25TdGF0ZSAqZW52LCB1aW50MzJfdCBhZGRyLCBpbnQgc2xv dCkKIHsKICAgICBtZW1fZ2F0aGVyX3N0b3JlKGVudiwgYWRkciwgc2xvdCk7CkBAIC00NjcsMTMg KzQ3MiwxMiBAQCBpbnQzMl90IEhFTFBFUihjYWJhY2RlY2Jpbl9wcmVkKShpbnQ2NF90IFJzc1Ys IGludDY0X3QgUnR0VikKIH0KIAogc3RhdGljIHZvaWQgcHJvYmVfc3RvcmUoQ1BVSGV4YWdvblN0 YXRlICplbnYsIGludCBzbG90LCBpbnQgbW11X2lkeCwKLSAgICAgICAgICAgICAgICAgICAgICAg IGJvb2wgaXNfcHJlZGljYXRlZCkKKyAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNfcHJl ZGljYXRlZCwgdWludHB0cl90IHJldGFkZHIpCiB7CiAgICAgaWYgKCFpc19wcmVkaWNhdGVkIHx8 ICEoZW52LT5zbG90X2NhbmNlbGxlZCAmICgxIDw8IHNsb3QpKSkgewogICAgICAgICBzaXplMXVf dCB3aWR0aCA9IGVudi0+bWVtX2xvZ19zdG9yZXNbc2xvdF0ud2lkdGg7CiAgICAgICAgIHRhcmdl dF91bG9uZyB2YSA9IGVudi0+bWVtX2xvZ19zdG9yZXNbc2xvdF0udmE7Ci0gICAgICAgIHVpbnRw dHJfdCByYSA9IEdFVFBDKCk7Ci0gICAgICAgIHByb2JlX3dyaXRlKGVudiwgdmEsIHdpZHRoLCBt bXVfaWR4LCByYSk7CisgICAgICAgIHByb2JlX3dyaXRlKGVudiwgdmEsIHdpZHRoLCBtbXVfaWR4 LCByZXRhZGRyKTsKICAgICB9CiB9CiAKQEAgLTQ5NCwxMiArNDk4LDEzIEBAIHZvaWQgSEVMUEVS KHByb2JlX3BrdF9zY2FsYXJfc3RvcmVfczApKENQVUhleGFnb25TdGF0ZSAqZW52LCBpbnQgYXJn cykKICAgICBpbnQgbW11X2lkeCA9IEZJRUxEX0VYMzIoYXJncywgUFJPQkVfUEtUX1NDQUxBUl9T VE9SRV9TMCwgTU1VX0lEWCk7CiAgICAgYm9vbCBpc19wcmVkaWNhdGVkID0KICAgICAgICAgRklF TERfRVgzMihhcmdzLCBQUk9CRV9QS1RfU0NBTEFSX1NUT1JFX1MwLCBJU19QUkVESUNBVEVEKTsK LSAgICBwcm9iZV9zdG9yZShlbnYsIDAsIG1tdV9pZHgsIGlzX3ByZWRpY2F0ZWQpOworICAgIHVp bnRwdHJfdCByYSA9IEdFVFBDKCk7CisgICAgcHJvYmVfc3RvcmUoZW52LCAwLCBtbXVfaWR4LCBp c19wcmVkaWNhdGVkLCByYSk7CiB9CiAKLXZvaWQgSEVMUEVSKHByb2JlX2h2eF9zdG9yZXMpKENQ VUhleGFnb25TdGF0ZSAqZW52LCBpbnQgbW11X2lkeCkKK3N0YXRpYyB2b2lkIHByb2JlX2h2eF9z dG9yZXMoQ1BVSGV4YWdvblN0YXRlICplbnYsIGludCBtbXVfaWR4LAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdWludHB0cl90IHJldGFkZHIpCiB7Ci0gICAgdWludHB0cl90 IHJldGFkZHIgPSBHRVRQQygpOwogICAgIGludCBpOwogCiAgICAgLyogTm9ybWFsIChwb3NzaWJs eSBtYXNrZWQpIHZlY3RvciBzdG9yZSAqLwpAQCAtNTM4LDYgKzU0MywxMiBAQCB2b2lkIEhFTFBF Uihwcm9iZV9odnhfc3RvcmVzKShDUFVIZXhhZ29uU3RhdGUgKmVudiwgaW50IG1tdV9pZHgpCiAg ICAgfQogfQogCit2b2lkIEhFTFBFUihwcm9iZV9odnhfc3RvcmVzKShDUFVIZXhhZ29uU3RhdGUg KmVudiwgaW50IG1tdV9pZHgpCit7CisgICAgdWludHB0cl90IHJldGFkZHIgPSBHRVRQQygpOwor ICAgIHByb2JlX2h2eF9zdG9yZXMoZW52LCBtbXVfaWR4LCByZXRhZGRyKTsKK30KKwogdm9pZCBI RUxQRVIocHJvYmVfcGt0X3NjYWxhcl9odnhfc3RvcmVzKShDUFVIZXhhZ29uU3RhdGUgKmVudiwg aW50IG1hc2spCiB7CiAgICAgYm9vbCBoYXNfc3QwID0gRklFTERfRVgzMihtYXNrLCBQUk9CRV9Q S1RfU0NBTEFSX0hWWF9TVE9SRVMsIEhBU19TVDApOwpAQCAtNTQ3LDE4ICs1NTgsMjAgQEAgdm9p ZCBIRUxQRVIocHJvYmVfcGt0X3NjYWxhcl9odnhfc3RvcmVzKShDUFVIZXhhZ29uU3RhdGUgKmVu diwgaW50IG1hc2spCiAgICAgYm9vbCBzMF9pc19wcmVkID0gRklFTERfRVgzMihtYXNrLCBQUk9C RV9QS1RfU0NBTEFSX0hWWF9TVE9SRVMsIFMwX0lTX1BSRUQpOwogICAgIGJvb2wgczFfaXNfcHJl ZCA9IEZJRUxEX0VYMzIobWFzaywgUFJPQkVfUEtUX1NDQUxBUl9IVlhfU1RPUkVTLCBTMV9JU19Q UkVEKTsKICAgICBpbnQgbW11X2lkeCA9IEZJRUxEX0VYMzIobWFzaywgUFJPQkVfUEtUX1NDQUxB Ul9IVlhfU1RPUkVTLCBNTVVfSURYKTsKKyAgICB1aW50cHRyX3QgcmEgPSBHRVRQQygpOwogCiAg ICAgaWYgKGhhc19zdDApIHsKLSAgICAgICAgcHJvYmVfc3RvcmUoZW52LCAwLCBtbXVfaWR4LCBz MF9pc19wcmVkKTsKKyAgICAgICAgcHJvYmVfc3RvcmUoZW52LCAwLCBtbXVfaWR4LCBzMF9pc19w cmVkLCByYSk7CiAgICAgfQogICAgIGlmIChoYXNfc3QxKSB7Ci0gICAgICAgIHByb2JlX3N0b3Jl KGVudiwgMSwgbW11X2lkeCwgczFfaXNfcHJlZCk7CisgICAgICAgIHByb2JlX3N0b3JlKGVudiwg MSwgbW11X2lkeCwgczFfaXNfcHJlZCwgcmEpOwogICAgIH0KICAgICBpZiAoaGFzX2h2eF9zdG9y ZXMpIHsKLSAgICAgICAgSEVMUEVSKHByb2JlX2h2eF9zdG9yZXMpKGVudiwgbW11X2lkeCk7Cisg ICAgICAgIHByb2JlX2h2eF9zdG9yZXMoZW52LCBtbXVfaWR4LCByYSk7CiAgICAgfQogfQogCisj aWZuZGVmIENPTkZJR19IRVhBR09OX0lERUZfUEFSU0VSCiAvKgogICogbWVtX25vc2h1ZgogICog U2VjdGlvbiA1LjUgb2YgdGhlIEhleGFnb24gVjY3IFByb2dyYW1tZXIncyBSZWZlcmVuY2UgTWFu dWFsCkBAIC01NjcsNDYgKzU4MCwxNiBAQCB2b2lkIEhFTFBFUihwcm9iZV9wa3Rfc2NhbGFyX2h2 eF9zdG9yZXMpKENQVUhleGFnb25TdGF0ZSAqZW52LCBpbnQgbWFzaykKICAqIHdhc24ndCBjYW5j ZWxsZWQpLCB3ZSBoYXZlIHRvIGRvIHRoZSBzdG9yZSBmaXJzdC4KICAqLwogc3RhdGljIHZvaWQg Y2hlY2tfbm9zaHVmKENQVUhleGFnb25TdGF0ZSAqZW52LCBib29sIHBrdF9oYXNfc3RvcmVfczEs Ci0gICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc2xvdCwgdGFyZ2V0X3Vsb25nIHZh ZGRyLCBpbnQgc2l6ZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzbG90LCB0 YXJnZXRfdWxvbmcgdmFkZHIsIGludCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgIHVp bnRwdHJfdCByYSkKIHsKICAgICBpZiAoc2xvdCA9PSAwICYmIHBrdF9oYXNfc3RvcmVfczEgJiYK ICAgICAgICAgKChlbnYtPnNsb3RfY2FuY2VsbGVkICYgKDEgPDwgMSkpID09IDApKSB7Ci0gICAg ICAgIEhFTFBFUihwcm9iZV9ub3NodWZfbG9hZCkoZW52LCB2YWRkciwgc2l6ZSwgTU1VX1VTRVJf SURYKTsKLSAgICAgICAgSEVMUEVSKGNvbW1pdF9zdG9yZSkoZW52LCAxKTsKKyAgICAgICAgcHJv YmVfcmVhZChlbnYsIHZhZGRyLCBzaXplLCBNTVVfVVNFUl9JRFgsIHJhKTsKKyAgICAgICAgY29t bWl0X3N0b3JlKGVudiwgMSwgcmEpOwogICAgIH0KIH0KLQotdWludDhfdCBtZW1fbG9hZDEoQ1BV SGV4YWdvblN0YXRlICplbnYsIGJvb2wgcGt0X2hhc19zdG9yZV9zMSwKLSAgICAgICAgICAgICAg ICAgIHVpbnQzMl90IHNsb3QsIHRhcmdldF91bG9uZyB2YWRkcikKLXsKLSAgICB1aW50cHRyX3Qg cmEgPSBHRVRQQygpOwotICAgIGNoZWNrX25vc2h1ZihlbnYsIHBrdF9oYXNfc3RvcmVfczEsIHNs b3QsIHZhZGRyLCAxKTsKLSAgICByZXR1cm4gY3B1X2xkdWJfZGF0YV9yYShlbnYsIHZhZGRyLCBy YSk7Ci19Ci0KLXVpbnQxNl90IG1lbV9sb2FkMihDUFVIZXhhZ29uU3RhdGUgKmVudiwgYm9vbCBw a3RfaGFzX3N0b3JlX3MxLAotICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHNsb3QsIHRhcmdl dF91bG9uZyB2YWRkcikKLXsKLSAgICB1aW50cHRyX3QgcmEgPSBHRVRQQygpOwotICAgIGNoZWNr X25vc2h1ZihlbnYsIHBrdF9oYXNfc3RvcmVfczEsIHNsb3QsIHZhZGRyLCAyKTsKLSAgICByZXR1 cm4gY3B1X2xkdXdfZGF0YV9yYShlbnYsIHZhZGRyLCByYSk7Ci19Ci0KLXVpbnQzMl90IG1lbV9s b2FkNChDUFVIZXhhZ29uU3RhdGUgKmVudiwgYm9vbCBwa3RfaGFzX3N0b3JlX3MxLAotICAgICAg ICAgICAgICAgICAgIHVpbnQzMl90IHNsb3QsIHRhcmdldF91bG9uZyB2YWRkcikKLXsKLSAgICB1 aW50cHRyX3QgcmEgPSBHRVRQQygpOwotICAgIGNoZWNrX25vc2h1ZihlbnYsIHBrdF9oYXNfc3Rv cmVfczEsIHNsb3QsIHZhZGRyLCA0KTsKLSAgICByZXR1cm4gY3B1X2xkbF9kYXRhX3JhKGVudiwg dmFkZHIsIHJhKTsKLX0KLQotdWludDY0X3QgbWVtX2xvYWQ4KENQVUhleGFnb25TdGF0ZSAqZW52 LCBib29sIHBrdF9oYXNfc3RvcmVfczEsCi0gICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc2xv dCwgdGFyZ2V0X3Vsb25nIHZhZGRyKQotewotICAgIHVpbnRwdHJfdCByYSA9IEdFVFBDKCk7Ci0g ICAgY2hlY2tfbm9zaHVmKGVudiwgcGt0X2hhc19zdG9yZV9zMSwgc2xvdCwgdmFkZHIsIDgpOwot ICAgIHJldHVybiBjcHVfbGRxX2RhdGFfcmEoZW52LCB2YWRkciwgcmEpOwotfQorI2VuZGlmCiAK IC8qIEZsb2F0aW5nIHBvaW50ICovCiBmbG9hdDY0IEhFTFBFUihjb252X3NmMmRmKShDUFVIZXhh Z29uU3RhdGUgKmVudiwgZmxvYXQzMiBSc1YpCmRpZmYgLS1naXQgYS90YXJnZXQvaGV4YWdvbi9v cF9oZWxwZXIuaCBiL3RhcmdldC9oZXhhZ29uL29wX2hlbHBlci5oCmluZGV4IDhmMzc2NGQxNWUu LjY2MTE5Y2YzZDQgMTAwNjQ0Ci0tLSBhL3RhcmdldC9oZXhhZ29uL29wX2hlbHBlci5oCisrKyBi L3RhcmdldC9oZXhhZ29uL29wX2hlbHBlci5oCkBAIC0xOSwxNSArMTksNiBAQAogI2RlZmluZSBI RVhBR09OX09QX0hFTFBFUl9ICiAKIC8qIE1pc2MgZnVuY3Rpb25zICovCi11aW50OF90IG1lbV9s b2FkMShDUFVIZXhhZ29uU3RhdGUgKmVudiwgYm9vbCBwa3RfaGFzX3N0b3JlX3MxLAotICAgICAg ICAgICAgICAgICAgdWludDMyX3Qgc2xvdCwgdGFyZ2V0X3Vsb25nIHZhZGRyKTsKLXVpbnQxNl90 IG1lbV9sb2FkMihDUFVIZXhhZ29uU3RhdGUgKmVudiwgYm9vbCBwa3RfaGFzX3N0b3JlX3MxLAot ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHNsb3QsIHRhcmdldF91bG9uZyB2YWRkcik7Ci11 aW50MzJfdCBtZW1fbG9hZDQoQ1BVSGV4YWdvblN0YXRlICplbnYsIGJvb2wgcGt0X2hhc19zdG9y ZV9zMSwKLSAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzbG90LCB0YXJnZXRfdWxvbmcgdmFk ZHIpOwotdWludDY0X3QgbWVtX2xvYWQ4KENQVUhleGFnb25TdGF0ZSAqZW52LCBib29sIHBrdF9o YXNfc3RvcmVfczEsCi0gICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc2xvdCwgdGFyZ2V0X3Vs b25nIHZhZGRyKTsKLQogdm9pZCBsb2dfc3RvcmU2NChDUFVIZXhhZ29uU3RhdGUgKmVudiwgdGFy Z2V0X3Vsb25nIGFkZHIsCiAgICAgICAgICAgICAgICAgIGludDY0X3QgdmFsLCBpbnQgd2lkdGgs IGludCBzbG90KTsKIHZvaWQgbG9nX3N0b3JlMzIoQ1BVSGV4YWdvblN0YXRlICplbnYsIHRhcmdl dF91bG9uZyBhZGRyLAotLSAKMi4yNS4xCgo=