From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by sourceware.org (Postfix) with ESMTP id A4D1F3858C54 for ; Fri, 12 May 2023 12:18:31 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org A4D1F3858C54 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id E4780FEC; Fri, 12 May 2023 05:19:15 -0700 (PDT) Received: from [10.57.73.43] (unknown [10.57.73.43]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 7C6803F67D; Fri, 12 May 2023 05:18:30 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------DWnEuZu5jmp2hGPgCxInihAE" Message-ID: Date: Fri, 12 May 2023 13:18:26 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: [PATCH 3/3] Remove widen_plus/minus_expr tree codes Content-Language: en-US To: Richard Biener Cc: Richard Biener , Richard Sandiford , "gcc-patches@gcc.gnu.org" References: <51ce8969-3130-452e-092e-f9d91eff2dad@arm.com> From: "Andre Vieira (lists)" In-Reply-To: X-Spam-Status: No, score=-15.7 required=5.0 tests=BAYES_00,GIT_PATCH_0,KAM_DMARC_NONE,KAM_DMARC_STATUS,KAM_LAZY_DOMAIN_SECURITY,KAM_LOTSOFHASH,NICE_REPLY_A,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This is a multi-part message in MIME format. --------------DWnEuZu5jmp2hGPgCxInihAE Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Moved the 'changes' from this patch back to the second so it's all just about removing code that we no longer use. I don't really know why Joel formatted the patches this way, but I thought I'd keep it as is for now. cover letter: This patch removes the old widen plus/minus tree codes which have been replaced by internal functions. gcc/ChangeLog: 2023-05-12 Andre Vieira Joel Hutton * cfgexpand.cc (expand_debug_expr): Remove old tree codes. * doc/generic.texi: Likewise. * expr.cc (expand_expr_real_2): Likewise. * gimple-pretty-print.cc (dump_binary_rhs): Likewise. * gimple-range-op.cc (gimple_range_op_handler::maybe_non_standard): Likewise. * optabs-tree.cc (optab_for_tree_code): Likewise. (supportable_half_widening_operation): Likewise. * optabs.cc (commutative_optab_p): Likewise. * optabs.def (OPTAB_D): Likewise. * tree-cfg.cc (verify_gimple_assign_binary): Likewise. * tree-inline.cc (estimate_operator_cost): Likewise. (op_symbol_code): Likewise. * tree-pretty-print.cc (dump_generic_node): Remove tree code definition. * tree-vect-data-refs.cc (vect_get_smallest_scalar_type): Likewise. (vect_analyze_data_ref_accesses): Likewise. * tree-vect-generic.cc (expand_vector_operations_1): Likewise. * tree-vect-stmts.cc (vectorizable_conversion): Likewise. (supportable_widening_operation): Likewise. * tree.def (WIDEN_PLUS_EXPR, WIDEN_MINUS_EXPR, VEC_WIDEN_PLUS_HI_EXPR, VEC_WIDEN_PLUS_LO_EXPR, VEC_WIDEN_MINUS_HI_EXPR, VEC_WIDEN_MINUS_LO_EXPR): Likewise. --------------DWnEuZu5jmp2hGPgCxInihAE Content-Type: text/plain; charset=UTF-8; name="ifn2v3.patch" Content-Disposition: attachment; filename="ifn2v3.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2djYy9jZmdleHBhbmQuY2MgYi9nY2MvY2ZnZXhwYW5kLmNjCmluZGV4 IDFhMWIyNmIxYzZjMjNjZTI3M2JjZDA4ZGM5YTk3M2Y3NzcxNzQwMDcuLjI1YjE1NThkY2I5 NDFlYTQ5MWExOWFlZWIyY2Q4ZjRkMmRiZGY3YzYgMTAwNjQ0Ci0tLSBhL2djYy9jZmdleHBh bmQuY2MKKysrIGIvZ2NjL2NmZ2V4cGFuZC5jYwpAQCAtNTM2NSwxMCArNTM2NSw2IEBAIGV4 cGFuZF9kZWJ1Z19leHByICh0cmVlIGV4cCkKICAgICBjYXNlIFZFQ19XSURFTl9NVUxUX09E RF9FWFBSOgogICAgIGNhc2UgVkVDX1dJREVOX0xTSElGVF9ISV9FWFBSOgogICAgIGNhc2Ug VkVDX1dJREVOX0xTSElGVF9MT19FWFBSOgotICAgIGNhc2UgVkVDX1dJREVOX1BMVVNfSElf RVhQUjoKLSAgICBjYXNlIFZFQ19XSURFTl9QTFVTX0xPX0VYUFI6Ci0gICAgY2FzZSBWRUNf V0lERU5fTUlOVVNfSElfRVhQUjoKLSAgICBjYXNlIFZFQ19XSURFTl9NSU5VU19MT19FWFBS OgogICAgIGNhc2UgVkVDX1BFUk1fRVhQUjoKICAgICBjYXNlIFZFQ19EVVBMSUNBVEVfRVhQ UjoKICAgICBjYXNlIFZFQ19TRVJJRVNfRVhQUjoKQEAgLTU0MDUsOCArNTQwMSw2IEBAIGV4 cGFuZF9kZWJ1Z19leHByICh0cmVlIGV4cCkKICAgICBjYXNlIFdJREVOX01VTFRfRVhQUjoK ICAgICBjYXNlIFdJREVOX01VTFRfUExVU19FWFBSOgogICAgIGNhc2UgV0lERU5fTVVMVF9N SU5VU19FWFBSOgotICAgIGNhc2UgV0lERU5fUExVU19FWFBSOgotICAgIGNhc2UgV0lERU5f TUlOVVNfRVhQUjoKICAgICAgIGlmIChTQ0FMQVJfSU5UX01PREVfUCAoR0VUX01PREUgKG9w MCkpCiAJICAmJiBTQ0FMQVJfSU5UX01PREVfUCAobW9kZSkpCiAJewpAQCAtNTQxOSwxMCAr NTQxMyw2IEBAIGV4cGFuZF9kZWJ1Z19leHByICh0cmVlIGV4cCkKIAkgICAgb3AxID0gc2lt cGxpZnlfZ2VuX3VuYXJ5IChaRVJPX0VYVEVORCwgbW9kZSwgb3AxLCBpbm5lcl9tb2RlKTsK IAkgIGVsc2UKIAkgICAgb3AxID0gc2ltcGxpZnlfZ2VuX3VuYXJ5IChTSUdOX0VYVEVORCwg bW9kZSwgb3AxLCBpbm5lcl9tb2RlKTsKLQkgIGlmIChUUkVFX0NPREUgKGV4cCkgPT0gV0lE RU5fUExVU19FWFBSKQotCSAgICByZXR1cm4gc2ltcGxpZnlfZ2VuX2JpbmFyeSAoUExVUywg bW9kZSwgb3AwLCBvcDEpOwotCSAgZWxzZSBpZiAoVFJFRV9DT0RFIChleHApID09IFdJREVO X01JTlVTX0VYUFIpCi0JICAgIHJldHVybiBzaW1wbGlmeV9nZW5fYmluYXJ5IChNSU5VUywg bW9kZSwgb3AwLCBvcDEpOwogCSAgb3AwID0gc2ltcGxpZnlfZ2VuX2JpbmFyeSAoTVVMVCwg bW9kZSwgb3AwLCBvcDEpOwogCSAgaWYgKFRSRUVfQ09ERSAoZXhwKSA9PSBXSURFTl9NVUxU X0VYUFIpCiAJICAgIHJldHVybiBvcDA7CmRpZmYgLS1naXQgYS9nY2MvZG9jL2dlbmVyaWMu dGV4aSBiL2djYy9kb2MvZ2VuZXJpYy50ZXhpCmluZGV4IDBmZDdlNmNjZThiYmQ0ZWNiODAy N2I3MDI3MjJhZGNmNmMzMmViNTUuLmEyM2Q1N2FmMjA2MTBlMGJiNDgwOWYwNmZiMGM5MTI1 M2FlNTZkMTEgMTAwNjQ0Ci0tLSBhL2djYy9kb2MvZ2VuZXJpYy50ZXhpCisrKyBiL2djYy9k b2MvZ2VuZXJpYy50ZXhpCkBAIC0xODE1LDEwICsxODE1LDYgQEAgYSB2YWx1ZSBmcm9tIEBj b2Rle2VudW0gYW5ub3RfZXhwcl9raW5kfSwgdGhlIHRoaXJkIGlzIGFuIEBjb2Rle0lOVEVH RVJfQ1NUfS4KIEB0aW5kZXggSUZOX1ZFQ19XSURFTl9QTFVTX0xPCiBAdGluZGV4IElGTl9W RUNfV0lERU5fTUlOVVNfSEkKIEB0aW5kZXggSUZOX1ZFQ19XSURFTl9NSU5VU19MTwotQHRp bmRleCBWRUNfV0lERU5fUExVU19ISV9FWFBSCi1AdGluZGV4IFZFQ19XSURFTl9QTFVTX0xP X0VYUFIKLUB0aW5kZXggVkVDX1dJREVOX01JTlVTX0hJX0VYUFIKLUB0aW5kZXggVkVDX1dJ REVOX01JTlVTX0xPX0VYUFIKIEB0aW5kZXggVkVDX1VOUEFDS19ISV9FWFBSCiBAdGluZGV4 IFZFQ19VTlBBQ0tfTE9fRVhQUgogQHRpbmRleCBWRUNfVU5QQUNLX0ZMT0FUX0hJX0VYUFIK QEAgLTE4OTIsMzMgKzE4ODgsNiBAQCB2ZWN0b3Igb2YgQGNvZGV7Ti8yfSBwcm9kdWN0cy4g IEluIHRoZSBjYXNlIG9mCiB2ZWN0b3IgYXJlIHN1YnRyYWN0ZWQgZnJvbSB0aGUgbG93IEBj b2Rle04vMn0gb2YgdGhlIGZpcnN0IHRvIHByb2R1Y2UgdGhlCiB2ZWN0b3Igb2YgQGNvZGV7 Ti8yfSBwcm9kdWN0cy4KIAotQGl0ZW0gVkVDX1dJREVOX1BMVVNfSElfRVhQUgotQGl0ZW14 IFZFQ19XSURFTl9QTFVTX0xPX0VYUFIKLVRoZXNlIG5vZGVzIHJlcHJlc2VudCB3aWRlbmlu ZyB2ZWN0b3IgYWRkaXRpb24gb2YgdGhlIGhpZ2ggYW5kIGxvdyBwYXJ0cyBvZgotdGhlIHR3 byBpbnB1dCB2ZWN0b3JzLCByZXNwZWN0aXZlbHkuICBUaGVpciBvcGVyYW5kcyBhcmUgdmVj dG9ycyB0aGF0IGNvbnRhaW4KLXRoZSBzYW1lIG51bWJlciBvZiBlbGVtZW50cyAoQGNvZGV7 Tn0pIG9mIHRoZSBzYW1lIGludGVncmFsIHR5cGUuIFRoZSByZXN1bHQKLWlzIGEgdmVjdG9y IHRoYXQgY29udGFpbnMgaGFsZiBhcyBtYW55IGVsZW1lbnRzLCBvZiBhbiBpbnRlZ3JhbCB0 eXBlIHdob3NlIHNpemUKLWlzIHR3aWNlIGFzIHdpZGUuICBJbiB0aGUgY2FzZSBvZiBAY29k ZXtWRUNfV0lERU5fUExVU19ISV9FWFBSfSB0aGUgaGlnaAotQGNvZGV7Ti8yfSBlbGVtZW50 cyBvZiB0aGUgdHdvIHZlY3RvcnMgYXJlIGFkZGVkIHRvIHByb2R1Y2UgdGhlIHZlY3RvciBv ZgotQGNvZGV7Ti8yfSBwcm9kdWN0cy4gIEluIHRoZSBjYXNlIG9mIEBjb2Rle1ZFQ19XSURF Tl9QTFVTX0xPX0VYUFJ9IHRoZSBsb3cKLUBjb2Rle04vMn0gZWxlbWVudHMgb2YgdGhlIHR3 byB2ZWN0b3JzIGFyZSBhZGRlZCB0byBwcm9kdWNlIHRoZSB2ZWN0b3Igb2YKLUBjb2Rle04v Mn0gcHJvZHVjdHMuCi0KLUBpdGVtIFZFQ19XSURFTl9NSU5VU19ISV9FWFBSCi1AaXRlbXgg VkVDX1dJREVOX01JTlVTX0xPX0VYUFIKLVRoZXNlIG5vZGVzIHJlcHJlc2VudCB3aWRlbmlu ZyB2ZWN0b3Igc3VidHJhY3Rpb24gb2YgdGhlIGhpZ2ggYW5kIGxvdyBwYXJ0cyBvZgotdGhl IHR3byBpbnB1dCB2ZWN0b3JzLCByZXNwZWN0aXZlbHkuICBUaGVpciBvcGVyYW5kcyBhcmUg dmVjdG9ycyB0aGF0IGNvbnRhaW4KLXRoZSBzYW1lIG51bWJlciBvZiBlbGVtZW50cyAoQGNv ZGV7Tn0pIG9mIHRoZSBzYW1lIGludGVncmFsIHR5cGUuIFRoZSBoaWdoL2xvdwotZWxlbWVu dHMgb2YgdGhlIHNlY29uZCB2ZWN0b3IgYXJlIHN1YnRyYWN0ZWQgZnJvbSB0aGUgaGlnaC9s b3cgZWxlbWVudHMgb2YgdGhlCi1maXJzdC4gVGhlIHJlc3VsdCBpcyBhIHZlY3RvciB0aGF0 IGNvbnRhaW5zIGhhbGYgYXMgbWFueSBlbGVtZW50cywgb2YgYW4KLWludGVncmFsIHR5cGUg d2hvc2Ugc2l6ZSBpcyB0d2ljZSBhcyB3aWRlLiAgSW4gdGhlIGNhc2Ugb2YKLUBjb2Rle1ZF Q19XSURFTl9NSU5VU19ISV9FWFBSfSB0aGUgaGlnaCBAY29kZXtOLzJ9IGVsZW1lbnRzIG9m IHRoZSBzZWNvbmQKLXZlY3RvciBhcmUgc3VidHJhY3RlZCBmcm9tIHRoZSBoaWdoIEBjb2Rl e04vMn0gb2YgdGhlIGZpcnN0IHRvIHByb2R1Y2UgdGhlCi12ZWN0b3Igb2YgQGNvZGV7Ti8y fSBwcm9kdWN0cy4gIEluIHRoZSBjYXNlIG9mCi1AY29kZXtWRUNfV0lERU5fTUlOVVNfTE9f RVhQUn0gdGhlIGxvdyBAY29kZXtOLzJ9IGVsZW1lbnRzIG9mIHRoZSBzZWNvbmQKLXZlY3Rv ciBhcmUgc3VidHJhY3RlZCBmcm9tIHRoZSBsb3cgQGNvZGV7Ti8yfSBvZiB0aGUgZmlyc3Qg dG8gcHJvZHVjZSB0aGUKLXZlY3RvciBvZiBAY29kZXtOLzJ9IHByb2R1Y3RzLgotCiBAaXRl bSBWRUNfVU5QQUNLX0hJX0VYUFIKIEBpdGVteCBWRUNfVU5QQUNLX0xPX0VYUFIKIFRoZXNl IG5vZGVzIHJlcHJlc2VudCB1bnBhY2tpbmcgb2YgdGhlIGhpZ2ggYW5kIGxvdyBwYXJ0cyBv ZiB0aGUgaW5wdXQgdmVjdG9yLApkaWZmIC0tZ2l0IGEvZ2NjL2V4cHIuY2MgYi9nY2MvZXhw ci5jYwppbmRleCA3NThkZGE5ZWM2OGE4YmE3YTdiMGUyNDdhZWU1MGZkNzk5NmFhMWQ3Li5k ZDAzNjg4MTY3YjA0Mjk5YmUyMTNhNWMzNzk4NzY0OTljYjZhMzE3IDEwMDY0NAotLS0gYS9n Y2MvZXhwci5jYworKysgYi9nY2MvZXhwci5jYwpAQCAtOTYwMCw4ICs5NjAwLDYgQEAgZXhw YW5kX2V4cHJfcmVhbF8yIChzZXBvcHMgb3BzLCBydHggdGFyZ2V0LCBtYWNoaW5lX21vZGUg dG1vZGUsCiAJCQkJCSAgdGFyZ2V0LCB1bnNpZ25lZHApOwogICAgICAgcmV0dXJuIHRhcmdl dDsKIAotICAgIGNhc2UgV0lERU5fUExVU19FWFBSOgotICAgIGNhc2UgV0lERU5fTUlOVVNf RVhQUjoKICAgICBjYXNlIFdJREVOX01VTFRfRVhQUjoKICAgICAgIC8qIElmIGZpcnN0IG9w ZXJhbmQgaXMgY29uc3RhbnQsIHN3YXAgdGhlbS4KIAkgVGh1cyB0aGUgZm9sbG93aW5nIHNw ZWNpYWwgY2FzZSBjaGVja3MgbmVlZCBvbmx5CkBAIC0xMDM3OSwxMCArMTAzNzcsNiBAQCBl eHBhbmRfZXhwcl9yZWFsXzIgKHNlcG9wcyBvcHMsIHJ0eCB0YXJnZXQsIG1hY2hpbmVfbW9k ZSB0bW9kZSwKIAlyZXR1cm4gdGVtcDsKICAgICAgIH0KIAotICAgIGNhc2UgVkVDX1dJREVO X1BMVVNfSElfRVhQUjoKLSAgICBjYXNlIFZFQ19XSURFTl9QTFVTX0xPX0VYUFI6Ci0gICAg Y2FzZSBWRUNfV0lERU5fTUlOVVNfSElfRVhQUjoKLSAgICBjYXNlIFZFQ19XSURFTl9NSU5V U19MT19FWFBSOgogICAgIGNhc2UgVkVDX1dJREVOX01VTFRfSElfRVhQUjoKICAgICBjYXNl IFZFQ19XSURFTl9NVUxUX0xPX0VYUFI6CiAgICAgY2FzZSBWRUNfV0lERU5fTVVMVF9FVkVO X0VYUFI6CmRpZmYgLS1naXQgYS9nY2MvZ2ltcGxlLXByZXR0eS1wcmludC5jYyBiL2djYy9n aW1wbGUtcHJldHR5LXByaW50LmNjCmluZGV4IGU0NmY3ZDVmNTVhMzFiZjY0NTNjZDMzNjgz YWE1MzZmN2ZiZTYwNmYuLjhkYjIyMWY2NWZlN2UyZmMxY2UyNTY4NTI0MGYxMTUxNmFmODdm ZTYgMTAwNjQ0Ci0tLSBhL2djYy9naW1wbGUtcHJldHR5LXByaW50LmNjCisrKyBiL2djYy9n aW1wbGUtcHJldHR5LXByaW50LmNjCkBAIC00NTksMTAgKzQ1OSw2IEBAIGR1bXBfYmluYXJ5 X3JocyAocHJldHR5X3ByaW50ZXIgKmJ1ZmZlciwgY29uc3QgZ2Fzc2lnbiAqZ3MsIGludCBz cGMsCiAgICAgY2FzZSBWRUNfUEFDS19GTE9BVF9FWFBSOgogICAgIGNhc2UgVkVDX1dJREVO X0xTSElGVF9ISV9FWFBSOgogICAgIGNhc2UgVkVDX1dJREVOX0xTSElGVF9MT19FWFBSOgot ICAgIGNhc2UgVkVDX1dJREVOX1BMVVNfSElfRVhQUjoKLSAgICBjYXNlIFZFQ19XSURFTl9Q TFVTX0xPX0VYUFI6Ci0gICAgY2FzZSBWRUNfV0lERU5fTUlOVVNfSElfRVhQUjoKLSAgICBj YXNlIFZFQ19XSURFTl9NSU5VU19MT19FWFBSOgogICAgIGNhc2UgVkVDX1NFUklFU19FWFBS OgogICAgICAgZm9yIChwID0gZ2V0X3RyZWVfY29kZV9uYW1lIChjb2RlKTsgKnA7IHArKykK IAlwcF9jaGFyYWN0ZXIgKGJ1ZmZlciwgVE9VUFBFUiAoKnApKTsKZGlmZiAtLWdpdCBhL2dj Yy9naW1wbGUtcmFuZ2Utb3AuY2MgYi9nY2MvZ2ltcGxlLXJhbmdlLW9wLmNjCmluZGV4IDY2 NjM2ZDgyZGYyNzYyNmU3OTExZWZkMGNiODUyNjkyMWIzOTYzM2YuLjQ2Njk4NWJmZDM5YTE0 N2Q0N2FjNTI1YjdmZTliYzNmZDJkMGI3YjMgMTAwNjQ0Ci0tLSBhL2djYy9naW1wbGUtcmFu Z2Utb3AuY2MKKysrIGIvZ2NjL2dpbXBsZS1yYW5nZS1vcC5jYwpAQCAtMTE5MSwxMiArMTE5 MSw2IEBAIGdpbXBsZV9yYW5nZV9vcF9oYW5kbGVyOjptYXliZV9ub25fc3RhbmRhcmQgKCkK ICAgaWYgKGdpbXBsZV9jb2RlIChtX3N0bXQpID09IEdJTVBMRV9BU1NJR04pCiAgICAgc3dp dGNoIChnaW1wbGVfYXNzaWduX3Joc19jb2RlIChtX3N0bXQpKQogICAgICAgewotCWNhc2Ug V0lERU5fUExVU19FWFBSOgotCXsKLQkgIHNpZ25lZF9vcCA9IHB0cl9vcF93aWRlbl9wbHVz X3NpZ25lZDsKLQkgIHVuc2lnbmVkX29wID0gcHRyX29wX3dpZGVuX3BsdXNfdW5zaWduZWQ7 Ci0JfQotCWdjY19mYWxsdGhyb3VnaCAoKTsKIAljYXNlIFdJREVOX01VTFRfRVhQUjoKIAl7 CiAJICBtX3ZhbGlkID0gZmFsc2U7CmRpZmYgLS1naXQgYS9nY2Mvb3B0YWJzLXRyZWUuY2Mg Yi9nY2Mvb3B0YWJzLXRyZWUuY2MKaW5kZXggODAxMDA0NmM2YThiM2U4MDljOTg5ZGRlZjdh MDZkZGFhNjhhZTMyYS4uZWUxYWE4Yzk2NzZlZTljNjdlZGJmNDAzZTYyOTVkYTM5MTgyNmE2 MiAxMDA2NDQKLS0tIGEvZ2NjL29wdGFicy10cmVlLmNjCisrKyBiL2djYy9vcHRhYnMtdHJl ZS5jYwpAQCAtMTkwLDIyICsxOTAsNiBAQCBvcHRhYl9mb3JfdHJlZV9jb2RlIChlbnVtIHRy ZWVfY29kZSBjb2RlLCBjb25zdF90cmVlIHR5cGUsCiAgICAgICByZXR1cm4gKFRZUEVfVU5T SUdORUQgKHR5cGUpCiAJICAgICAgPyB2ZWNfd2lkZW5fdXNoaWZ0bF9sb19vcHRhYiA6IHZl Y193aWRlbl9zc2hpZnRsX2xvX29wdGFiKTsKIAotICAgIGNhc2UgVkVDX1dJREVOX1BMVVNf TE9fRVhQUjoKLSAgICAgIHJldHVybiAoVFlQRV9VTlNJR05FRCAodHlwZSkKLQkgICAgICA/ IHZlY193aWRlbl91YWRkbF9sb19vcHRhYiA6IHZlY193aWRlbl9zYWRkbF9sb19vcHRhYik7 Ci0KLSAgICBjYXNlIFZFQ19XSURFTl9QTFVTX0hJX0VYUFI6Ci0gICAgICByZXR1cm4gKFRZ UEVfVU5TSUdORUQgKHR5cGUpCi0JICAgICAgPyB2ZWNfd2lkZW5fdWFkZGxfaGlfb3B0YWIg OiB2ZWNfd2lkZW5fc2FkZGxfaGlfb3B0YWIpOwotCi0gICAgY2FzZSBWRUNfV0lERU5fTUlO VVNfTE9fRVhQUjoKLSAgICAgIHJldHVybiAoVFlQRV9VTlNJR05FRCAodHlwZSkKLQkgICAg ICA/IHZlY193aWRlbl91c3VibF9sb19vcHRhYiA6IHZlY193aWRlbl9zc3VibF9sb19vcHRh Yik7Ci0KLSAgICBjYXNlIFZFQ19XSURFTl9NSU5VU19ISV9FWFBSOgotICAgICAgcmV0dXJu IChUWVBFX1VOU0lHTkVEICh0eXBlKQotCSAgICAgID8gdmVjX3dpZGVuX3VzdWJsX2hpX29w dGFiIDogdmVjX3dpZGVuX3NzdWJsX2hpX29wdGFiKTsKLQogICAgIGNhc2UgVkVDX1VOUEFD S19ISV9FWFBSOgogICAgICAgcmV0dXJuIChUWVBFX1VOU0lHTkVEICh0eXBlKQogCSAgICAg ID8gdmVjX3VucGFja3VfaGlfb3B0YWIgOiB2ZWNfdW5wYWNrc19oaV9vcHRhYik7CkBAIC0z MTIsOCArMjk2LDYgQEAgb3B0YWJfZm9yX3RyZWVfY29kZSAoZW51bSB0cmVlX2NvZGUgY29k ZSwgY29uc3RfdHJlZSB0eXBlLAogICAgJ2hpJy8nbG8nIHBhaXIgdXNpbmcgY29kZXMgc3Vj aCBhcyBWRUNfV0lERU5fTUlOVVNfSEkvTE8uCiAKICAgIFN1cHBvcnRlZCB3aWRlbmluZyBv cGVyYXRpb25zOgotICAgIFdJREVOX01JTlVTX0VYUFIKLSAgICBXSURFTl9QTFVTX0VYUFIK ICAgICBXSURFTl9NVUxUX0VYUFIKICAgICBXSURFTl9MU0hJRlRfRVhQUgogCkBAIC0zNDUs MTIgKzMyNyw2IEBAIHN1cHBvcnRhYmxlX2hhbGZfd2lkZW5pbmdfb3BlcmF0aW9uIChlbnVt IHRyZWVfY29kZSBjb2RlLCB0cmVlIHZlY3R5cGVfb3V0LAogICAgIGNhc2UgV0lERU5fTFNI SUZUX0VYUFI6CiAgICAgICAqY29kZTEgPSBMU0hJRlRfRVhQUjsKICAgICAgIGJyZWFrOwot ICAgIGNhc2UgV0lERU5fTUlOVVNfRVhQUjoKLSAgICAgICpjb2RlMSA9IE1JTlVTX0VYUFI7 Ci0gICAgICBicmVhazsKLSAgICBjYXNlIFdJREVOX1BMVVNfRVhQUjoKLSAgICAgICpjb2Rl MSA9IFBMVVNfRVhQUjsKLSAgICAgIGJyZWFrOwogICAgIGNhc2UgV0lERU5fTVVMVF9FWFBS OgogICAgICAgKmNvZGUxID0gTVVMVF9FWFBSOwogICAgICAgYnJlYWs7CmRpZmYgLS1naXQg YS9nY2Mvb3B0YWJzLmNjIGIvZ2NjL29wdGFicy5jYwppbmRleCA1YTA4ZDkxZTU1MGIyZDky ZTk1NzIyMTFmODExZmRiYTk5YTMzYTM4Li40MzA5NzMzYTM5YmUzZDJhODJkZDJiMTNhNTBk NzNlNmRkYzJlMGZmIDEwMDY0NAotLS0gYS9nY2Mvb3B0YWJzLmNjCisrKyBiL2djYy9vcHRh YnMuY2MKQEAgLTEzMTUsMTAgKzEzMTUsNiBAQCBjb21tdXRhdGl2ZV9vcHRhYl9wIChvcHRh YiBiaW5vcHRhYikKIAkgIHx8IGJpbm9wdGFiID09IHVtdWxfd2lkZW5fb3B0YWIKIAkgIHx8 IGJpbm9wdGFiID09IHNtdWxfaGlnaHBhcnRfb3B0YWIKIAkgIHx8IGJpbm9wdGFiID09IHVt dWxfaGlnaHBhcnRfb3B0YWIKLQkgIHx8IGJpbm9wdGFiID09IHZlY193aWRlbl9zYWRkbF9o aV9vcHRhYgotCSAgfHwgYmlub3B0YWIgPT0gdmVjX3dpZGVuX3NhZGRsX2xvX29wdGFiCi0J ICB8fCBiaW5vcHRhYiA9PSB2ZWNfd2lkZW5fdWFkZGxfaGlfb3B0YWIKLQkgIHx8IGJpbm9w dGFiID09IHZlY193aWRlbl91YWRkbF9sb19vcHRhYgogCSAgfHwgYmlub3B0YWIgPT0gdmVj X3dpZGVuX3NhZGRfaGlfb3B0YWIKIAkgIHx8IGJpbm9wdGFiID09IHZlY193aWRlbl9zYWRk X2xvX29wdGFiCiAJICB8fCBiaW5vcHRhYiA9PSB2ZWNfd2lkZW5fdWFkZF9oaV9vcHRhYgpk aWZmIC0tZ2l0IGEvZ2NjL29wdGFicy5kZWYgYi9nY2Mvb3B0YWJzLmRlZgppbmRleCAxNmQx MjE3MjJjOGM1NzIzZDliMTY0ZjVhMmM2MTZkYzdlYzE0M2RlLi5kNGIzYmVmZGI4MjJiOThm MTJhOWE0NDAyNjFmMWI4ZTgxNDMyNjM5IDEwMDY0NAotLS0gYS9nY2Mvb3B0YWJzLmRlZgor KysgYi9nY2Mvb3B0YWJzLmRlZgpAQCAtNDA2LDEwICs0MDYsNiBAQCBPUFRBQl9EICh2ZWNf d2lkZW5fc211bHRfZXZlbl9vcHRhYiwgInZlY193aWRlbl9zbXVsdF9ldmVuXyRhIikKIE9Q VEFCX0QgKHZlY193aWRlbl9zbXVsdF9oaV9vcHRhYiwgInZlY193aWRlbl9zbXVsdF9oaV8k YSIpCiBPUFRBQl9EICh2ZWNfd2lkZW5fc211bHRfbG9fb3B0YWIsICJ2ZWNfd2lkZW5fc211 bHRfbG9fJGEiKQogT1BUQUJfRCAodmVjX3dpZGVuX3NtdWx0X29kZF9vcHRhYiwgInZlY193 aWRlbl9zbXVsdF9vZGRfJGEiKQotT1BUQUJfRCAodmVjX3dpZGVuX3NzdWJsX2hpX29wdGFi LCAidmVjX3dpZGVuX3NzdWJsX2hpXyRhIikKLU9QVEFCX0QgKHZlY193aWRlbl9zc3VibF9s b19vcHRhYiwgInZlY193aWRlbl9zc3VibF9sb18kYSIpCi1PUFRBQl9EICh2ZWNfd2lkZW5f c2FkZGxfaGlfb3B0YWIsICJ2ZWNfd2lkZW5fc2FkZGxfaGlfJGEiKQotT1BUQUJfRCAodmVj X3dpZGVuX3NhZGRsX2xvX29wdGFiLCAidmVjX3dpZGVuX3NhZGRsX2xvXyRhIikKIE9QVEFC X0QgKHZlY193aWRlbl9zc3ViX2hpX29wdGFiLCAidmVjX3dpZGVuX3NzdWJfaGlfJGEiKQog T1BUQUJfRCAodmVjX3dpZGVuX3NzdWJfbG9fb3B0YWIsICJ2ZWNfd2lkZW5fc3N1Yl9sb18k YSIpCiBPUFRBQl9EICh2ZWNfd2lkZW5fc2FkZF9oaV9vcHRhYiwgInZlY193aWRlbl9zYWRk X2hpXyRhIikKQEAgLTQyMiwxMCArNDE4LDYgQEAgT1BUQUJfRCAodmVjX3dpZGVuX3VtdWx0 X2xvX29wdGFiLCAidmVjX3dpZGVuX3VtdWx0X2xvXyRhIikKIE9QVEFCX0QgKHZlY193aWRl bl91bXVsdF9vZGRfb3B0YWIsICJ2ZWNfd2lkZW5fdW11bHRfb2RkXyRhIikKIE9QVEFCX0Qg KHZlY193aWRlbl91c2hpZnRsX2hpX29wdGFiLCAidmVjX3dpZGVuX3VzaGlmdGxfaGlfJGEi KQogT1BUQUJfRCAodmVjX3dpZGVuX3VzaGlmdGxfbG9fb3B0YWIsICJ2ZWNfd2lkZW5fdXNo aWZ0bF9sb18kYSIpCi1PUFRBQl9EICh2ZWNfd2lkZW5fdXN1YmxfaGlfb3B0YWIsICJ2ZWNf d2lkZW5fdXN1YmxfaGlfJGEiKQotT1BUQUJfRCAodmVjX3dpZGVuX3VzdWJsX2xvX29wdGFi LCAidmVjX3dpZGVuX3VzdWJsX2xvXyRhIikKLU9QVEFCX0QgKHZlY193aWRlbl91YWRkbF9o aV9vcHRhYiwgInZlY193aWRlbl91YWRkbF9oaV8kYSIpCi1PUFRBQl9EICh2ZWNfd2lkZW5f dWFkZGxfbG9fb3B0YWIsICJ2ZWNfd2lkZW5fdWFkZGxfbG9fJGEiKQogT1BUQUJfRCAodmVj X3dpZGVuX3VzdWJfaGlfb3B0YWIsICJ2ZWNfd2lkZW5fdXN1Yl9oaV8kYSIpCiBPUFRBQl9E ICh2ZWNfd2lkZW5fdXN1Yl9sb19vcHRhYiwgInZlY193aWRlbl91c3ViX2xvXyRhIikKIE9Q VEFCX0QgKHZlY193aWRlbl91YWRkX2hpX29wdGFiLCAidmVjX3dpZGVuX3VhZGRfaGlfJGEi KQpkaWZmIC0tZ2l0IGEvZ2NjL3RyZWUtY2ZnLmNjIGIvZ2NjL3RyZWUtY2ZnLmNjCmluZGV4 IDI4NDY0YWQ5ZTNhN2VhMjU1NTdmZmViY2RiZGJjMTM0MGY5ZTBkOGIuLmRjMjhmNWJiZmE2 MjcyYTkyYjY4NDg5ZmU2NzQ0NmJkM2ViYTBjYWYgMTAwNjQ0Ci0tLSBhL2djYy90cmVlLWNm Zy5jYworKysgYi9nY2MvdHJlZS1jZmcuY2MKQEAgLTQwNjgsOCArNDA2OCw2IEBAIHZlcmlm eV9naW1wbGVfYXNzaWduX2JpbmFyeSAoZ2Fzc2lnbiAqc3RtdCkKICAgICAgICAgcmV0dXJu IGZhbHNlOwogICAgICAgfQogCi0gICAgY2FzZSBXSURFTl9QTFVTX0VYUFI6Ci0gICAgY2Fz ZSBXSURFTl9NSU5VU19FWFBSOgogICAgIGNhc2UgUExVU19FWFBSOgogICAgIGNhc2UgTUlO VVNfRVhQUjoKICAgICAgIHsKQEAgLTQxOTAsMTAgKzQxODgsNiBAQCB2ZXJpZnlfZ2ltcGxl X2Fzc2lnbl9iaW5hcnkgKGdhc3NpZ24gKnN0bXQpCiAgICAgICAgIHJldHVybiBmYWxzZTsK ICAgICAgIH0KIAotICAgIGNhc2UgVkVDX1dJREVOX01JTlVTX0hJX0VYUFI6Ci0gICAgY2Fz ZSBWRUNfV0lERU5fTUlOVVNfTE9fRVhQUjoKLSAgICBjYXNlIFZFQ19XSURFTl9QTFVTX0hJ X0VYUFI6Ci0gICAgY2FzZSBWRUNfV0lERU5fUExVU19MT19FWFBSOgogICAgIGNhc2UgVkVD X1dJREVOX01VTFRfSElfRVhQUjoKICAgICBjYXNlIFZFQ19XSURFTl9NVUxUX0xPX0VYUFI6 CiAgICAgY2FzZSBWRUNfV0lERU5fTVVMVF9FVkVOX0VYUFI6CmRpZmYgLS1naXQgYS9nY2Mv dHJlZS1pbmxpbmUuY2MgYi9nY2MvdHJlZS1pbmxpbmUuY2MKaW5kZXggZDc0ZDhkYjIxNzNi MWFiMTE3MjUwZmVhODlkZTUyMTJkNWUzNTRlYy4uN2IwNTZjN2RjN2UxNzNiMGJjOTk4MWE1 Yzk4ZjBkNTA2ODViNmI2NiAxMDA2NDQKLS0tIGEvZ2NjL3RyZWUtaW5saW5lLmNjCisrKyBi L2djYy90cmVlLWlubGluZS5jYwpAQCAtNDI3Myw4ICs0MjczLDYgQEAgZXN0aW1hdGVfb3Bl cmF0b3JfY29zdCAoZW51bSB0cmVlX2NvZGUgY29kZSwgZW5pX3dlaWdodHMgKndlaWdodHMs CiAKICAgICBjYXNlIFJFQUxJR05fTE9BRF9FWFBSOgogCi0gICAgY2FzZSBXSURFTl9QTFVT X0VYUFI6Ci0gICAgY2FzZSBXSURFTl9NSU5VU19FWFBSOgogICAgIGNhc2UgV0lERU5fU1VN X0VYUFI6CiAgICAgY2FzZSBXSURFTl9NVUxUX0VYUFI6CiAgICAgY2FzZSBET1RfUFJPRF9F WFBSOgpAQCAtNDI4MywxMCArNDI4MSw2IEBAIGVzdGltYXRlX29wZXJhdG9yX2Nvc3QgKGVu dW0gdHJlZV9jb2RlIGNvZGUsIGVuaV93ZWlnaHRzICp3ZWlnaHRzLAogICAgIGNhc2UgV0lE RU5fTVVMVF9NSU5VU19FWFBSOgogICAgIGNhc2UgV0lERU5fTFNISUZUX0VYUFI6CiAKLSAg ICBjYXNlIFZFQ19XSURFTl9QTFVTX0hJX0VYUFI6Ci0gICAgY2FzZSBWRUNfV0lERU5fUExV U19MT19FWFBSOgotICAgIGNhc2UgVkVDX1dJREVOX01JTlVTX0hJX0VYUFI6Ci0gICAgY2Fz ZSBWRUNfV0lERU5fTUlOVVNfTE9fRVhQUjoKICAgICBjYXNlIFZFQ19XSURFTl9NVUxUX0hJ X0VYUFI6CiAgICAgY2FzZSBWRUNfV0lERU5fTVVMVF9MT19FWFBSOgogICAgIGNhc2UgVkVD X1dJREVOX01VTFRfRVZFTl9FWFBSOgpkaWZmIC0tZ2l0IGEvZ2NjL3RyZWUtcHJldHR5LXBy aW50LmNjIGIvZ2NjL3RyZWUtcHJldHR5LXByaW50LmNjCmluZGV4IDc5NDdmOTY0N2ExNTEx MGI1MmQxOTU2NDNhZDdkMjhlZTMyZDQyMzYuLjk5NDFkOGJmODA1MzVhOThlNjQ3Yjg5Mjg2 MTlhNmJmMDhiYzQzNGMgMTAwNjQ0Ci0tLSBhL2djYy90cmVlLXByZXR0eS1wcmludC5jYwor KysgYi9nY2MvdHJlZS1wcmV0dHktcHJpbnQuY2MKQEAgLTI4NzQsOCArMjg3NCw2IEBAIGR1 bXBfZ2VuZXJpY19ub2RlIChwcmV0dHlfcHJpbnRlciAqcHAsIHRyZWUgbm9kZSwgaW50IHNw YywgZHVtcF9mbGFnc190IGZsYWdzLAogICAgICAgYnJlYWs7CiAKICAgICAgIC8qIEJpbmFy eSBhcml0aG1ldGljIGFuZCBsb2dpYyBleHByZXNzaW9ucy4gICovCi0gICAgY2FzZSBXSURF Tl9QTFVTX0VYUFI6Ci0gICAgY2FzZSBXSURFTl9NSU5VU19FWFBSOgogICAgIGNhc2UgV0lE RU5fU1VNX0VYUFI6CiAgICAgY2FzZSBXSURFTl9NVUxUX0VYUFI6CiAgICAgY2FzZSBNVUxU X0VYUFI6CkBAIC0zODMxLDEwICszODI5LDYgQEAgZHVtcF9nZW5lcmljX25vZGUgKHByZXR0 eV9wcmludGVyICpwcCwgdHJlZSBub2RlLCBpbnQgc3BjLCBkdW1wX2ZsYWdzX3QgZmxhZ3Ms CiAgICAgY2FzZSBWRUNfU0VSSUVTX0VYUFI6CiAgICAgY2FzZSBWRUNfV0lERU5fTVVMVF9I SV9FWFBSOgogICAgIGNhc2UgVkVDX1dJREVOX01VTFRfTE9fRVhQUjoKLSAgICBjYXNlIFZF Q19XSURFTl9QTFVTX0hJX0VYUFI6Ci0gICAgY2FzZSBWRUNfV0lERU5fUExVU19MT19FWFBS OgotICAgIGNhc2UgVkVDX1dJREVOX01JTlVTX0hJX0VYUFI6Ci0gICAgY2FzZSBWRUNfV0lE RU5fTUlOVVNfTE9fRVhQUjoKICAgICBjYXNlIFZFQ19XSURFTl9NVUxUX0VWRU5fRVhQUjoK ICAgICBjYXNlIFZFQ19XSURFTl9NVUxUX09ERF9FWFBSOgogICAgIGNhc2UgVkVDX1dJREVO X0xTSElGVF9ISV9FWFBSOgpAQCAtNDM1MiwxMiArNDM0Niw2IEBAIG9wX3N5bWJvbF9jb2Rl IChlbnVtIHRyZWVfY29kZSBjb2RlKQogICAgIGNhc2UgV0lERU5fTFNISUZUX0VYUFI6CiAg ICAgICByZXR1cm4gInc8PCI7CiAKLSAgICBjYXNlIFdJREVOX1BMVVNfRVhQUjoKLSAgICAg IHJldHVybiAidysiOwotCi0gICAgY2FzZSBXSURFTl9NSU5VU19FWFBSOgotICAgICAgcmV0 dXJuICJ3LSI7Ci0KICAgICBjYXNlIFBPSU5URVJfUExVU19FWFBSOgogICAgICAgcmV0dXJu ICIrIjsKIApkaWZmIC0tZ2l0IGEvZ2NjL3RyZWUtdmVjdC1kYXRhLXJlZnMuY2MgYi9nY2Mv dHJlZS12ZWN0LWRhdGEtcmVmcy5jYwppbmRleCA2NzIxYWI2ZWZjNGYwMjliZThlMjMxNWMz MWJhODdkOTQyMzBjZGE1Li42OGIyOWVlNDY2MWEwZDA4Y2Y4ZjcwNDhjMjNmOTkyZDQ0NDBi MDhiIDEwMDY0NAotLS0gYS9nY2MvdHJlZS12ZWN0LWRhdGEtcmVmcy5jYworKysgYi9nY2Mv dHJlZS12ZWN0LWRhdGEtcmVmcy5jYwpAQCAtMTM2LDggKzEzNiw2IEBAIHZlY3RfZ2V0X3Nt YWxsZXN0X3NjYWxhcl90eXBlIChzdG10X3ZlY19pbmZvIHN0bXRfaW5mbywgdHJlZSBzY2Fs YXJfdHlwZSkKIAkgIHx8IGdpbXBsZV9hc3NpZ25fcmhzX2NvZGUgKGFzc2lnbikgPT0gV0lE RU5fU1VNX0VYUFIKIAkgIHx8IGdpbXBsZV9hc3NpZ25fcmhzX2NvZGUgKGFzc2lnbikgPT0g V0lERU5fTVVMVF9FWFBSCiAJICB8fCBnaW1wbGVfYXNzaWduX3Joc19jb2RlIChhc3NpZ24p ID09IFdJREVOX0xTSElGVF9FWFBSCi0JICB8fCBnaW1wbGVfYXNzaWduX3Joc19jb2RlIChh c3NpZ24pID09IFdJREVOX1BMVVNfRVhQUgotCSAgfHwgZ2ltcGxlX2Fzc2lnbl9yaHNfY29k ZSAoYXNzaWduKSA9PSBXSURFTl9NSU5VU19FWFBSCiAJICB8fCBnaW1wbGVfYXNzaWduX3Jo c19jb2RlIChhc3NpZ24pID09IEZMT0FUX0VYUFIpCiAJewogCSAgdHJlZSByaHNfdHlwZSA9 IFRSRUVfVFlQRSAoZ2ltcGxlX2Fzc2lnbl9yaHMxIChhc3NpZ24pKTsKZGlmZiAtLWdpdCBh L2djYy90cmVlLXZlY3QtZ2VuZXJpYy5jYyBiL2djYy90cmVlLXZlY3QtZ2VuZXJpYy5jYwpp bmRleCA1OTExNWIyZTE2MjkzNThlODVjYjc3MGY2ZGEwNGNjNWEyYWRiMjdhLi43ZjU1OTY2 MzEwY2VlNjcyMzhiMjU2MWUzMzNlYTQ1ZWU2MTUzZDlhIDEwMDY0NAotLS0gYS9nY2MvdHJl ZS12ZWN0LWdlbmVyaWMuY2MKKysrIGIvZ2NjL3RyZWUtdmVjdC1nZW5lcmljLmNjCkBAIC0y MTk4LDEwICsyMTk4LDYgQEAgZXhwYW5kX3ZlY3Rvcl9vcGVyYXRpb25zXzEgKGdpbXBsZV9z dG10X2l0ZXJhdG9yICpnc2ksCiAgICAgIGFyZ3VtZW50cywgbm90IHRoZSB3aWRlbmVkIHJl c3VsdC4gIFZFQ19VTlBBQ0tfRkxPQVRfKl9FWFBSIGlzCiAgICAgIGNhbGN1bGF0ZWQgaW4g dGhlIHNhbWUgd2F5IGFib3ZlLiAgKi8KICAgaWYgKGNvZGUgPT0gV0lERU5fU1VNX0VYUFIK LSAgICAgIHx8IGNvZGUgPT0gVkVDX1dJREVOX1BMVVNfSElfRVhQUgotICAgICAgfHwgY29k ZSA9PSBWRUNfV0lERU5fUExVU19MT19FWFBSCi0gICAgICB8fCBjb2RlID09IFZFQ19XSURF Tl9NSU5VU19ISV9FWFBSCi0gICAgICB8fCBjb2RlID09IFZFQ19XSURFTl9NSU5VU19MT19F WFBSCiAgICAgICB8fCBjb2RlID09IFZFQ19XSURFTl9NVUxUX0hJX0VYUFIKICAgICAgIHx8 IGNvZGUgPT0gVkVDX1dJREVOX01VTFRfTE9fRVhQUgogICAgICAgfHwgY29kZSA9PSBWRUNf V0lERU5fTVVMVF9FVkVOX0VYUFIKZGlmZiAtLWdpdCBhL2djYy90cmVlLXZlY3Qtc3RtdHMu Y2MgYi9nY2MvdHJlZS12ZWN0LXN0bXRzLmNjCmluZGV4IDI0YzgxMWViZTAxZmI4YjAwMzEw MGRlYTQ5NGNmNjRmZWE3MmE5NzUuLjdhODE4YTNiN2FkNGM5ZTZiMWY0NWFiY2MxZTRmYmQw NTZhYTFkMjkgMTAwNjQ0Ci0tLSBhL2djYy90cmVlLXZlY3Qtc3RtdHMuY2MKKysrIGIvZ2Nj L3RyZWUtdmVjdC1zdG10cy5jYwpAQCAtNTAzNSw5ICs1MDM1LDcgQEAgdmVjdG9yaXphYmxl X2NvbnZlcnNpb24gKHZlY19pbmZvICp2aW5mbywKICAgZWxzZQogICAgIHJldHVybiBmYWxz ZTsKIAotICBib29sIHdpZGVuX2FyaXRoID0gKGNvZGUgPT0gV0lERU5fUExVU19FWFBSCi0J CSB8fCBjb2RlID09IFdJREVOX01JTlVTX0VYUFIKLQkJIHx8IGNvZGUgPT0gV0lERU5fTVVM VF9FWFBSCisgIGJvb2wgd2lkZW5fYXJpdGggPSAoY29kZSA9PSBXSURFTl9NVUxUX0VYUFIK IAkJIHx8IGNvZGUgPT0gV0lERU5fTFNISUZUX0VYUFIKIAkJIHx8IGNvZGUgPT0gSUZOX1ZF Q19XSURFTl9QTFVTX0hJTE8KIAkJIHx8IGNvZGUgPT0gSUZOX1ZFQ19XSURFTl9NSU5VU19I SUxPKTsKQEAgLTUwODksOCArNTA4Nyw2IEBAIHZlY3Rvcml6YWJsZV9jb252ZXJzaW9uICh2 ZWNfaW5mbyAqdmluZm8sCiAgICAgewogICAgICAgZ2NjX2Fzc2VydCAoY29kZSA9PSBXSURF Tl9NVUxUX0VYUFIKIAkJICB8fCBjb2RlID09IFdJREVOX0xTSElGVF9FWFBSCi0JCSAgfHwg Y29kZSA9PSBXSURFTl9QTFVTX0VYUFIKLQkJICB8fCBjb2RlID09IFdJREVOX01JTlVTX0VY UFIKIAkJICB8fCBjb2RlID09IElGTl9WRUNfV0lERU5fUExVU19ISUxPCiAJCSAgfHwgY29k ZSA9PSBJRk5fVkVDX1dJREVOX01JTlVTX0hJTE8pOwogCkBAIC0xMjMzNSw3ICsxMjMzMSw3 IEBAIHN1cHBvcnRhYmxlX3dpZGVuaW5nX29wZXJhdGlvbiAodmVjX2luZm8gKnZpbmZvLAog ICBjbGFzcyBsb29wICp2ZWN0X2xvb3AgPSBOVUxMOwogICBtYWNoaW5lX21vZGUgdmVjX21v ZGU7CiAgIGVudW0gaW5zbl9jb2RlIGljb2RlMSwgaWNvZGUyOwotICBvcHRhYiBvcHRhYjEs IG9wdGFiMjsKKyAgb3B0YWIgb3B0YWIxID0gdW5rbm93bl9vcHRhYiwgb3B0YWIyID0gdW5r bm93bl9vcHRhYjsKICAgdHJlZSB2ZWN0eXBlID0gdmVjdHlwZV9pbjsKICAgdHJlZSB3aWRl X3ZlY3R5cGUgPSB2ZWN0eXBlX291dDsKICAgdHJlZV9jb2RlIGMxID0gTUFYX1RSRUVfQ09E RVMsIGMyID0gTUFYX1RSRUVfQ09ERVM7CkBAIC0xMjQzMywxNiArMTI0MjksNiBAQCBzdXBw b3J0YWJsZV93aWRlbmluZ19vcGVyYXRpb24gKHZlY19pbmZvICp2aW5mbywKICAgICAgIGMy ID0gVkVDX1dJREVOX0xTSElGVF9ISV9FWFBSOwogICAgICAgYnJlYWs7CiAKLSAgICBjYXNl IFdJREVOX1BMVVNfRVhQUjoKLSAgICAgIGMxID0gVkVDX1dJREVOX1BMVVNfTE9fRVhQUjsK LSAgICAgIGMyID0gVkVDX1dJREVOX1BMVVNfSElfRVhQUjsKLSAgICAgIGJyZWFrOwotCi0g ICAgY2FzZSBXSURFTl9NSU5VU19FWFBSOgotICAgICAgYzEgPSBWRUNfV0lERU5fTUlOVVNf TE9fRVhQUjsKLSAgICAgIGMyID0gVkVDX1dJREVOX01JTlVTX0hJX0VYUFI7Ci0gICAgICBi cmVhazsKLQogICAgIENBU0VfQ09OVkVSVDoKICAgICAgIGMxID0gVkVDX1VOUEFDS19MT19F WFBSOwogICAgICAgYzIgPSBWRUNfVU5QQUNLX0hJX0VYUFI7CmRpZmYgLS1naXQgYS9nY2Mv dHJlZS5kZWYgYi9nY2MvdHJlZS5kZWYKaW5kZXggYjM3YjBiMzU5MjdiOTJhNjUzNmU1YzJk OTgwNWZmY2U4MzE5YTI0MC4uMWZjMmNhN2E3MjQ5ZDQ3NjdhYTI0NDgyMTliYzIxYThjNjUw YWViNCAxMDA2NDQKLS0tIGEvZ2NjL3RyZWUuZGVmCisrKyBiL2djYy90cmVlLmRlZgpAQCAt MTQyMiw4ICsxNDIyLDYgQEAgREVGVFJFRUNPREUgKFdJREVOX01VTFRfTUlOVVNfRVhQUiwg IndpZGVuX211bHRfbWludXNfZXhwciIsIHRjY19leHByZXNzaW9uLCAzKQogICAgdGhlIGZp cnN0IGFyZ3VtZW50IGZyb20gdHlwZSB0MSB0byB0eXBlIHQyLCBhbmQgdGhlbiBzaGlmdGlu ZyBpdAogICAgYnkgdGhlIHNlY29uZCBhcmd1bWVudC4gICovCiBERUZUUkVFQ09ERSAoV0lE RU5fTFNISUZUX0VYUFIsICJ3aWRlbl9sc2hpZnRfZXhwciIsIHRjY19iaW5hcnksIDIpCi1E RUZUUkVFQ09ERSAoV0lERU5fUExVU19FWFBSLCAid2lkZW5fcGx1c19leHByIiwgdGNjX2Jp bmFyeSwgMikKLURFRlRSRUVDT0RFIChXSURFTl9NSU5VU19FWFBSLCAid2lkZW5fbWludXNf ZXhwciIsIHRjY19iaW5hcnksIDIpCiAKIC8qIFdpZGVuaW5nIHZlY3RvciBtdWx0aXBsaWNh dGlvbi4KICAgIFRoZSB0d28gb3BlcmFuZHMgYXJlIHZlY3RvcnMgd2l0aCBOIGVsZW1lbnRz IG9mIHNpemUgUy4gTXVsdGlwbHlpbmcgdGhlCkBAIC0xNDg4LDEwICsxNDg2LDYgQEAgREVG VFJFRUNPREUgKFZFQ19QQUNLX0ZMT0FUX0VYUFIsICJ2ZWNfcGFja19mbG9hdF9leHByIiwg dGNjX2JpbmFyeSwgMikKICAqLwogREVGVFJFRUNPREUgKFZFQ19XSURFTl9MU0hJRlRfSElf RVhQUiwgIndpZGVuX2xzaGlmdF9oaV9leHByIiwgdGNjX2JpbmFyeSwgMikKIERFRlRSRUVD T0RFIChWRUNfV0lERU5fTFNISUZUX0xPX0VYUFIsICJ3aWRlbl9sc2hpZnRfbG9fZXhwciIs IHRjY19iaW5hcnksIDIpCi1ERUZUUkVFQ09ERSAoVkVDX1dJREVOX1BMVVNfSElfRVhQUiwg IndpZGVuX3BsdXNfaGlfZXhwciIsIHRjY19iaW5hcnksIDIpCi1ERUZUUkVFQ09ERSAoVkVD X1dJREVOX1BMVVNfTE9fRVhQUiwgIndpZGVuX3BsdXNfbG9fZXhwciIsIHRjY19iaW5hcnks IDIpCi1ERUZUUkVFQ09ERSAoVkVDX1dJREVOX01JTlVTX0hJX0VYUFIsICJ3aWRlbl9taW51 c19oaV9leHByIiwgdGNjX2JpbmFyeSwgMikKLURFRlRSRUVDT0RFIChWRUNfV0lERU5fTUlO VVNfTE9fRVhQUiwgIndpZGVuX21pbnVzX2xvX2V4cHIiLCB0Y2NfYmluYXJ5LCAyKQogCiAv KiBQUkVESUNUX0VYUFIuICBTcGVjaWZ5IGhpbnQgZm9yIGJyYW5jaCBwcmVkaWN0aW9uLiAg VGhlCiAgICBQUkVESUNUX0VYUFJfUFJFRElDVE9SIHNwZWNpZnkgcHJlZGljdG9yIGFuZCBQ UkVESUNUX0VYUFJfT1VUQ09NRSB0aGUK --------------DWnEuZu5jmp2hGPgCxInihAE--