From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com [IPv6:2a00:1450:4864:20::231]) by sourceware.org (Postfix) with ESMTPS id 528AE3858D37 for ; Mon, 18 Mar 2024 10:58:39 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 528AE3858D37 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 528AE3858D37 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::231 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1710759523; cv=none; b=rTdqcSMo89d+bgOeQHHE9aNof+wEmFzf9ir/pV8dfiPRJ3TiwlaVacQG7pFjTafragKMngNt7fid/rXyzi8qawsXnP6zbX+qy4n5geqSMAKn3Z0KGRBUIjpgn+zMNre6AhhnKN9AD382DR9WVL0AP6/ivCcUx7TeDzTvQq88WII= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1710759523; c=relaxed/simple; bh=sqOVSAmiT54WHmHt78aJJ7bsF5XNd2541bjbzOTIiTs=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=WmSPFbpT7L6X8jNTbMzavhGgdDfOqPFu7f1MBx/wohEWX8Chye9614VH4LL1ZaJX8D/nHHFhLnl8CZueU23ey6vIXRsQiuLmFDeUw+Y1wWcCrX3oEpgtV5yCn7Mo9yBJw+HaQvwzPrsUAJwEIcZ8grtpoYMgjNQwes7XTV4Cq3I= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-lj1-x231.google.com with SMTP id 38308e7fff4ca-2d220e39907so62251111fa.1 for ; Mon, 18 Mar 2024 03:58:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710759518; x=1711364318; darn=gcc.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=8/uV5G3wtokLkce9iv5mf6n/JbnlpeJ/dkXLWeT94/o=; b=YrpPO3RQpDmzGEEUGLCWjCVhVorvY+L1Dt20eq3UQgbcyoITsXRiL53sI/HMNjKqkY I85O4rUNY1euuNN8KOpQMSNow3GK/KO7q2SJ9acYMl2hmuNeHCjYtorr9/LgX8sVhwgE b2Bt1SvDnZ9MjF7woZe3vC/MevICNWtrSgm2ZaOB8QYV/FkYj1uGEJBAapMHTWBODxP1 zpHWcvYg+i2p7sgX7CxUbIknY7ycMAbhSsy1Ro52E39YfHMLz1bZZ7gLph+MBxXOmqV/ SzrrhJAXT55GLCyiw0FyonWxW2pCKUbsi48+uibKbmvki+SvJ+JA8UTTZxeS+Z5c8LDx QpdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710759518; x=1711364318; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=8/uV5G3wtokLkce9iv5mf6n/JbnlpeJ/dkXLWeT94/o=; b=oJ73fmBeo3x6NJjHtBBTk7l8RNoCnswaTUuuW+F+Fxj/MYFO2TioLAnNLYAtKs2lLl PZMGAFFKYPAMF6DAB9TYkv2WTeZ8cl28ZUSPocBlgxRdBjJpWDXsux2sfxe4s64foEbb 1njboLxH5gSEJPnRIiY0/kOqpaF8kQvXz8bpS3HKaNVaw8l7g7gqac42GuB2oGvrvW5J LBfYw1Jyd+SU7Mr+dNURRqXj/2IWokWBULdrg+0gzVZrx+YhI4XoYU9WL4AFBLzwiCqE vcboiNcyJGCV5p8YcjeVtmZDEsZQxN4BbCvMeII0CiybsmFdytJt5IBDFJroSprkPISp SvnQ== X-Gm-Message-State: AOJu0Yx0QuHoGfqqVcjjXTnHjsctuuqZVVrg+ekr02fZg2QtkJ5IVraJ SwpeDZ3ZpgFr/xdvTVZchUluNSmGQlBAWOcSsF1Wj3t8XWj3E2s42w7OPsvI4L7HuD9d0BbM7/g +DBnPPC93pfYZ23kzHc7/Vic+nY0= X-Google-Smtp-Source: AGHT+IEc7mp49hyJVuSlL8uvRLnEDe/MDU0YYs5FOreZwyUnQaEIwC3+ZVtzzOk+4oF+X3tOjUe/9LYBsSbk5jGAETw= X-Received: by 2002:a2e:a592:0:b0:2d4:6bad:69cd with SMTP id m18-20020a2ea592000000b002d46bad69cdmr8691073ljp.22.1710759517367; Mon, 18 Mar 2024 03:58:37 -0700 (PDT) MIME-Version: 1.0 References: <20240318105200.3555938-1-hongtao.liu@intel.com> In-Reply-To: <20240318105200.3555938-1-hongtao.liu@intel.com> From: Uros Bizjak Date: Mon, 18 Mar 2024 11:58:25 +0100 Message-ID: Subject: Re: [PATCH] i386 [stv]: Handle REG_EH_REGION note [pr111822]. To: liuhongt Cc: gcc-patches@gcc.gnu.org Content-Type: multipart/mixed; boundary="00000000000054466e0613ed3dd6" X-Spam-Status: No, score=-8.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,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: --00000000000054466e0613ed3dd6 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Mar 18, 2024 at 11:52=E2=80=AFAM liuhongt w= rote: > > Commit r14-9459-g618e34d56cc38e only handles > general_scalar_chain::convert_op. The patch also handles > timode_scalar_chain::convert_op to avoid potential similar bug. > > Bootstrapped and regtested on x86_64-pc-linux-gnu{-m32,}. > Ok for trunk and backport to releases/gcc-13 branch? I have the following patch in testing that merges {general,timode}_scalar_chain::convert_op, so in addition to less code duplication, it will fix the issue for both chains. WDYT? Uros. > > gcc/ChangeLog: > > PR target/111822 > * config/i386/i386-features.cc > (timode_scalar_chain::convert_op): Handle REG_EH_REGION note. > --- > gcc/config/i386/i386-features.cc | 20 +++++++++++++++++--- > 1 file changed, 17 insertions(+), 3 deletions(-) > > diff --git a/gcc/config/i386/i386-features.cc b/gcc/config/i386/i386-feat= ures.cc > index c7d7a965901..38f57d96df5 100644 > --- a/gcc/config/i386/i386-features.cc > +++ b/gcc/config/i386/i386-features.cc > @@ -1794,12 +1794,26 @@ timode_scalar_chain::convert_op (rtx *op, rtx_ins= n *insn) > *op =3D gen_rtx_SUBREG (V1TImode, *op, 0); > else if (MEM_P (*op)) > { > + rtx_insn* eh_insn; > rtx tmp =3D gen_reg_rtx (V1TImode); > - emit_insn_before (gen_rtx_SET (tmp, > - gen_gpr_to_xmm_move_src (V1TImode, *= op)), > - insn); > + eh_insn > + =3D emit_insn_before (gen_rtx_SET (tmp, > + gen_gpr_to_xmm_move_src (V1TImod= e, > + *op)), > + insn); > *op =3D tmp; > > + if (cfun->can_throw_non_call_exceptions) > + { > + /* Handle REG_EH_REGION note. */ > + rtx note =3D find_reg_note (insn, REG_EH_REGION, NULL_RTX); > + if (note) > + { > + control_flow_insns.safe_push (eh_insn); > + add_reg_note (eh_insn, REG_EH_REGION, XEXP (note, 0)); > + } > + } > + > if (dump_file) > fprintf (dump_file, " Preloading operand for insn %d into r%d\n"= , > INSN_UID (insn), REGNO (tmp)); > -- > 2.31.1 > --00000000000054466e0613ed3dd6 Content-Type: text/plain; charset="US-ASCII"; name="p.diff.txt" Content-Disposition: attachment; filename="p.diff.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_ltwu1bm80 ZGlmZiAtLWdpdCBhL2djYy9jb25maWcvaTM4Ni9pMzg2LWZlYXR1cmVzLmNjIGIvZ2NjL2NvbmZp Zy9pMzg2L2kzODYtZmVhdHVyZXMuY2MKaW5kZXggYzdkN2E5NjU5MDEuLjZkN2VmMjhlNGIxIDEw MDY0NAotLS0gYS9nY2MvY29uZmlnL2kzODYvaTM4Ni1mZWF0dXJlcy5jYworKysgYi9nY2MvY29u ZmlnL2kzODYvaTM4Ni1mZWF0dXJlcy5jYwpAQCAtOTgwLDE0ICs5ODAsMzYgQEAgc2NhbGFyX2No YWluOjpjb252ZXJ0X3JlZyAocnR4X2luc24gKmluc24sIHJ0eCBkc3QsIHJ0eCBzcmMpCiAJICAg ICBSRUdOTyAoc3JjKSwgUkVHTk8gKGRzdCksIElOU05fVUlEIChpbnNuKSk7CiB9CiAKKworLyog SGVscGVyIGZ1bmN0aW9uIHRvIGNvbnZlcnQgaW1tZWRpYXRlIGNvbnN0YW50IFggdG8gdm1vZGUu ICAqLworc3RhdGljIHJ0eAorc21vZGVfY29udmVydF9jc3QgKHJ0eCB4LCBlbnVtIG1hY2hpbmVf bW9kZSB2bW9kZSkKK3sKKyAgLyogUHJlZmVyIGFsbCBvbmVzIHZlY3RvciBpbiBjYXNlIG9mIC0x LiAgKi8KKyAgaWYgKGNvbnN0bTFfb3BlcmFuZCAoeCwgR0VUX01PREUgKHgpKSkKKyAgICByZXR1 cm4gIENPTlNUTTFfUlRYICh2bW9kZSk7CisKKyAgdW5zaWduZWQgbiA9IEdFVF9NT0RFX05VTklU UyAodm1vZGUpOworICBydHggKnYgPSBYQUxMT0NBVkVDIChydHgsIG4pOworICB2WzBdID0geDsK KyAgZm9yICh1bnNpZ25lZCBpID0gMTsgaSA8IG47ICsraSkKKyAgICB2W2ldID0gY29uc3QwX3J0 eDsKKyAgcmV0dXJuIGdlbl9ydHhfQ09OU1RfVkVDVE9SICh2bW9kZSwgZ2VuX3J0dmVjX3YgKG4s IHYpKTsKK30KKwogLyogQ29udmVydCBvcGVyYW5kIE9QIGluIElOU04uICBXZSBzaG91bGQgaGFu ZGxlCiAgICBtZW1vcnkgb3BlcmFuZHMgYW5kIHVuaW5pdGlhbGl6ZWQgcmVnaXN0ZXJzLgogICAg QWxsIG90aGVyIHJlZ2lzdGVyIHVzZXMgYXJlIGNvbnZlcnRlZCBkdXJpbmcKICAgIHJlZ2lzdGVy cyBjb252ZXJzaW9uLiAgKi8KIAogdm9pZAotZ2VuZXJhbF9zY2FsYXJfY2hhaW46OmNvbnZlcnRf b3AgKHJ0eCAqb3AsIHJ0eF9pbnNuICppbnNuKQorc2NhbGFyX2NoYWluOjpjb252ZXJ0X29wIChy dHggKm9wLCBydHhfaW5zbiAqaW5zbikKIHsKKyAgcnR4IHRtcDsKKworICBpZiAoR0VUX01PREUg KCpvcCkgPT0gVjFUSW1vZGUpCisgICAgcmV0dXJuOworCiAgICpvcCA9IGNvcHlfcnR4X2lmX3No YXJlZCAoKm9wKTsKIAogICBpZiAoR0VUX0NPREUgKCpvcCkgPT0gTk9UCkBAIC05OTgsMjAgKzEw MjAsMjEgQEAgZ2VuZXJhbF9zY2FsYXJfY2hhaW46OmNvbnZlcnRfb3AgKHJ0eCAqb3AsIHJ0eF9p bnNuICppbnNuKQogICAgIH0KICAgZWxzZSBpZiAoTUVNX1AgKCpvcCkpCiAgICAgewotICAgICAg cnR4X2luc24qIGVoX2luc24sICptb3ZhYnMgPSBOVUxMOwotICAgICAgcnR4IHRtcCA9IGdlbl9y ZWdfcnR4IChHRVRfTU9ERSAoKm9wKSk7CisgICAgICBydHhfaW5zbiAqbW92YWJzID0gTlVMTDsK IAogICAgICAgLyogRW1pdCBNT1ZBQlMgdG8gbG9hZCBmcm9tIGEgNjQtYml0IGFic29sdXRlIGFk ZHJlc3MgdG8gYSBHUFIuICAqLwogICAgICAgaWYgKCFtZW1vcnlfb3BlcmFuZCAoKm9wLCBHRVRf TU9ERSAoKm9wKSkpCiAJewotCSAgcnR4IHRtcDIgPSBnZW5fcmVnX3J0eCAoR0VUX01PREUgKCpv cCkpOwotCSAgbW92YWJzID0gZW1pdF9pbnNuX2JlZm9yZSAoZ2VuX3J0eF9TRVQgKHRtcDIsICpv cCksIGluc24pOworCSAgdG1wID0gZ2VuX3JlZ19ydHggKEdFVF9NT0RFICgqb3ApKTsKKwkgIG1v dmFicyA9IGVtaXRfaW5zbl9iZWZvcmUgKGdlbl9ydHhfU0VUICh0bXAsICpvcCksIGluc24pOwog Ci0JICAqb3AgPSB0bXAyOworCSAgKm9wID0gdG1wOwogCX0KIAotICAgICAgZWhfaW5zbgotCT0g ZW1pdF9pbnNuX2JlZm9yZSAoZ2VuX3J0eF9TRVQgKGdlbl9ydHhfU1VCUkVHICh2bW9kZSwgdG1w LCAwKSwKKyAgICAgIHRtcCA9IGdlbl9ydHhfU1VCUkVHICh2bW9kZSwgZ2VuX3JlZ19ydHggKEdF VF9NT0RFICgqb3ApKSwgMCk7CisKKyAgICAgIHJ0eF9pbnNuICplaF9pbnNuCisJPSBlbWl0X2lu c25fYmVmb3JlIChnZW5fcnR4X1NFVCAoY29weV9ydHggKHRtcCksCiAJCQkJCSBnZW5fZ3ByX3Rv X3htbV9tb3ZlX3NyYyAodm1vZGUsICpvcCkpLAogCQkJICAgIGluc24pOwogCkBAIC0xMDI4LDMz ICsxMDUxLDE4IEBAIGdlbmVyYWxfc2NhbGFyX2NoYWluOjpjb252ZXJ0X29wIChydHggKm9wLCBy dHhfaW5zbiAqaW5zbikKIAkgICAgfQogCX0KIAotICAgICAgKm9wID0gZ2VuX3J0eF9TVUJSRUcg KHZtb2RlLCB0bXAsIDApOworICAgICAgKm9wID0gdG1wOwogCiAgICAgICBpZiAoZHVtcF9maWxl KQogCWZwcmludGYgKGR1bXBfZmlsZSwgIiAgUHJlbG9hZGluZyBvcGVyYW5kIGZvciBpbnNuICVk IGludG8gciVkXG4iLAogCQkgSU5TTl9VSUQgKGluc24pLCBSRUdOTyAodG1wKSk7CiAgICAgfQog ICBlbHNlIGlmIChSRUdfUCAoKm9wKSkKKyAgICAqb3AgPSBnZW5fcnR4X1NVQlJFRyAodm1vZGUs ICpvcCwgMCk7CisgIGVsc2UgaWYgKENPTlNUX1NDQUxBUl9JTlRfUCAoKm9wKSkKICAgICB7Ci0g ICAgICAqb3AgPSBnZW5fcnR4X1NVQlJFRyAodm1vZGUsICpvcCwgMCk7Ci0gICAgfQotICBlbHNl IGlmIChDT05TVF9JTlRfUCAoKm9wKSkKLSAgICB7Ci0gICAgICBydHggdmVjX2NzdDsKICAgICAg IHJ0eCB0bXAgPSBnZW5fcnR4X1NVQlJFRyAodm1vZGUsIGdlbl9yZWdfcnR4IChzbW9kZSksIDAp OwotCi0gICAgICAvKiBQcmVmZXIgYWxsIG9uZXMgdmVjdG9yIGluIGNhc2Ugb2YgLTEuICAqLwot ICAgICAgaWYgKGNvbnN0bTFfb3BlcmFuZCAoKm9wLCBHRVRfTU9ERSAoKm9wKSkpCi0JdmVjX2Nz dCA9IENPTlNUTTFfUlRYICh2bW9kZSk7Ci0gICAgICBlbHNlCi0JewotCSAgdW5zaWduZWQgbiA9 IEdFVF9NT0RFX05VTklUUyAodm1vZGUpOwotCSAgcnR4ICp2ID0gWEFMTE9DQVZFQyAocnR4LCBu KTsKLQkgIHZbMF0gPSAqb3A7Ci0JICBmb3IgKHVuc2lnbmVkIGkgPSAxOyBpIDwgbjsgKytpKQot CSAgICB2W2ldID0gY29uc3QwX3J0eDsKLQkgIHZlY19jc3QgPSBnZW5fcnR4X0NPTlNUX1ZFQ1RP UiAodm1vZGUsIGdlbl9ydHZlY192IChuLCB2KSk7Ci0JfQorICAgICAgcnR4IHZlY19jc3QgPSBz bW9kZV9jb252ZXJ0X2NzdCAoKm9wLCB2bW9kZSk7CiAKICAgICAgIGlmICghc3RhbmRhcmRfc3Nl X2NvbnN0YW50X3AgKHZlY19jc3QsIHZtb2RlKSkKIAl7CkBAIC0xNzY3LDY3ICsxNzc1LDYgQEAg dGltb2RlX3NjYWxhcl9jaGFpbjo6Zml4X2RlYnVnX3JlZ191c2VzIChydHggcmVnKQogICAgIH0K IH0KIAotLyogSGVscGVyIGZ1bmN0aW9uIHRvIGNvbnZlcnQgaW1tZWRpYXRlIGNvbnN0YW50IFgg dG8gVjFUSW1vZGUuICAqLwotc3RhdGljIHJ0eAotdGltb2RlX2NvbnZlcnRfY3N0IChydHggeCkK LXsKLSAgLyogUHJlZmVyIGFsbCBvbmVzIHZlY3RvciBpbiBjYXNlIG9mIC0xLiAgKi8KLSAgaWYg KGNvbnN0bTFfb3BlcmFuZCAoeCwgVEltb2RlKSkKLSAgICByZXR1cm4gQ09OU1RNMV9SVFggKFYx VEltb2RlKTsKLQotICBydHggKnYgPSBYQUxMT0NBVkVDIChydHgsIDEpOwotICB2WzBdID0geDsK LSAgcmV0dXJuIGdlbl9ydHhfQ09OU1RfVkVDVE9SIChWMVRJbW9kZSwgZ2VuX3J0dmVjX3YgKDEs IHYpKTsKLX0KLQotLyogQ29udmVydCBvcGVyYW5kIE9QIGluIElOU04gZnJvbSBUSW1vZGUgdG8g VjFUSW1vZGUuICAqLwotCi12b2lkCi10aW1vZGVfc2NhbGFyX2NoYWluOjpjb252ZXJ0X29wIChy dHggKm9wLCBydHhfaW5zbiAqaW5zbikKLXsKLSAgaWYgKEdFVF9NT0RFICgqb3ApID09IFYxVElt b2RlKQotICAgIHJldHVybjsKLQotICAqb3AgPSBjb3B5X3J0eF9pZl9zaGFyZWQgKCpvcCk7Ci0K LSAgaWYgKFJFR19QICgqb3ApKQotICAgICpvcCA9IGdlbl9ydHhfU1VCUkVHIChWMVRJbW9kZSwg Km9wLCAwKTsKLSAgZWxzZSBpZiAoTUVNX1AgKCpvcCkpCi0gICAgewotICAgICAgcnR4IHRtcCA9 IGdlbl9yZWdfcnR4IChWMVRJbW9kZSk7Ci0gICAgICBlbWl0X2luc25fYmVmb3JlIChnZW5fcnR4 X1NFVCAodG1wLAotCQkJCSAgICAgZ2VuX2dwcl90b194bW1fbW92ZV9zcmMgKFYxVEltb2RlLCAq b3ApKSwKLQkJCWluc24pOwotICAgICAgKm9wID0gdG1wOwotCi0gICAgICBpZiAoZHVtcF9maWxl KQotCWZwcmludGYgKGR1bXBfZmlsZSwgIiAgUHJlbG9hZGluZyBvcGVyYW5kIGZvciBpbnNuICVk IGludG8gciVkXG4iLAotCQkgSU5TTl9VSUQgKGluc24pLCBSRUdOTyAodG1wKSk7Ci0gICAgfQot ICBlbHNlIGlmIChDT05TVF9TQ0FMQVJfSU5UX1AgKCpvcCkpCi0gICAgewotICAgICAgcnR4IHRt cCA9IGdlbl9yZWdfcnR4IChWMVRJbW9kZSk7Ci0gICAgICBydHggdmVjX2NzdCA9IHRpbW9kZV9j b252ZXJ0X2NzdCAoKm9wKTsKLQotICAgICAgaWYgKCFzdGFuZGFyZF9zc2VfY29uc3RhbnRfcCAo dmVjX2NzdCwgVjFUSW1vZGUpKQotCXsKLQkgIHN0YXJ0X3NlcXVlbmNlICgpOwotCSAgdmVjX2Nz dCA9IHZhbGlkaXplX21lbSAoZm9yY2VfY29uc3RfbWVtIChWMVRJbW9kZSwgdmVjX2NzdCkpOwot CSAgcnR4X2luc24gKnNlcSA9IGdldF9pbnNucyAoKTsKLQkgIGVuZF9zZXF1ZW5jZSAoKTsKLQkg IGVtaXRfaW5zbl9iZWZvcmUgKHNlcSwgaW5zbik7Ci0JfQotCi0gICAgICBlbWl0X2luc25fYmVm b3JlIChnZW5fbW92ZV9pbnNuICh0bXAsIHZlY19jc3QpLCBpbnNuKTsKLSAgICAgICpvcCA9IHRt cDsKLSAgICB9Ci0gIGVsc2UKLSAgICB7Ci0gICAgICBnY2NfYXNzZXJ0IChTVUJSRUdfUCAoKm9w KSk7Ci0gICAgICBnY2NfYXNzZXJ0IChHRVRfTU9ERSAoKm9wKSA9PSB2bW9kZSk7Ci0gICAgfQot fQotCiAvKiBDb252ZXJ0IElOU04gZnJvbSBUSW1vZGUgdG8gVjFUMW1vZGUuICAqLwogCiB2b2lk CkBAIC0xODkyLDcgKzE4MzksNyBAQCB0aW1vZGVfc2NhbGFyX2NoYWluOjpjb252ZXJ0X2luc24g KHJ0eF9pbnNuICppbnNuKQogCSAgICB9CiAJICBlbHNlCiAJICAgIHsKLQkgICAgICBzcmMgPSB0 aW1vZGVfY29udmVydF9jc3QgKHNyYyk7CisJICAgICAgc3JjID0gc21vZGVfY29udmVydF9jc3Qg KHNyYywgVjFUSW1vZGUpOwogCSAgICAgIHNyYyA9IHZhbGlkaXplX21lbSAoZm9yY2VfY29uc3Rf bWVtIChWMVRJbW9kZSwgc3JjKSk7CiAJICAgICAgdXNlX21vdmUgPSBNRU1fUCAoZHN0KTsKIAkg ICAgfQpkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9pMzg2L2kzODYtZmVhdHVyZXMuaCBiL2djYy9j b25maWcvaTM4Ni9pMzg2LWZlYXR1cmVzLmgKaW5kZXggYjI1OWNmNjc5YWYuLjZkNjBmNTZkYWE4 IDEwMDY0NAotLS0gYS9nY2MvY29uZmlnL2kzODYvaTM4Ni1mZWF0dXJlcy5oCisrKyBiL2djYy9j b25maWcvaTM4Ni9pMzg2LWZlYXR1cmVzLmgKQEAgLTE2MCw2ICsxNjAsNyBAQCBjbGFzcyBzY2Fs YXJfY2hhaW4KICAgYm9vbCBidWlsZCAoYml0bWFwIGNhbmRpZGF0ZXMsIHVuc2lnbmVkIGluc25f dWlkLCBiaXRtYXAgZGlzYWxsb3dlZCk7CiAgIHZpcnR1YWwgaW50IGNvbXB1dGVfY29udmVydF9n YWluICgpID0gMDsKICAgaW50IGNvbnZlcnQgKCk7CisgIHZvaWQgY29udmVydF9vcCAocnR4ICpv cCwgcnR4X2luc24gKmluc24pOwogCiAgcHJvdGVjdGVkOgogICB2b2lkIGFkZF90b19xdWV1ZSAo dW5zaWduZWQgaW5zbl91aWQpOwpAQCAtMTc2LDcgKzE3Nyw2IEBAIGNsYXNzIHNjYWxhcl9jaGFp bgogICBib29sIGFuYWx5emVfcmVnaXN0ZXJfY2hhaW4gKGJpdG1hcCBjYW5kaWRhdGVzLCBkZl9y ZWYgcmVmLAogCQkJICAgICAgIGJpdG1hcCBkaXNhbGxvd2VkKTsKICAgdmlydHVhbCB2b2lkIGNv bnZlcnRfaW5zbiAocnR4X2luc24gKmluc24pID0gMDsKLSAgdmlydHVhbCB2b2lkIGNvbnZlcnRf b3AgKHJ0eCAqb3AsIHJ0eF9pbnNuICppbnNuKSA9IDA7CiB9OwogCiBjbGFzcyBnZW5lcmFsX3Nj YWxhcl9jaGFpbiA6IHB1YmxpYyBzY2FsYXJfY2hhaW4KQEAgLTE4OCw3ICsxODgsNiBAQCBjbGFz cyBnZW5lcmFsX3NjYWxhcl9jaGFpbiA6IHB1YmxpYyBzY2FsYXJfY2hhaW4KIAogIHByaXZhdGU6 CiAgIHZvaWQgY29udmVydF9pbnNuIChydHhfaW5zbiAqaW5zbikgZmluYWwgb3ZlcnJpZGU7Ci0g IHZvaWQgY29udmVydF9vcCAocnR4ICpvcCwgcnR4X2luc24gKmluc24pIGZpbmFsIG92ZXJyaWRl OwogICBpbnQgdmVjdG9yX2NvbnN0X2Nvc3QgKHJ0eCBleHApOwogICBydHggY29udmVydF9yb3Rh dGUgKGVudW0gcnR4X2NvZGUsIHJ0eCBvcDAsIHJ0eCBvcDEsIHJ0eF9pbnNuICppbnNuKTsKIH07 CkBAIC0yMDIsNyArMjAxLDYgQEAgY2xhc3MgdGltb2RlX3NjYWxhcl9jaGFpbiA6IHB1YmxpYyBz Y2FsYXJfY2hhaW4KICBwcml2YXRlOgogICB2b2lkIGZpeF9kZWJ1Z19yZWdfdXNlcyAocnR4IHJl Zyk7CiAgIHZvaWQgY29udmVydF9pbnNuIChydHhfaW5zbiAqaW5zbikgZmluYWwgb3ZlcnJpZGU7 Ci0gIHZvaWQgY29udmVydF9vcCAocnR4ICpvcCwgcnR4X2luc24gKmluc24pIGZpbmFsIG92ZXJy aWRlOwogfTsKIAogfSAvLyBhbm9uIG5hbWVzcGFjZQo= --00000000000054466e0613ed3dd6--