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 68FE8C4332F for ; Fri, 16 Dec 2022 21:08:53 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p6He1-0002md-Ny; Fri, 16 Dec 2022 15:49:25 -0500 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 1p6Hdy-0002kF-7M for qemu-devel@nongnu.org; Fri, 16 Dec 2022 15:49:22 -0500 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 1p6Hdu-0004P7-LZ for qemu-devel@nongnu.org; Fri, 16 Dec 2022 15:49:21 -0500 Received: from pps.filterd (m0279863.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 2BGKfPF7019389; Fri, 16 Dec 2022 20:49:15 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=WX091ZCtICcyzYOyFV5FmfAiF943n/jhqjWGLN4FvbM=; b=Ij+3cygB2vWApaAXxBZspTPSafaH20HGgaAIm5fw9VwX5lUJe/KXBtmJPtCieh/Rtgcw rOrZkV6XlhsIHxdpiAeGWqIgPQodmZugyNEzPqNNMVyvuUpsRkc4ERYmk/v7KKFeCSvw NK5MwND4FDtV9MMgAE2En5Z8vKUa8kl2bHJVdS+ZEJF3WuAUeb41GEc978HDaYNclBt1 xmhx/EEmbCHqTku6oHJgqd7GWC5cgFmvoqQVHRDGgeRQW25xiRZvHqGiukqyiWsMN+/Z MckgKJF9ZsKW2/ZjoPQc/GjigyDbAJjcXWPDFZrhBV0l12qtidzIe61pRJcG5JCn5/AL MA== Received: from nalasppmta05.qualcomm.com (Global_NAT1.qualcomm.com [129.46.96.20]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3mgmv11yr8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 16 Dec 2022 20:49:14 +0000 Received: from pps.filterd (NALASPPMTA05.qualcomm.com [127.0.0.1]) by NALASPPMTA05.qualcomm.com (8.17.1.5/8.17.1.5) with ESMTP id 2BGKgb9m020655; Fri, 16 Dec 2022 20:49:14 GMT Received: from pps.reinject (localhost [127.0.0.1]) by NALASPPMTA05.qualcomm.com (PPS) with ESMTP id 3mgwb1gmpp-1; Fri, 16 Dec 2022 20:49:14 +0000 Received: from NALASPPMTA05.qualcomm.com (NALASPPMTA05.qualcomm.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 2BGKg3r8019961; Fri, 16 Dec 2022 20:49:13 GMT Received: from hu-devc-lv-u18-c.qualcomm.com (hu-tsimpson-lv.qualcomm.com [10.47.235.220]) by NALASPPMTA05.qualcomm.com (PPS) with ESMTP id 2BGKnDBu028291; Fri, 16 Dec 2022 20:49:13 +0000 Received: by hu-devc-lv-u18-c.qualcomm.com (Postfix, from userid 47164) id E6C3D5000B9; Fri, 16 Dec 2022 12:49:12 -0800 (PST) From: Taylor Simpson To: qemu-devel@nongnu.org Cc: tsimpson@quicinc.com, richard.henderson@linaro.org, philmd@linaro.org, peter.maydell@linaro.org, bcain@quicinc.com, quic_mathbern@quicinc.com, stefanha@redhat.com Subject: [PULL 06/21] Hexagon (target/hexagon) Remove next_PC from runtime state Date: Fri, 16 Dec 2022 12:48:30 -0800 Message-Id: <20221216204845.19290-7-tsimpson@quicinc.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20221216204845.19290-1-tsimpson@quicinc.com> References: <20221216204845.19290-1-tsimpson@quicinc.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-QCInternal: smtphost X-QCInternal: smtphost X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=5800 signatures=585085 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=5800 signatures=585085 X-Proofpoint-GUID: 9oGEfe0qEo_xhjO5xuUcxdCv1_E95O15 X-Proofpoint-ORIG-GUID: 9oGEfe0qEo_xhjO5xuUcxdCv1_E95O15 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.923,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2022-12-16_14,2022-12-15_02,2022-06-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 mlxscore=0 mlxlogscore=958 adultscore=0 phishscore=0 impostorscore=0 malwarescore=0 suspectscore=0 spamscore=0 bulkscore=0 lowpriorityscore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2212160185 Received-SPF: pass client-ip=205.220.168.131; envelope-from=tsimpson@qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -24 X-Spam_score: -2.5 X-Spam_bar: -- X-Spam_report: (-2.5 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.25, RCVD_IN_DNSWL_LOW=-0.7, 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 VGhlIGltcG9ydGVkIGZpbGVzIGRvbid0IHByb3Blcmx5IG1hcmsgYWxsIENPTkRFWEVDIGluc3Ry dWN0aW9ucywgc28Kd2UgYWRkIHNvbWUgbG9naWMgdG8gaGV4X2NvbW1vbi5weSB0byBhZGQgdGhl IGF0dHJpYnV0ZS4KCkFja2VkLWJ5OiBSaWNoYXJkIEhlbmRlcnNvbiA8cmljaGFyZC5oZW5kZXJz b25AbGluYXJvLm9yZz4KU2lnbmVkLW9mZi1ieTogVGF5bG9yIFNpbXBzb24gPHRzaW1wc29uQHF1 aWNpbmMuY29tPgpNZXNzYWdlLUlkOiA8MjAyMjExMDgxNjI5MDYuMzE2Ni03LXRzaW1wc29uQHF1 aWNpbmMuY29tPgotLS0KIHRhcmdldC9oZXhhZ29uL2NwdS5oICAgICAgICAgICAgICAgIHwgIDEg LQogdGFyZ2V0L2hleGFnb24vZ2VuX3RjZy5oICAgICAgICAgICAgfCAgNiArKysrKysKIHRhcmdl dC9oZXhhZ29uL21hY3Jvcy5oICAgICAgICAgICAgIHwgIDIgKy0KIHRhcmdldC9oZXhhZ29uL3Ry YW5zbGF0ZS5oICAgICAgICAgIHwgIDIgKy0KIHRhcmdldC9oZXhhZ29uL29wX2hlbHBlci5jICAg ICAgICAgIHwgIDYgKysrLS0tCiB0YXJnZXQvaGV4YWdvbi90cmFuc2xhdGUuYyAgICAgICAgICB8 IDI5ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tCiB0YXJnZXQvaGV4YWdvbi9nZW5faGVs cGVyX2Z1bmNzLnB5ICB8ICA0ICsrKysKIHRhcmdldC9oZXhhZ29uL2dlbl9oZWxwZXJfcHJvdG9z LnB5IHwgIDMgKysrCiB0YXJnZXQvaGV4YWdvbi9nZW5fdGNnX2Z1bmNzLnB5ICAgICB8ICAzICsr KwogdGFyZ2V0L2hleGFnb24vaGV4X2NvbW1vbi5weSAgICAgICAgfCAyMSArKysrKysrKysrKysr KysrKysrKysKIDEwIGZpbGVzIGNoYW5nZWQsIDY1IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3RhcmdldC9oZXhhZ29uL2NwdS5oIGIvdGFyZ2V0L2hleGFnb24v Y3B1LmgKaW5kZXggMmE2NWE1N2JhYi4uZmY4YzI2MjcyZCAxMDA2NDQKLS0tIGEvdGFyZ2V0L2hl eGFnb24vY3B1LmgKKysrIGIvdGFyZ2V0L2hleGFnb24vY3B1LmgKQEAgLTc4LDcgKzc4LDYgQEAg dHlwZWRlZiBzdHJ1Y3QgQ1BVQXJjaFN0YXRlIHsKICAgICB0YXJnZXRfdWxvbmcgZ3ByW1RPVEFM X1BFUl9USFJFQURfUkVHU107CiAgICAgdGFyZ2V0X3Vsb25nIHByZWRbTlVNX1BSRUdTXTsKICAg ICB0YXJnZXRfdWxvbmcgYnJhbmNoX3Rha2VuOwotICAgIHRhcmdldF91bG9uZyBuZXh0X1BDOwog CiAgICAgLyogRm9yIGNvbXBhcmluZyB3aXRoIExMREIgb24gdGFyZ2V0IC0gc2VlIGFkanVzdF9z dGFja19wdHJzIGZ1bmN0aW9uICovCiAgICAgdGFyZ2V0X3Vsb25nIGxhc3RfcGNfZHVtcGVkOwpk aWZmIC0tZ2l0IGEvdGFyZ2V0L2hleGFnb24vZ2VuX3RjZy5oIGIvdGFyZ2V0L2hleGFnb24vZ2Vu X3RjZy5oCmluZGV4IGQzOGRiNzJjZTkuLmRmMjc5YWI0M2IgMTAwNjQ0Ci0tLSBhL3RhcmdldC9o ZXhhZ29uL2dlbl90Y2cuaAorKysgYi90YXJnZXQvaGV4YWdvbi9nZW5fdGNnLmgKQEAgLTYxMiw2 ICs2MTIsMTIgQEAKICAgICAgICAgdGNnX3RlbXBfZnJlZSh0bXApOyBcCiAgICAgfSB3aGlsZSAo MCkKIAorI2RlZmluZSBmR0VOX1RDR19KMl9wYXVzZShTSE9SVENPREUpIFwKKyAgICBkbyB7IFwK KyAgICAgICAgdWlWID0gdWlWOyBcCisgICAgICAgIHRjZ19nZW5fbW92aV90bChoZXhfZ3ByW0hF WF9SRUdfUENdLCBjdHgtPm5leHRfUEMpOyBcCisgICAgfSB3aGlsZSAoMCkKKwogLyogcjAgPSBh c3IocjEsIHIyKTpzYXQgKi8KICNkZWZpbmUgZkdFTl9UQ0dfUzJfYXNyX3Jfcl9zYXQoU0hPUlRD T0RFKSBcCiAgICAgZ2VuX2Fzcl9yX3Jfc2F0KFJkViwgUnNWLCBSdFYpCmRpZmYgLS1naXQgYS90 YXJnZXQvaGV4YWdvbi9tYWNyb3MuaCBiL3RhcmdldC9oZXhhZ29uL21hY3Jvcy5oCmluZGV4IDZl N2E2YTE1NmEuLjkwMzUwMzU0MGUgMTAwNjQ0Ci0tLSBhL3RhcmdldC9oZXhhZ29uL21hY3Jvcy5o CisrKyBiL3RhcmdldC9oZXhhZ29uL21hY3Jvcy5oCkBAIC00MDAsNyArNDAwLDcgQEAgc3RhdGlj IGlubGluZSBUQ0d2IGdlbl9yZWFkX2lyZWcoVENHdiByZXN1bHQsIFRDR3YgdmFsLCBpbnQgc2hp ZnQpCiAjZW5kaWYKICNkZWZpbmUgZlJFQURfUEMoKSAoUEMpCiAKLSNkZWZpbmUgZlJFQURfTlBD KCkgKGVudi0+bmV4dF9QQyAmICgweGZmZmZmZmZlKSkKKyNkZWZpbmUgZlJFQURfTlBDKCkgKG5l eHRfUEMgJiAoMHhmZmZmZmZmZSkpCiAKICNkZWZpbmUgZlJFQURfUDAoKSAoUkVBRF9QUkVHKDAp KQogI2RlZmluZSBmUkVBRF9QMygpIChSRUFEX1BSRUcoMykpCmRpZmYgLS1naXQgYS90YXJnZXQv aGV4YWdvbi90cmFuc2xhdGUuaCBiL3RhcmdldC9oZXhhZ29uL3RyYW5zbGF0ZS5oCmluZGV4IGI4 ZmNmNjE1ZTguLjk2NTA5YTRkYTcgMTAwNjQ0Ci0tLSBhL3RhcmdldC9oZXhhZ29uL3RyYW5zbGF0 ZS5oCisrKyBiL3RhcmdldC9oZXhhZ29uL3RyYW5zbGF0ZS5oCkBAIC0zMCw2ICszMCw3IEBAIHR5 cGVkZWYgc3RydWN0IERpc2FzQ29udGV4dCB7CiAgICAgRGlzYXNDb250ZXh0QmFzZSBiYXNlOwog ICAgIFBhY2tldCAqcGt0OwogICAgIEluc24gKmluc247CisgICAgdWludDMyX3QgbmV4dF9QQzsK ICAgICB1aW50MzJfdCBtZW1faWR4OwogICAgIHVpbnQzMl90IG51bV9wYWNrZXRzOwogICAgIHVp bnQzMl90IG51bV9pbnNuczsKQEAgLTEzNCw3ICsxMzUsNiBAQCBzdGF0aWMgaW5saW5lIHZvaWQg Y3R4X2xvZ19xcmVnX3dyaXRlKERpc2FzQ29udGV4dCAqY3R4LAogCiBleHRlcm4gVENHdiBoZXhf Z3ByW1RPVEFMX1BFUl9USFJFQURfUkVHU107CiBleHRlcm4gVENHdiBoZXhfcHJlZFtOVU1fUFJF R1NdOwotZXh0ZXJuIFRDR3YgaGV4X25leHRfUEM7CiBleHRlcm4gVENHdiBoZXhfdGhpc19QQzsK IGV4dGVybiBUQ0d2IGhleF9zbG90X2NhbmNlbGxlZDsKIGV4dGVybiBUQ0d2IGhleF9icmFuY2hf dGFrZW47CmRpZmYgLS1naXQgYS90YXJnZXQvaGV4YWdvbi9vcF9oZWxwZXIuYyBiL3RhcmdldC9o ZXhhZ29uL29wX2hlbHBlci5jCmluZGV4IDg0MzkxZTI1ZWIuLmFhZDAxOTVlYjYgMTAwNjQ0Ci0t LSBhL3RhcmdldC9oZXhhZ29uL29wX2hlbHBlci5jCisrKyBiL3RhcmdldC9oZXhhZ29uL29wX2hl bHBlci5jCkBAIC0xMTksMTIgKzExOSwxMiBAQCBzdGF0aWMgdm9pZCB3cml0ZV9uZXdfcGMoQ1BV SGV4YWdvblN0YXRlICplbnYsIGJvb2wgcGt0X2hhc19tdWx0aV9jb2YsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICJpZ25vcmluZyB0aGUgc2Vjb25kIG9uZVxuIik7CiAgICAgICAgIH0gZWxz ZSB7CiAgICAgICAgICAgICBmQ0hFQ0tfUENBTElHTihhZGRyKTsKLSAgICAgICAgICAgIGVudi0+ bmV4dF9QQyA9IGFkZHI7CisgICAgICAgICAgICBlbnYtPmdwcltIRVhfUkVHX1BDXSA9IGFkZHI7 CiAgICAgICAgICAgICBlbnYtPmJyYW5jaF90YWtlbiA9IDE7CiAgICAgICAgIH0KICAgICB9IGVs c2UgewogICAgICAgICBmQ0hFQ0tfUENBTElHTihhZGRyKTsKLSAgICAgICAgZW52LT5uZXh0X1BD ID0gYWRkcjsKKyAgICAgICAgZW52LT5ncHJbSEVYX1JFR19QQ10gPSBhZGRyOwogICAgIH0KIH0K IApAQCAtMjk5LDcgKzI5OSw3IEBAIHZvaWQgSEVMUEVSKGRlYnVnX2NvbW1pdF9lbmQpKENQVUhl eGFnb25TdGF0ZSAqZW52LCBpbnQgaGFzX3N0MCwgaW50IGhhc19zdDEpCiAgICAgICAgIH0KICAg ICB9CiAKLSAgICBIRVhfREVCVUdfTE9HKCJOZXh0IFBDID0gIiBUQVJHRVRfRk1UX2x4ICJcbiIs IGVudi0+bmV4dF9QQyk7CisgICAgSEVYX0RFQlVHX0xPRygiTmV4dCBQQyA9ICIgVEFSR0VUX0ZN VF9seCAiXG4iLCBlbnYtPmdwcltIRVhfUkVHX1BDXSk7CiAgICAgSEVYX0RFQlVHX0xPRygiRXhl YyBjb3VudGVyczogcGt0ID0gIiBUQVJHRVRfRk1UX2x4CiAgICAgICAgICAgICAgICAgICAiLCBp bnNuID0gIiBUQVJHRVRfRk1UX2x4CiAgICAgICAgICAgICAgICAgICAiLCBodnggPSAiIFRBUkdF VF9GTVRfbHggIlxuIiwKZGlmZiAtLWdpdCBhL3RhcmdldC9oZXhhZ29uL3RyYW5zbGF0ZS5jIGIv dGFyZ2V0L2hleGFnb24vdHJhbnNsYXRlLmMKaW5kZXggOWVmYzZjODhhYS4uZmE2NDE1OTM2YyAx MDA2NDQKLS0tIGEvdGFyZ2V0L2hleGFnb24vdHJhbnNsYXRlLmMKKysrIGIvdGFyZ2V0L2hleGFn b24vdHJhbnNsYXRlLmMKQEAgLTMxLDcgKzMxLDYgQEAKIAogVENHdiBoZXhfZ3ByW1RPVEFMX1BF Ul9USFJFQURfUkVHU107CiBUQ0d2IGhleF9wcmVkW05VTV9QUkVHU107Ci1UQ0d2IGhleF9uZXh0 X1BDOwogVENHdiBoZXhfdGhpc19QQzsKIFRDR3YgaGV4X3Nsb3RfY2FuY2VsbGVkOwogVENHdiBo ZXhfYnJhbmNoX3Rha2VuOwpAQCAtMTIwLDcgKzExOSw2IEBAIHN0YXRpYyB2b2lkIGdlbl9leGVj X2NvdW50ZXJzKERpc2FzQ29udGV4dCAqY3R4KQogc3RhdGljIHZvaWQgZ2VuX2VuZF90YihEaXNh c0NvbnRleHQgKmN0eCkKIHsKICAgICBnZW5fZXhlY19jb3VudGVycyhjdHgpOwotICAgIHRjZ19n ZW5fbW92X3RsKGhleF9ncHJbSEVYX1JFR19QQ10sIGhleF9uZXh0X1BDKTsKICAgICB0Y2dfZ2Vu X2V4aXRfdGIoTlVMTCwgMCk7CiAgICAgY3R4LT5iYXNlLmlzX2ptcCA9IERJU0FTX05PUkVUVVJO OwogfQpAQCAtMTI4LDcgKzEyNiw3IEBAIHN0YXRpYyB2b2lkIGdlbl9lbmRfdGIoRGlzYXNDb250 ZXh0ICpjdHgpCiBzdGF0aWMgdm9pZCBnZW5fZXhjZXB0aW9uX2VuZF90YihEaXNhc0NvbnRleHQg KmN0eCwgaW50IGV4Y3ApCiB7CiAgICAgZ2VuX2V4ZWNfY291bnRlcnMoY3R4KTsKLSAgICB0Y2df Z2VuX21vdl90bChoZXhfZ3ByW0hFWF9SRUdfUENdLCBoZXhfbmV4dF9QQyk7CisgICAgdGNnX2dl bl9tb3ZpX3RsKGhleF9ncHJbSEVYX1JFR19QQ10sIGN0eC0+bmV4dF9QQyk7CiAgICAgZ2VuX2V4 Y2VwdGlvbl9yYXcoZXhjcCk7CiAgICAgY3R4LT5iYXNlLmlzX2ptcCA9IERJU0FTX05PUkVUVVJO OwogCkBAIC0yMDQsNiArMjAyLDI0IEBAIHN0YXRpYyBib29sIG5lZWRfcHJlZF93cml0dGVuKFBh Y2tldCAqcGt0KQogICAgIHJldHVybiBjaGVja19mb3JfYXR0cmliKHBrdCwgQV9XUklURVNfUFJF RF9SRUcpOwogfQogCitzdGF0aWMgYm9vbCBuZWVkX25leHRfUEMoRGlzYXNDb250ZXh0ICpjdHgp Cit7CisgICAgUGFja2V0ICpwa3QgPSBjdHgtPnBrdDsKKworICAgIC8qIENoZWNrIGZvciBjb25k aXRpb25hbCBjb250cm9sIGZsb3cgb3IgSFcgbG9vcCBlbmQgKi8KKyAgICBmb3IgKGludCBpID0g MDsgaSA8IHBrdC0+bnVtX2luc25zOyBpKyspIHsKKyAgICAgICAgdWludDE2X3Qgb3Bjb2RlID0g cGt0LT5pbnNuW2ldLm9wY29kZTsKKyAgICAgICAgaWYgKEdFVF9BVFRSSUIob3Bjb2RlLCBBX0NP TkRFWEVDKSAmJiBHRVRfQVRUUklCKG9wY29kZSwgQV9DT0YpKSB7CisgICAgICAgICAgICByZXR1 cm4gdHJ1ZTsKKyAgICAgICAgfQorICAgICAgICBpZiAoR0VUX0FUVFJJQihvcGNvZGUsIEFfSFdM T09QMF9FTkQpIHx8CisgICAgICAgICAgICBHRVRfQVRUUklCKG9wY29kZSwgQV9IV0xPT1AxX0VO RCkpIHsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICB9CisgICAgfQorICAgIHJl dHVybiBmYWxzZTsKK30KKwogc3RhdGljIHZvaWQgZ2VuX3N0YXJ0X3BhY2tldChEaXNhc0NvbnRl eHQgKmN0eCkKIHsKICAgICBQYWNrZXQgKnBrdCA9IGN0eC0+cGt0OwpAQCAtMjExLDYgKzIyNyw3 IEBAIHN0YXRpYyB2b2lkIGdlbl9zdGFydF9wYWNrZXQoRGlzYXNDb250ZXh0ICpjdHgpCiAgICAg aW50IGk7CiAKICAgICAvKiBDbGVhciBvdXQgdGhlIGRpc2Fzc2VtYmx5IGNvbnRleHQgKi8KKyAg ICBjdHgtPm5leHRfUEMgPSBuZXh0X1BDOwogICAgIGN0eC0+cmVnX2xvZ19pZHggPSAwOwogICAg IGJpdG1hcF96ZXJvKGN0eC0+cmVnc193cml0dGVuLCBUT1RBTF9QRVJfVEhSRUFEX1JFR1MpOwog ICAgIGN0eC0+cHJlZ19sb2dfaWR4ID0gMDsKQEAgLTI0Myw3ICsyNjAsOSBAQCBzdGF0aWMgdm9p ZCBnZW5fc3RhcnRfcGFja2V0KERpc2FzQ29udGV4dCAqY3R4KQogICAgICAgICBpZiAocGt0LT5w a3RfaGFzX211bHRpX2NvZikgewogICAgICAgICAgICAgdGNnX2dlbl9tb3ZpX3RsKGhleF9icmFu Y2hfdGFrZW4sIDApOwogICAgICAgICB9Ci0gICAgICAgIHRjZ19nZW5fbW92aV90bChoZXhfbmV4 dF9QQywgbmV4dF9QQyk7CisgICAgICAgIGlmIChuZWVkX25leHRfUEMoY3R4KSkgeworICAgICAg ICAgICAgdGNnX2dlbl9tb3ZpX3RsKGhleF9ncHJbSEVYX1JFR19QQ10sIG5leHRfUEMpOworICAg ICAgICB9CiAgICAgfQogICAgIGlmIChuZWVkX3ByZWRfd3JpdHRlbihwa3QpKSB7CiAgICAgICAg IHRjZ19nZW5fbW92aV90bChoZXhfcHJlZF93cml0dGVuLCAwKTsKQEAgLTkzNiw4ICs5NTUsNiBA QCB2b2lkIGhleGFnb25fdHJhbnNsYXRlX2luaXQodm9pZCkKICAgICB9CiAgICAgaGV4X3ByZWRf d3JpdHRlbiA9IHRjZ19nbG9iYWxfbWVtX25ldyhjcHVfZW52LAogICAgICAgICBvZmZzZXRvZihD UFVIZXhhZ29uU3RhdGUsIHByZWRfd3JpdHRlbiksICJwcmVkX3dyaXR0ZW4iKTsKLSAgICBoZXhf bmV4dF9QQyA9IHRjZ19nbG9iYWxfbWVtX25ldyhjcHVfZW52LAotICAgICAgICBvZmZzZXRvZihD UFVIZXhhZ29uU3RhdGUsIG5leHRfUEMpLCAibmV4dF9QQyIpOwogICAgIGhleF90aGlzX1BDID0g dGNnX2dsb2JhbF9tZW1fbmV3KGNwdV9lbnYsCiAgICAgICAgIG9mZnNldG9mKENQVUhleGFnb25T dGF0ZSwgdGhpc19QQyksICJ0aGlzX1BDIik7CiAgICAgaGV4X3Nsb3RfY2FuY2VsbGVkID0gdGNn X2dsb2JhbF9tZW1fbmV3KGNwdV9lbnYsCmRpZmYgLS1naXQgYS90YXJnZXQvaGV4YWdvbi9nZW5f aGVscGVyX2Z1bmNzLnB5IGIvdGFyZ2V0L2hleGFnb24vZ2VuX2hlbHBlcl9mdW5jcy5weQppbmRl eCAwMjRmNzBkMTY2Li4wMGVlNThmMTU5IDEwMDc1NQotLS0gYS90YXJnZXQvaGV4YWdvbi9nZW5f aGVscGVyX2Z1bmNzLnB5CisrKyBiL3RhcmdldC9oZXhhZ29uL2dlbl9oZWxwZXJfZnVuY3MucHkK QEAgLTI0NSw2ICsyNDUsMTAgQEAgZGVmIGdlbl9oZWxwZXJfZnVuY3Rpb24oZiwgdGFnLCB0YWdy ZWdzLCB0YWdpbW1zKToKICAgICAgICAgICAgIGlmIGkgPiAwOiBmLndyaXRlKCIsICIpCiAgICAg ICAgICAgICBmLndyaXRlKCJ0YXJnZXRfdWxvbmcgUEMiKQogICAgICAgICAgICAgaSArPSAxCisg ICAgICAgIGlmIGhleF9jb21tb24uaGVscGVyX25lZWRzX25leHRfUEModGFnKToKKyAgICAgICAg ICAgIGlmIGkgPiAwOiBmLndyaXRlKCIsICIpCisgICAgICAgICAgICBmLndyaXRlKCJ0YXJnZXRf dWxvbmcgbmV4dF9QQyIpCisgICAgICAgICAgICBpICs9IDEKICAgICAgICAgaWYgaGV4X2NvbW1v bi5uZWVkX3Nsb3QodGFnKToKICAgICAgICAgICAgIGlmIGkgPiAwOiBmLndyaXRlKCIsICIpCiAg ICAgICAgICAgICBmLndyaXRlKCJ1aW50MzJfdCBzbG90IikKZGlmZiAtLWdpdCBhL3RhcmdldC9o ZXhhZ29uL2dlbl9oZWxwZXJfcHJvdG9zLnB5IGIvdGFyZ2V0L2hleGFnb24vZ2VuX2hlbHBlcl9w cm90b3MucHkKaW5kZXggMDBjNDhkZmY3Yy4uZWQ0YjljZjBkNCAxMDA3NTUKLS0tIGEvdGFyZ2V0 L2hleGFnb24vZ2VuX2hlbHBlcl9wcm90b3MucHkKKysrIGIvdGFyZ2V0L2hleGFnb24vZ2VuX2hl bHBlcl9wcm90b3MucHkKQEAgLTg2LDYgKzg2LDcgQEAgZGVmIGdlbl9oZWxwZXJfcHJvdG90eXBl KGYsIHRhZywgdGFncmVncywgdGFnaW1tcyk6CiAgICAgICAgICAgICBpZiBoZXhfY29tbW9uLm5l ZWRfcGFydDEodGFnKTogZGVmX2hlbHBlcl9zaXplICs9IDEKICAgICAgICAgICAgIGlmIGhleF9j b21tb24ubmVlZF9zbG90KHRhZyk6IGRlZl9oZWxwZXJfc2l6ZSArPSAxCiAgICAgICAgICAgICBp ZiBoZXhfY29tbW9uLm5lZWRfUEModGFnKTogZGVmX2hlbHBlcl9zaXplICs9IDEKKyAgICAgICAg ICAgIGlmIGhleF9jb21tb24uaGVscGVyX25lZWRzX25leHRfUEModGFnKTogZGVmX2hlbHBlcl9z aXplICs9IDEKICAgICAgICAgICAgIGYud3JpdGUoJ0RFRl9IRUxQRVJfJXMoJXMnICUgKGRlZl9o ZWxwZXJfc2l6ZSwgdGFnKSkKICAgICAgICAgICAgICMjIFRoZSByZXR1cm4gdHlwZSBpcyB2b2lk CiAgICAgICAgICAgICBmLndyaXRlKCcsIHZvaWQnICkKQEAgLTk1LDYgKzk2LDcgQEAgZGVmIGdl bl9oZWxwZXJfcHJvdG90eXBlKGYsIHRhZywgdGFncmVncywgdGFnaW1tcyk6CiAgICAgICAgICAg ICBpZiBoZXhfY29tbW9uLm5lZWRfcGFydDEodGFnKTogZGVmX2hlbHBlcl9zaXplICs9IDEKICAg ICAgICAgICAgIGlmIGhleF9jb21tb24ubmVlZF9zbG90KHRhZyk6IGRlZl9oZWxwZXJfc2l6ZSAr PSAxCiAgICAgICAgICAgICBpZiBoZXhfY29tbW9uLm5lZWRfUEModGFnKTogZGVmX2hlbHBlcl9z aXplICs9IDEKKyAgICAgICAgICAgIGlmIGhleF9jb21tb24uaGVscGVyX25lZWRzX25leHRfUEMo dGFnKTogZGVmX2hlbHBlcl9zaXplICs9IDEKICAgICAgICAgICAgIGYud3JpdGUoJ0RFRl9IRUxQ RVJfJXMoJXMnICUgKGRlZl9oZWxwZXJfc2l6ZSwgdGFnKSkKIAogICAgICAgICAjIyBHZW5lcmF0 ZSB0aGUgcWVtdSBERUZfSEVMUEVSIHR5cGUgZm9yIGVhY2ggcmVzdWx0CkBAIC0xMzQsNiArMTM2 LDcgQEAgZGVmIGdlbl9oZWxwZXJfcHJvdG90eXBlKGYsIHRhZywgdGFncmVncywgdGFnaW1tcyk6 CiAgICAgICAgICMjIHBhcnQxIChpZiBuZWVkZWQpCiAgICAgICAgIGlmIGhleF9jb21tb24ubmVl ZF9wa3RfaGFzX211bHRpX2NvZih0YWcpOiBmLndyaXRlKCcsIGkzMicpCiAgICAgICAgIGlmIGhl eF9jb21tb24ubmVlZF9QQyh0YWcpOiBmLndyaXRlKCcsIGkzMicpCisgICAgICAgIGlmIGhleF9j b21tb24uaGVscGVyX25lZWRzX25leHRfUEModGFnKTogZi53cml0ZSgnLCBpMzInKQogICAgICAg ICBpZiBoZXhfY29tbW9uLm5lZWRfc2xvdCh0YWcpOiBmLndyaXRlKCcsIGkzMicgKQogICAgICAg ICBpZiBoZXhfY29tbW9uLm5lZWRfcGFydDEodGFnKTogZi53cml0ZSgnICwgaTMyJyApCiAgICAg ICAgIGYud3JpdGUoJylcbicpCmRpZmYgLS1naXQgYS90YXJnZXQvaGV4YWdvbi9nZW5fdGNnX2Z1 bmNzLnB5IGIvdGFyZ2V0L2hleGFnb24vZ2VuX3RjZ19mdW5jcy5weQppbmRleCA3ZGJkZGUzMTkx Li5mNGNlYTZkZmM0IDEwMDc1NQotLS0gYS90YXJnZXQvaGV4YWdvbi9nZW5fdGNnX2Z1bmNzLnB5 CisrKyBiL3RhcmdldC9oZXhhZ29uL2dlbl90Y2dfZnVuY3MucHkKQEAgLTYzMSw2ICs2MzEsOCBA QCBkZWYgZ2VuX3RjZ19mdW5jKGYsIHRhZywgcmVncywgaW1tcyk6CiAgICAgICAgICAgICBmLndy aXRlKCIgICAgVENHdiBzbG90ID0gdGNnX2NvbnN0YW50X3RsKGluc24tPnNsb3QpO1xuIikKICAg ICAgICAgaWYgaGV4X2NvbW1vbi5uZWVkX1BDKHRhZyk6CiAgICAgICAgICAgICBmLndyaXRlKCIg ICAgVENHdiBQQyA9IHRjZ19jb25zdGFudF90bChjdHgtPnBrdC0+cGMpO1xuIikKKyAgICAgICAg aWYgaGV4X2NvbW1vbi5oZWxwZXJfbmVlZHNfbmV4dF9QQyh0YWcpOgorICAgICAgICAgICAgZi53 cml0ZSgiICAgIFRDR3YgbmV4dF9QQyA9IHRjZ19jb25zdGFudF90bChjdHgtPm5leHRfUEMpO1xu IikKICAgICAgICAgZi53cml0ZSgiICAgIGdlbl9oZWxwZXJfJXMoIiAlICh0YWcpKQogICAgICAg ICBpPTAKICAgICAgICAgIyMgSWYgdGhlcmUgaXMgYSBzY2FsYXIgcmVzdWx0LCBpdCBpcyB0aGUg cmV0dXJuIHR5cGUKQEAgLTY2Miw2ICs2NjQsNyBAQCBkZWYgZ2VuX3RjZ19mdW5jKGYsIHRhZywg cmVncywgaW1tcyk6CiAgICAgICAgIGlmIGhleF9jb21tb24ubmVlZF9wa3RfaGFzX211bHRpX2Nv Zih0YWcpOgogICAgICAgICAgICAgZi53cml0ZSgiLCBwa3RfaGFzX211bHRpX2NvZiIpCiAgICAg ICAgIGlmIGhleF9jb21tb24ubmVlZF9QQyh0YWcpOiBmLndyaXRlKCIsIFBDIikKKyAgICAgICAg aWYgaGV4X2NvbW1vbi5oZWxwZXJfbmVlZHNfbmV4dF9QQyh0YWcpOiBmLndyaXRlKCIsIG5leHRf UEMiKQogICAgICAgICBpZiBoZXhfY29tbW9uLm5lZWRfc2xvdCh0YWcpOiBmLndyaXRlKCIsIHNs b3QiKQogICAgICAgICBpZiBoZXhfY29tbW9uLm5lZWRfcGFydDEodGFnKTogZi53cml0ZSgiLCBw YXJ0MSIgKQogICAgICAgICBmLndyaXRlKCIpO1xuIikKZGlmZiAtLWdpdCBhL3RhcmdldC9oZXhh Z29uL2hleF9jb21tb24ucHkgYi90YXJnZXQvaGV4YWdvbi9oZXhfY29tbW9uLnB5CmluZGV4IGNm ZTVmZTdiMzUuLjhlNjMxYjQ0NGYgMTAwNzU1Ci0tLSBhL3RhcmdldC9oZXhhZ29uL2hleF9jb21t b24ucHkKKysrIGIvdGFyZ2V0L2hleGFnb24vaGV4X2NvbW1vbi5weQpAQCAtNjYsNiArNjYsMTkg QEAgZGVmIGFkZF9xZW11X21hY3JvX2F0dHJpYihuYW1lLCBhdHRyaWIpOgogICAgIG1hY3Jvc1tu YW1lXS5hdHRyaWJzLmFkZChhdHRyaWIpCiAKIGltbWV4dHJlID0gcmUuY29tcGlsZShyJ2YoTVVT VF8pP0lNTUVYVFsoXShbVXVTc1JyXSknKQorCitkZWYgaXNfY29uZF9qdW1wKHRhZyk6CisgICAg aWYgdGFnID09ICdKMl9ydGUnOgorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBpZiAoJ0FfSFdM T09QMF9FTkQnIGluIGF0dHJpYmRpY3RbdGFnXSBvcgorICAgICAgICAnQV9IV0xPT1AxX0VORCcg aW4gYXR0cmliZGljdFt0YWddKToKKyAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgcmV0dXJuIFwK KyAgICAgICAgcmUuY29tcGlsZShyIihpZi4qZkJSQU5DSCl8KGlmLipmSlVNUFIpIikuc2VhcmNo KHNlbWRpY3RbdGFnXSkgIT0gTm9uZQorCitkZWYgaXNfY29uZF9jYWxsKHRhZyk6CisgICAgcmV0 dXJuIHJlLmNvbXBpbGUociIoaWYuKmZDQUxMKSIpLnNlYXJjaChzZW1kaWN0W3RhZ10pICE9IE5v bmUKKwogZGVmIGNhbGN1bGF0ZV9hdHRyaWJzKCk6CiAgICAgYWRkX3FlbXVfbWFjcm9fYXR0cmli KCdmUkVBRF9QQycsICdBX0lNUExJQ0lUX1JFQURTX1BDJykKICAgICBhZGRfcWVtdV9tYWNyb19h dHRyaWIoJ2ZUUkFQJywgJ0FfSU1QTElDSVRfUkVBRFNfUEMnKQpAQCAtOTYsNiArMTA5LDExIEBA IGRlZiBjYWxjdWxhdGVfYXR0cmlicygpOgogICAgICAgICBmb3IgcmVndHlwZSwgcmVnaWQsIHRv c3MsIG51bXJlZ3MgaW4gcmVnczoKICAgICAgICAgICAgIGlmIHJlZ3R5cGUgPT0gIlAiIGFuZCBp c193cml0dGVuKHJlZ2lkKToKICAgICAgICAgICAgICAgICBhdHRyaWJkaWN0W3RhZ10uYWRkKCdB X1dSSVRFU19QUkVEX1JFRycpCisgICAgIyBNYXJrIGNvbmRpdGlvbmFsIGp1bXBzIGFuZCBjYWxs cworICAgICMgICAgIE5vdCBhbGwgaW5zdHJ1Y3Rpb25zIGFyZSBwcm9wZXJseSBtYXJrZWQgd2l0 aCBBX0NPTkRFWEVDCisgICAgZm9yIHRhZyBpbiB0YWdzOgorICAgICAgICBpZiBpc19jb25kX2p1 bXAodGFnKSBvciBpc19jb25kX2NhbGwodGFnKToKKyAgICAgICAgICAgIGF0dHJpYmRpY3RbdGFn XS5hZGQoJ0FfQ09OREVYRUMnKQogCiBkZWYgU0VNQU5USUNTKHRhZywgYmVoLCBzZW0pOgogICAg ICNwcmludCB0YWcsYmVoLHNlbQpAQCAtMjExLDYgKzIyOSw5IEBAIGRlZiBuZWVkX2VhKHRhZyk6 CiBkZWYgbmVlZF9QQyh0YWcpOgogICAgIHJldHVybiAnQV9JTVBMSUNJVF9SRUFEU19QQycgaW4g YXR0cmliZGljdFt0YWddCiAKK2RlZiBoZWxwZXJfbmVlZHNfbmV4dF9QQyh0YWcpOgorICAgIHJl dHVybiAnQV9DQUxMJyBpbiBhdHRyaWJkaWN0W3RhZ10KKwogZGVmIG5lZWRfcGt0X2hhc19tdWx0 aV9jb2YodGFnKToKICAgICByZXR1cm4gJ0FfQ09GJyBpbiBhdHRyaWJkaWN0W3RhZ10KIAotLSAK Mi4xNy4xCgo=