From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [81.169.146.219]) by sourceware.org (Postfix) with ESMTPS id 43C993858D37 for ; Mon, 18 Mar 2024 07:49:07 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 43C993858D37 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=gjlay.de Authentication-Results: sourceware.org; spf=none smtp.mailfrom=gjlay.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 43C993858D37 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=81.169.146.219 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1710748149; cv=pass; b=ooroDaDW9/uVk8+jijTZ2EbylvMFLQc+CeQoR3UqKG4KrM8eaqF4m9uCOIGV18+TSu1KS0Yk8qWDbztoZQo4AZJelUVi0zMqLdfYnB/bPED7y6NUEfsJDknXbjvX7JAvxDosJzhbHwvYFQp+drvl91hITI/89kGgnP505TH6kNE= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1710748149; c=relaxed/simple; bh=iSYxRojmDDOOcgdYPLWXlfj5XGI51CMePvjSjGkAlag=; h=DKIM-Signature:DKIM-Signature:Message-ID:Date:MIME-Version:From: To:Subject; b=BMlba5RG0dPCn1IyZ01db8ls5bChBwHQ87jNKwU9mS69jgfncQPE6TGbwIbKbtBOgN1hfkPQJtqxOdMjeHbUb14QNvO06qwvgU8dLzHSooIdC5P+FnjKZ2pKNPrg2EI2wnO1WNb+5vPk4NoNhUBmt1dl1h2jtRWF3qT6B4T5A40= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; t=1710748145; cv=none; d=strato.com; s=strato-dkim-0002; b=lSRMdG8N2rbLjLp/KFuAd8SfOODo8bWLHkDtx/u/F57plU6/152fHP+8LFgNh1w+lH l5DyWj1zD47DJNGvJCh/RNXB0uvJ+GnWr5tKv4wA/m6vdGH/s0krNw2vnLlFk33cKDfJ MfMNUxyOc0No6P5oaq4wwB5t1Fdh91jdTLlvd/YJMdzlDS5Tyn55BmUQGYm90O/DnJiO M8HK5cpZ0zJH9FMdm41X/Zo8NfQcGa4jq7eN0l5yZrPfsuElFXfaHpcbx8ASwvmzO9WQ uq/M4srhqiLGDoV92To9e1EYh3DI5y7rPyPFQdO6RSzb+2MMOhHO7bMnisJ4TWmPaRTm Q91w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1710748145; s=strato-dkim-0002; d=strato.com; h=Subject:To:From:Date:Message-ID:Cc:Date:From:Subject:Sender; bh=DVzP1sA0CuzkMHR5FBZGYws3d747BEV4Wl5Pd2SvTuQ=; b=pSiOj7wxatdCcUKgUFPZTgTGTN4av/Lcfoz5FbB04YStiJhp/ZFyGG4taElPA2PmAn hwCupdfwJrTJ3dS17TBIg2Z92xvgmb3DqMP35Ydw9l5YJifBbEgmL5iL4g+DWcigbahC 2vLkH11dkXUiOZSjnvWXnU+t/0sGZ+k7abj8pIH5DpvTF4pLIU34pJE9mVLj+2wwpqnr tU/fEDk4iIiYAzHUeqdAOC1ridd+SBw5DdhjUzbsiTGeYzZgRI0PiiNyj9or31GHWA5e oGl0qgABiUCTWUYrfXYKxHeG7gOOpyLVgp9SeCJibLJQ6GLRXY2ao27eztUKuQYujJ4f C6vQ== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1710748145; s=strato-dkim-0002; d=gjlay.de; h=Subject:To:From:Date:Message-ID:Cc:Date:From:Subject:Sender; bh=DVzP1sA0CuzkMHR5FBZGYws3d747BEV4Wl5Pd2SvTuQ=; b=Mca/vzc/uigL1wPE8puD30bZ3RAWq0vomI4EnXy8ZZ8PqGnzrv0rcUKUXnKyVETQkO fkAk87aUX0Nkv+oinQWsf2ndsAVIr7UXXctkir1aJwBe+Zd8udv8TLhVTDL7y4PoZp6b rVe8RVH4M8kmsiq2/beteV+tH9zNY5hQI312MagbRTneaow9u1jW69QLKFVPvOP3f/ta EMi8Cnu6ob0bY1BTXARiF90NwLkl3Ekjl+hHR+KRh48encrfZki3aEcEcE9949KLcZuk TMABBw8w0GlTV8RrHnXIVjWKE9THUXhB0GV8Z2BTKaphXKtYgttXvk0yZCyanGXQ71CO /RUw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1710748145; s=strato-dkim-0003; d=gjlay.de; h=Subject:To:From:Date:Message-ID:Cc:Date:From:Subject:Sender; bh=DVzP1sA0CuzkMHR5FBZGYws3d747BEV4Wl5Pd2SvTuQ=; b=UctER7pVXe+dRLGKmfggmg1cTqecrrlw53brzF7RpQTbdRUzBqVrBIJsQxwn/ojvg8 +w7Ixq4yC4X3a0p9V9CQ== X-RZG-AUTH: ":LXoWVUeid/7A29J/hMvvT3koxZnKT7Qq0xotTetVnKkSgcSjpmy9KwoMJ/K0VA==" Received: from [192.168.2.102] by smtp.strato.de (RZmta 50.2.2 DYNA|AUTH) with ESMTPSA id afe0da02I7n5FFz (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate) for ; Mon, 18 Mar 2024 08:49:05 +0100 (CET) Content-Type: multipart/mixed; boundary="------------zlAsehAlC7Btf460eiduvK70" Message-ID: <27e61e84-859d-4943-83ab-5ad0ac60dc0f@gjlay.de> Date: Mon, 18 Mar 2024 08:49:05 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US From: Georg-Johann Lay To: "gcc-patches@gcc.gnu.org" Subject: [patch,avr,applied] Tweak xor insn constraints Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-11.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,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. --------------zlAsehAlC7Btf460eiduvK70 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit xor insn allows some more values without the requirement of a scratch register. This patch adds new constraint alternative for such values. The output function avr_out_bitop already handles these cases, so no change is needed there. Johann -- avr.md - Tweak xor insn constraints. xor insn can handle some more values without the requirement of a scratch register. This patch adds a new constraint alternative for such values. The output function avr_out_bitop already handles these cases, so no change is needed there. gcc/ * config/avr/constraints.md (CX2, CX3, CX4): New constraints. * config/avr/avr-protos.h (avr_xor_noclobber_dconst): New proto. * config/avr/avr.cc (avr_xor_noclobber_dconst): New function. * config/avr/avr.md (xorhi3, *xorhi3): Add "d,0,CX2,X" alternative. (xorpsi3, *xorpsi3): Add "d,0,CX3,X" alternative. (xorsi3, *xorsi3): Add "d,0,CX4,X" alternative. --------------zlAsehAlC7Btf460eiduvK70 Content-Type: text/x-patch; charset=UTF-8; name="x.diff" Content-Disposition: attachment; filename="x.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2djYy9jb25maWcvYXZyL2F2ci1wcm90b3MuaCBiL2djYy9jb25maWcv YXZyL2F2ci1wcm90b3MuaAppbmRleCBiYjY4MDMxMjExNy4uZGMyM2NmYmY0NjEgMTAwNjQ0 Ci0tLSBhL2djYy9jb25maWcvYXZyL2F2ci1wcm90b3MuaAorKysgYi9nY2MvY29uZmlnL2F2 ci9hdnItcHJvdG9zLmgKQEAgLTEwMSw2ICsxMDEsNyBAQCBleHRlcm4gY29uc3QgY2hhciog YXZyX291dF94bG9hZCAocnR4X2luc24gKiwgcnR4KiwgaW50Kik7CiBleHRlcm4gY29uc3Qg Y2hhciogYXZyX291dF9jcHltZW0gKHJ0eF9pbnNuICosIHJ0eCosIGludCopOwogZXh0ZXJu IGNvbnN0IGNoYXIqIGF2cl9vdXRfaW5zZXJ0X2JpdHMgKHJ0eCosIGludCopOwogZXh0ZXJu IGJvb2wgYXZyX3BvcGNvdW50X2VhY2hfYnl0ZSAocnR4LCBpbnQsIGludCk7CitleHRlcm4g Ym9vbCBhdnJfeG9yX25vY2xvYmJlcl9kY29uc3QgKHJ0eCwgaW50KTsKIGV4dGVybiBib29s IGF2cl9oYXNfbmliYmxlXzB4ZiAocnR4KTsKIAogZXh0ZXJuIGludCBleHRyYV9jb25zdHJh aW50X1EgKHJ0eCB4KTsKZGlmZiAtLWdpdCBhL2djYy9jb25maWcvYXZyL2F2ci5jYyBiL2dj Yy9jb25maWcvYXZyL2F2ci5jYwppbmRleCAwMGZjZThkYTE1Zi4uMTJjNTk2NjhiNGMgMTAw NjQ0Ci0tLSBhL2djYy9jb25maWcvYXZyL2F2ci5jYworKysgYi9nY2MvY29uZmlnL2F2ci9h dnIuY2MKQEAgLTI4MSw2ICsyODEsMzEgQEAgYXZyX3BvcGNvdW50X2VhY2hfYnl0ZSAocnR4 IHh2YWwsIGludCBuX2J5dGVzLCBpbnQgcG9wX21hc2spCiB9CiAKIAorLyogQ29uc3RyYWlu dCBoZWxwZXIgZnVuY3Rpb24uICBYVkFMIGlzIGEgQ09OU1RfSU5ULiAgUmV0dXJuIHRydWUg aWYgd2UKKyAgIGNhbiBwZXJmb3JtIFhPUiB3aXRob3V0IGEgY2xvYmJlciByZWcsIHByb3Zp ZGVkIHRoZSBvcGVyYXRpb24gaXMgb24KKyAgIGEgZC1yZWdpc3Rlci4gIFRoaXMgbWVhbnMg ZWFjaCBieXRlIGlzIGluIHsgMCwgMHhmZiwgMHg4MCB9LiAgKi8KKworYm9vbAorYXZyX3hv cl9ub2Nsb2JiZXJfZGNvbnN0IChydHggeHZhbCwgaW50IG5fYnl0ZXMpCit7CisgIG1hY2hp bmVfbW9kZSBtb2RlID0gR0VUX01PREUgKHh2YWwpOworCisgIGlmIChWT0lEbW9kZSA9PSBt b2RlKQorICAgIG1vZGUgPSBTSW1vZGU7CisKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCBuX2J5 dGVzOyArK2kpCisgICAgeworICAgICAgcnR4IHh2YWw4ID0gc2ltcGxpZnlfZ2VuX3N1YnJl ZyAoUUltb2RlLCB4dmFsLCBtb2RlLCBpKTsKKyAgICAgIHVuc2lnbmVkIGludCB2YWw4ID0g VUlOVFZBTCAoeHZhbDgpICYgR0VUX01PREVfTUFTSyAoUUltb2RlKTsKKworICAgICAgaWYg KHZhbDggIT0gMCAmJiB2YWw4ICE9IDB4ZmYgJiYgdmFsOCAhPSAweDgwKQorCXJldHVybiBm YWxzZTsKKyAgICB9CisKKyAgcmV0dXJuIHRydWU7Cit9CisKKwogLyogQWNjZXNzIHNvbWUg UlRYIGFzIElOVF9NT0RFLiAgSWYgWCBpcyBhIENPTlNUX0ZJWEVEIHdlIGNhbiBnZXQKICAg IHRoZSBiaXQgcmVwcmVzZW50YXRpb24gb2YgWCBieSAiY2FzdGluZyIgaXQgdG8gQ09OU1Rf SU5ULiAgKi8KIApkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9hdnIvYXZyLm1kIGIvZ2NjL2Nv bmZpZy9hdnIvYXZyLm1kCmluZGV4IGJjNDA4NjMzZWI1Li45N2Y0MmJlNzcyOSAxMDA2NDQK LS0tIGEvZ2NjL2NvbmZpZy9hdnIvYXZyLm1kCisrKyBiL2djYy9jb25maWcvYXZyL2F2ci5t ZApAQCAtNDc0MSwxMCArNDc0MSwxMCBAQCAoZGVmaW5lX2luc24gIip4b3JxaTMiCiAgIFso c2V0X2F0dHIgImxlbmd0aCIgIjEiKV0pCiAKIChkZWZpbmVfaW5zbl9hbmRfc3BsaXQgInhv cmhpMyIKLSAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6SEkgMCAicmVnaXN0ZXJfb3BlcmFuZCIg ICAgICAgIj0/P3IsciAgLHIiKQotICAgICAgICAoeG9yOkhJIChtYXRjaF9vcGVyYW5kOkhJ IDEgInJlZ2lzdGVyX29wZXJhbmQiICIlMCwwICAsMCIpCi0gICAgICAgICAgICAgICAgKG1h dGNoX29wZXJhbmQ6SEkgMiAibm9ubWVtb3J5X29wZXJhbmQiICJyLEN4MixuIikpKQotICAg KGNsb2JiZXIgKG1hdGNoX3NjcmF0Y2g6UUkgMyAgICAgICAgICAgICAgICAgICAgICAgICI9 WCxYICAsJmQiKSldCisgIFsoc2V0IChtYXRjaF9vcGVyYW5kOkhJIDAgInJlZ2lzdGVyX29w ZXJhbmQiICAgICAgICI9Pz9yLHIgICxkICAsciIpCisgICAgICAgICh4b3I6SEkgKG1hdGNo X29wZXJhbmQ6SEkgMSAicmVnaXN0ZXJfb3BlcmFuZCIgIiUwLDAgICwwICAsMCIpCisgICAg ICAgICAgICAgICAgKG1hdGNoX29wZXJhbmQ6SEkgMiAibm9ubWVtb3J5X29wZXJhbmQiICJy LEN4MixDWDIsbiIpKSkKKyAgIChjbG9iYmVyIChtYXRjaF9zY3JhdGNoOlFJIDMgICAgICAg ICAgICAgICAgICAgICAgICAiPVgsWCAgLFggICwmZCIpKV0KICAgIiIKICAgIiMiCiAgICIm JiByZWxvYWRfY29tcGxldGVkIgpAQCAtNDc1NSwxMCArNDc1NSwxMCBAQCAoZGVmaW5lX2lu c25fYW5kX3NwbGl0ICJ4b3JoaTMiCiAgICAgICAgICAgICAgIChjbG9iYmVyIChyZWc6Q0Mg UkVHX0NDKSldKV0pCiAKIChkZWZpbmVfaW5zbiAiKnhvcmhpMyIKLSAgWyhzZXQgKG1hdGNo X29wZXJhbmQ6SEkgMCAicmVnaXN0ZXJfb3BlcmFuZCIgICAgICAgIj0/P3IsciAgLHIiKQot ICAgICAgICAoeG9yOkhJIChtYXRjaF9vcGVyYW5kOkhJIDEgInJlZ2lzdGVyX29wZXJhbmQi ICIlMCwwICAsMCIpCi0gICAgICAgICAgICAgICAgKG1hdGNoX29wZXJhbmQ6SEkgMiAibm9u bWVtb3J5X29wZXJhbmQiICJyLEN4MixuIikpKQotICAgKGNsb2JiZXIgKG1hdGNoX3NjcmF0 Y2g6UUkgMyAgICAgICAgICAgICAgICAgICAgICAgICI9WCxYICAsJmQiKSkKKyAgWyhzZXQg KG1hdGNoX29wZXJhbmQ6SEkgMCAicmVnaXN0ZXJfb3BlcmFuZCIgICAgICAgIj0/P3IsciAg LGQgICxyIikKKyAgICAgICAgKHhvcjpISSAobWF0Y2hfb3BlcmFuZDpISSAxICJyZWdpc3Rl cl9vcGVyYW5kIiAiJTAsMCAgLDAgICwwIikKKyAgICAgICAgICAgICAgICAobWF0Y2hfb3Bl cmFuZDpISSAyICJub25tZW1vcnlfb3BlcmFuZCIgInIsQ3gyLENYMixuIikpKQorICAgKGNs b2JiZXIgKG1hdGNoX3NjcmF0Y2g6UUkgMyAgICAgICAgICAgICAgICAgICAgICAgICI9WCxY ICAsWCAgLCZkIikpCiAgICAoY2xvYmJlciAocmVnOkNDIFJFR19DQykpXQogICAicmVsb2Fk X2NvbXBsZXRlZCIKICAgewpAQCAtNDc2NywxNCArNDc2NywxNCBAQCAoZGVmaW5lX2luc24g Iip4b3JoaTMiCiAKICAgICByZXR1cm4gYXZyX291dF9iaXRvcCAoaW5zbiwgb3BlcmFuZHMs IE5VTEwpOwogICB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjIsMiw0IikKLSAgIChzZXRf YXR0ciAiYWRqdXN0X2xlbiIgIiosb3V0X2JpdG9wLG91dF9iaXRvcCIpXSkKKyAgWyhzZXRf YXR0ciAibGVuZ3RoIiAiMiwyLDQsNCIpCisgICAoc2V0X2F0dHIgImFkanVzdF9sZW4iICIq LG91dF9iaXRvcCxvdXRfYml0b3Asb3V0X2JpdG9wIildKQogCiAoZGVmaW5lX2luc25fYW5k X3NwbGl0ICJ4b3Jwc2kzIgotICBbKHNldCAobWF0Y2hfb3BlcmFuZDpQU0kgMCAicmVnaXN0 ZXJfb3BlcmFuZCIgICAgICAgICI9Pz9yLHIgICxyIikKLSAgICAgICAgKHhvcjpQU0kgKG1h dGNoX29wZXJhbmQ6UFNJIDEgInJlZ2lzdGVyX29wZXJhbmQiICIlMCwwICAsMCIpCi0gICAg ICAgICAgICAgICAgIChtYXRjaF9vcGVyYW5kOlBTSSAyICJub25tZW1vcnlfb3BlcmFuZCIg InIsQ3gzLG4iKSkpCi0gICAoY2xvYmJlciAobWF0Y2hfc2NyYXRjaDpRSSAzICAgICAgICAg ICAgICAgICAgICAgICAgICAiPVgsWCAgLCZkIikpXQorICBbKHNldCAobWF0Y2hfb3BlcmFu ZDpQU0kgMCAicmVnaXN0ZXJfb3BlcmFuZCIgICAgICAgICI9Pz9yLHIgICxkICAsciIpCisg ICAgICAgICh4b3I6UFNJIChtYXRjaF9vcGVyYW5kOlBTSSAxICJyZWdpc3Rlcl9vcGVyYW5k IiAiJTAsMCAgLDAgICwwIikKKyAgICAgICAgICAgICAgICAgKG1hdGNoX29wZXJhbmQ6UFNJ IDIgIm5vbm1lbW9yeV9vcGVyYW5kIiAicixDeDMsQ1gzLG4iKSkpCisgICAoY2xvYmJlciAo bWF0Y2hfc2NyYXRjaDpRSSAzICAgICAgICAgICAgICAgICAgICAgICAgICAiPVgsWCAgLFgg ICwmZCIpKV0KICAgIiIKICAgIiMiCiAgICImJiByZWxvYWRfY29tcGxldGVkIgpAQCAtNDc4 NSwxMCArNDc4NSwxMCBAQCAoZGVmaW5lX2luc25fYW5kX3NwbGl0ICJ4b3Jwc2kzIgogICAg ICAgICAgICAgICAgICAgIChjbG9iYmVyIChyZWc6Q0MgUkVHX0NDKSldKV0pCiAKIChkZWZp bmVfaW5zbiAiKnhvcnBzaTMiCi0gIFsoc2V0IChtYXRjaF9vcGVyYW5kOlBTSSAwICJyZWdp c3Rlcl9vcGVyYW5kIiAgICAgICAgIj0/P3IsciAgLHIiKQotICAgICAgICAoeG9yOlBTSSAo bWF0Y2hfb3BlcmFuZDpQU0kgMSAicmVnaXN0ZXJfb3BlcmFuZCIgIiUwLDAgICwwIikKLSAg ICAgICAgICAgICAgICAgKG1hdGNoX29wZXJhbmQ6UFNJIDIgIm5vbm1lbW9yeV9vcGVyYW5k IiAicixDeDMsbiIpKSkKLSAgIChjbG9iYmVyIChtYXRjaF9zY3JhdGNoOlFJIDMgICAgICAg ICAgICAgICAgICAgICAgICAgICI9WCxYICAsJmQiKSkKKyAgWyhzZXQgKG1hdGNoX29wZXJh bmQ6UFNJIDAgInJlZ2lzdGVyX29wZXJhbmQiICAgICAgICAiPT8/cixyICAsZCAgLHIiKQor ICAgICAgICAoeG9yOlBTSSAobWF0Y2hfb3BlcmFuZDpQU0kgMSAicmVnaXN0ZXJfb3BlcmFu ZCIgIiUwLDAgICwwICAsMCIpCisgICAgICAgICAgICAgICAgIChtYXRjaF9vcGVyYW5kOlBT SSAyICJub25tZW1vcnlfb3BlcmFuZCIgInIsQ3gzLENYMyxuIikpKQorICAgKGNsb2JiZXIg KG1hdGNoX3NjcmF0Y2g6UUkgMyAgICAgICAgICAgICAgICAgICAgICAgICAgIj1YLFggICxY ICAsJmQiKSkKICAgIChjbG9iYmVyIChyZWc6Q0MgUkVHX0NDKSldCiAgICJyZWxvYWRfY29t cGxldGVkIgogICB7CkBAIC00Nzk5LDE0ICs0Nzk5LDE0IEBAIChkZWZpbmVfaW5zbiAiKnhv cnBzaTMiCiAKICAgICByZXR1cm4gYXZyX291dF9iaXRvcCAoaW5zbiwgb3BlcmFuZHMsIE5V TEwpOwogICB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjMsNiw2IikKLSAgIChzZXRfYXR0 ciAiYWRqdXN0X2xlbiIgIiosb3V0X2JpdG9wLG91dF9iaXRvcCIpXSkKKyAgWyhzZXRfYXR0 ciAibGVuZ3RoIiAiMyw2LDYsNiIpCisgICAoc2V0X2F0dHIgImFkanVzdF9sZW4iICIqLG91 dF9iaXRvcCxvdXRfYml0b3Asb3V0X2JpdG9wIildKQogCiAoZGVmaW5lX2luc25fYW5kX3Nw bGl0ICJ4b3JzaTMiCi0gIFsoc2V0IChtYXRjaF9vcGVyYW5kOlNJIDAgInJlZ2lzdGVyX29w ZXJhbmQiICAgICAgICI9Pz9yLHIgICxyIikKLSAgICAgICAgKHhvcjpTSSAobWF0Y2hfb3Bl cmFuZDpTSSAxICJyZWdpc3Rlcl9vcGVyYW5kIiAiJTAsMCAgLDAiKQotICAgICAgICAgICAg ICAgIChtYXRjaF9vcGVyYW5kOlNJIDIgIm5vbm1lbW9yeV9vcGVyYW5kIiAicixDeDQsbiIp KSkKLSAgIChjbG9iYmVyIChtYXRjaF9zY3JhdGNoOlFJIDMgICAgICAgICAgICAgICAgICAg ICAgICAiPVgsWCAgLCZkIikpXQorICBbKHNldCAobWF0Y2hfb3BlcmFuZDpTSSAwICJyZWdp c3Rlcl9vcGVyYW5kIiAgICAgICAiPT8/cixyICAsZCAgLHIiKQorICAgICAgICAoeG9yOlNJ IChtYXRjaF9vcGVyYW5kOlNJIDEgInJlZ2lzdGVyX29wZXJhbmQiICIlMCwwICAsMCAgLDAi KQorICAgICAgICAgICAgICAgIChtYXRjaF9vcGVyYW5kOlNJIDIgIm5vbm1lbW9yeV9vcGVy YW5kIiAicixDeDQsQ1g0LG4iKSkpCisgICAoY2xvYmJlciAobWF0Y2hfc2NyYXRjaDpRSSAz ICAgICAgICAgICAgICAgICAgICAgICAgIj1YLFggICxYICAsJmQiKSldCiAgICIiCiAgICIj IgogICAiJiYgcmVsb2FkX2NvbXBsZXRlZCIKQEAgLTQ4MTcsMTAgKzQ4MTcsMTAgQEAgKGRl ZmluZV9pbnNuX2FuZF9zcGxpdCAieG9yc2kzIgogICAgICAgICAgICAgICAoY2xvYmJlciAo cmVnOkNDIFJFR19DQykpXSldKQogCiAoZGVmaW5lX2luc24gIip4b3JzaTMiCi0gIFsoc2V0 IChtYXRjaF9vcGVyYW5kOlNJIDAgInJlZ2lzdGVyX29wZXJhbmQiICAgICAgICI9Pz9yLHIg ICxyIikKLSAgICAgICAgKHhvcjpTSSAobWF0Y2hfb3BlcmFuZDpTSSAxICJyZWdpc3Rlcl9v cGVyYW5kIiAiJTAsMCAgLDAiKQotICAgICAgICAgICAgICAgIChtYXRjaF9vcGVyYW5kOlNJ IDIgIm5vbm1lbW9yeV9vcGVyYW5kIiAicixDeDQsbiIpKSkKLSAgIChjbG9iYmVyIChtYXRj aF9zY3JhdGNoOlFJIDMgICAgICAgICAgICAgICAgICAgICAgICAiPVgsWCAgLCZkIikpCisg IFsoc2V0IChtYXRjaF9vcGVyYW5kOlNJIDAgInJlZ2lzdGVyX29wZXJhbmQiICAgICAgICI9 Pz9yLHIgICxkICAsciIpCisgICAgICAgICh4b3I6U0kgKG1hdGNoX29wZXJhbmQ6U0kgMSAi cmVnaXN0ZXJfb3BlcmFuZCIgIiUwLDAgICwwICAsMCIpCisgICAgICAgICAgICAgICAgKG1h dGNoX29wZXJhbmQ6U0kgMiAibm9ubWVtb3J5X29wZXJhbmQiICJyLEN4NCxDWDQsbiIpKSkK KyAgIChjbG9iYmVyIChtYXRjaF9zY3JhdGNoOlFJIDMgICAgICAgICAgICAgICAgICAgICAg ICAiPVgsWCAgLFggICwmZCIpKQogICAgKGNsb2JiZXIgKHJlZzpDQyBSRUdfQ0MpKV0KICAg InJlbG9hZF9jb21wbGV0ZWQiCiAgIHsKQEAgLTQ4MzIsOCArNDgzMiw4IEBAIChkZWZpbmVf aW5zbiAiKnhvcnNpMyIKIAogICAgIHJldHVybiBhdnJfb3V0X2JpdG9wIChpbnNuLCBvcGVy YW5kcywgTlVMTCk7CiAgIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiNCw4LDgiKQotICAg KHNldF9hdHRyICJhZGp1c3RfbGVuIiAiKixvdXRfYml0b3Asb3V0X2JpdG9wIildKQorICBb KHNldF9hdHRyICJsZW5ndGgiICI0LDgsOCw4IikKKyAgIChzZXRfYXR0ciAiYWRqdXN0X2xl biIgIiosb3V0X2JpdG9wLG91dF9iaXRvcCxvdXRfYml0b3AiKV0pCiAKIAogKGRlZmluZV9z cGxpdApkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9hdnIvY29uc3RyYWludHMubWQgYi9nY2Mv Y29uZmlnL2F2ci9jb25zdHJhaW50cy5tZAppbmRleCBmYWM1NGRhMTdkYi4uYjRlNTUyNWQx OTcgMTAwNjQ0Ci0tLSBhL2djYy9jb25maWcvYXZyL2NvbnN0cmFpbnRzLm1kCisrKyBiL2dj Yy9jb25maWcvYXZyL2NvbnN0cmFpbnRzLm1kCkBAIC0xNjksNyArMTY5LDcgQEAgKGRlZmlu ZV9jb25zdHJhaW50ICJDYTQiCiAgICAgICAgKG1hdGNoX3Rlc3QgImF2cl9wb3Bjb3VudF9l YWNoX2J5dGUgKG9wLCA0LCAoMTw8MCkgfCAoMTw8NykgfCAoMTw8OCkpIikpKQogCiAoZGVm aW5lX2NvbnN0cmFpbnQgIkNvMSIKLSAgIkNvbnN0YW50IDEtYnl0ZSBpbnRlZ2VyIHRoYXQg YWxsb3dzIEFORCBieSBtZWFucyBvZiBTRVQgKyBCTEQuIgorICAiQ29uc3RhbnQgMS1ieXRl IGludGVnZXIgdGhhdCBhbGxvd3MgT1IgYnkgbWVhbnMgb2YgU0VUICsgQkxELiIKICAgKGFu ZCAobWF0Y2hfY29kZSAiY29uc3RfaW50IikKICAgICAgICAobWF0Y2hfdGVzdCAiYXZyX3Bv cGNvdW50X2VhY2hfYnl0ZSAob3AsIDEsIDE8PDEpIikpKQogCkBAIC0yMTgsNiArMjE4LDIx IEBAIChkZWZpbmVfY29uc3RyYWludCAiQ3g0IgogICAoYW5kIChtYXRjaF9jb2RlICJjb25z dF9pbnQiKQogICAgICAgIChtYXRjaF90ZXN0ICJhdnJfcG9wY291bnRfZWFjaF9ieXRlIChv cCwgNCwgKDE8PDApIHwgKDE8PDgpKSIpKSkKIAorKGRlZmluZV9jb25zdHJhaW50ICJDWDIi CisgICJDb25zdGFudCAyLWJ5dGUgaW50ZWdlciB0aGF0IGFsbG93cyBYT1Igd2l0aG91dCBj bG9iYmVyIHJlZ2lzdGVyIGJ1dCByZXF1aXJlcyBhIGQtcmVnaXN0ZXIuIgorICAoYW5kICht YXRjaF9jb2RlICJjb25zdF9pbnQiKQorICAgICAgIChtYXRjaF90ZXN0ICJhdnJfeG9yX25v Y2xvYmJlcl9kY29uc3QgKG9wLCAyKSIpKSkKKworKGRlZmluZV9jb25zdHJhaW50ICJDWDMi CisgICJDb25zdGFudCAzLWJ5dGUgaW50ZWdlciB0aGF0IGFsbG93cyBYT1Igd2l0aG91dCBj bG9iYmVyIHJlZ2lzdGVyIGJ1dCByZXF1aXJlcyBhIGQtcmVnaXN0ZXIuIgorICAoYW5kICht YXRjaF9jb2RlICJjb25zdF9pbnQiKQorICAgICAgIChtYXRjaF90ZXN0ICJhdnJfeG9yX25v Y2xvYmJlcl9kY29uc3QgKG9wLCAzKSIpKSkKKworKGRlZmluZV9jb25zdHJhaW50ICJDWDQi CisgICJDb25zdGFudCA0LWJ5dGUgaW50ZWdlciB0aGF0IGFsbG93cyBYT1Igd2l0aG91dCBj bG9iYmVyIHJlZ2lzdGVyIGJ1dCByZXF1aXJlcyBhIGQtcmVnaXN0ZXIuIgorICAoYW5kICht YXRjaF9jb2RlICJjb25zdF9pbnQiKQorICAgICAgIChtYXRjaF90ZXN0ICJhdnJfeG9yX25v Y2xvYmJlcl9kY29uc3QgKG9wLCA0KSIpKSkKKwogKGRlZmluZV9jb25zdHJhaW50ICJDc3Ai CiAgICJJbnRlZ2VyIGNvbnN0YW50IGluIHRoZSByYW5nZSAtMTEgQGRvdHN7fSA2LiIKICAg KGFuZCAobWF0Y2hfY29kZSAiY29uc3RfaW50IikK --------------zlAsehAlC7Btf460eiduvK70--