[{"id":3678888,"web_url":"http://patchwork.ozlabs.org/comment/3678888/","msgid":"<CA+=Sn1mX9ysh_QhpOmOxPyC=xSb8Z_4=qowxvwnoeFy1eWkxqw@mail.gmail.com>","list_archive_url":null,"date":"2026-04-17T20:54:00","subject":"Re: [PATCH v3] match.pd: (A>>bool) == 0 -> (unsigned)A) <= bool\n [PR119420]","submitter":{"id":40,"url":"http://patchwork.ozlabs.org/api/people/40/","name":"Andrew Pinski","email":"pinskia@gmail.com"},"content":"On Fri, Apr 17, 2026 at 6:03 AM Daniel Henrique Barboza\n<daniel.barboza@oss.qualcomm.com> wrote:\n>\n> From: Daniel Barboza <daniel.barboza@oss.qualcomm.com>\n>\n> Also add its counterpart:\n>\n> \"(A>>bool) != 0 -> (unsigned)A) > bool\"\n>\n> Bootstrap tested in x86, aarch64 and RISC-V.\n> Regression tested in x86 and aarch64.\n>\n>         PR tree-optimization/119420\n>\n> gcc/ChangeLog:\n>\n>         * match.pd(`(A>>bool) EQ 0 -> (unsigned)A) LE bool`): New\n>         pattern.\n>\n> gcc/testsuite/ChangeLog:\n>\n>         * gcc.dg/tree-ssa/pr119420.c: New test.\n> ---\n>\n> Changes from v2:\n> - gate the pattern with \"#if GIMPLE\"\n> - use 'single_use' in the rshift result\n> - add the NE variant\n> - v2 link: https://gcc.gnu.org/pipermail/gcc-patches/2026-April/712431.html\n>\n>  gcc/match.pd                             | 13 ++++++++\n>  gcc/testsuite/gcc.dg/tree-ssa/pr119420.c | 42 ++++++++++++++++++++++++\n>  2 files changed, 55 insertions(+)\n>  create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/pr119420.c\n>\n> diff --git a/gcc/match.pd b/gcc/match.pd\n> index 7b652afb43d..fab1da673d1 100644\n> --- a/gcc/match.pd\n> +++ b/gcc/match.pd\n> @@ -5367,6 +5367,19 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)\n>        @0)))))\n>  #endif\n>\n> +#if GIMPLE\n> +/* PR119420: (A >> bool) == 0 -> (unsigned)a <= (unsigned)bool\n> +   and its variant:\n> +   (A >> bool) != 0 -> (unsigned)a > (unsigned)bool;  */\n> +(for cmp (eq ne)\n> +     icmp (le gt)\n> + (simplify\n> +  (cmp (rshift@2 @0 zero_one_valued_p@1) integer_zerop)\n> +  (if (single_use (@2))\n\nThis is patch is ok as is.\nNow I think we could improve things here slightly but that is\ndefinitely a follow up.\nI think the check here could become `single_use (@2) ||\nfold_before_rtl_expansion_p ()`. (likewise for the other case).\nMaybe even add a `use_only_in_compare_with_cst (@2)` might a check we\nadd later on. This checks to makes sure all the uses of the SSA_NAME\npassed in is used with a comparison that has a constant.\nI have seen other places which could use either of these checks even.\n\nThanks,\nAndrew\n\n> +   (with { tree utype = unsigned_type_for (TREE_TYPE (@0)); }\n> +    (icmp (convert:utype @0) (convert:utype @1))))))\n> +#endif\n> +\n>  /* Rewrite an LROTATE_EXPR by a constant into an\n>     RROTATE_EXPR by a new constant.  */\n>  (simplify\n> diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr119420.c b/gcc/testsuite/gcc.dg/tree-ssa/pr119420.c\n> new file mode 100644\n> index 00000000000..99259fd4a8b\n> --- /dev/null\n> +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr119420.c\n> @@ -0,0 +1,42 @@\n> +/* { dg-additional-options -O2 } */\n> +/* { dg-additional-options -fdump-tree-optimized } */\n> +\n> +int ll (signed a)\n> +{\n> +  int d = a >> 1;\n> +  return d == 0;\n> +}\n> +\n> +int ll1 (signed a)\n> +{\n> +  int d = a & ~1;\n> +  return d == 0;\n> +}\n> +\n> +int ll2 (signed a)\n> +{\n> +  unsigned aa = a;\n> +  return aa <= 1;\n> +}\n> +\n> +int ll3 (signed a)\n> +{\n> +  int d = a >> 1;\n> +  return d != 0;\n> +}\n> +\n> +int ll4 (signed a)\n> +{\n> +  int d = a & ~1;\n> +  return d != 0;\n> +}\n> +\n> +int ll5 (signed a)\n> +{\n> +  unsigned aa = a;\n> +  return aa > 1;\n> +}\n> +\n> +/* { dg-final { scan-tree-dump-times \" >> \" 0 optimized } } */\n> +/* { dg-final { scan-tree-dump-times \" <= \" 3 optimized } } */\n> +/* { dg-final { scan-tree-dump-times \" > \" 3 optimized } } */\n> --\n> 2.43.0\n>","headers":{"Return-Path":"<gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org>","X-Original-To":["incoming@patchwork.ozlabs.org","gcc-patches@gcc.gnu.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","gcc-patches@gcc.gnu.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=P/HhnJo5;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org\n (client-ip=2620:52:6:3111::32; helo=vm01.sourceware.org;\n envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org;\n receiver=patchwork.ozlabs.org)","sourceware.org;\n\tdkim=pass (2048-bit key,\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=P/HhnJo5","sourceware.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com","sourceware.org; spf=pass smtp.mailfrom=gmail.com","server2.sourceware.org;\n arc=pass smtp.remote-ip=74.125.82.51"],"Received":["from vm01.sourceware.org (vm01.sourceware.org\n [IPv6:2620:52:6:3111::32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fy6ZX6xD8z1yDF\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 18 Apr 2026 06:54:43 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id A191B4CD201D\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 17 Apr 2026 20:54:41 +0000 (GMT)","from mail-dl1-f51.google.com (mail-dl1-f51.google.com\n [74.125.82.51])\n by sourceware.org (Postfix) with ESMTPS id 8865B4BA2E3C\n for <gcc-patches@gcc.gnu.org>; Fri, 17 Apr 2026 20:54:13 +0000 (GMT)","by mail-dl1-f51.google.com with SMTP id\n a92af1059eb24-12c1a170a50so1540183c88.0\n for <gcc-patches@gcc.gnu.org>; Fri, 17 Apr 2026 13:54:13 -0700 (PDT)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org A191B4CD201D","OpenDKIM Filter v2.11.0 sourceware.org 8865B4BA2E3C"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org 8865B4BA2E3C","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org 8865B4BA2E3C","ARC-Seal":["i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1776459253; cv=pass;\n b=KeNkIUtQooq++UMMfR06lJwA8Tgh5jkowIEt1kfFPJcH9HmOrtElB6OEnODdr0h9NpC5GCo3eTLcAh5Zy9cuErBAjxtQW1s8OiWOytTQCk3gPDUCUJALQh0Kt9NBL/6yvYgnifoy0NbcEQeOjtdJ/KvVg2XyQguOpzFD4yBHzJ0=","i=1; a=rsa-sha256; t=1776459252; cv=none;\n d=google.com; s=arc-20240605;\n b=XqicT3aNuhWBKou+/UCy0os6E0JI716GoIZjDjnKzQKuqFOCCyxgJNhi+E/uEb6u+w\n 95+oaRUiu+Y/drTJW0hjF7ZxW0z5/t3RfUoo032QOBS6uZac2zrEsoxms+pG0CK0ZeWQ\n KW4V3u/Fpl4QlBafO299MAy/yhKiOUcExVT8peNPvPkwxnOQtcPSJfS9D3NEIOTCizmY\n Iku5LbitI1+RnwLxIzelCtpiOWf+k8ZAO5SDNk9lJDWgYzfZIqbyWvJBijbmDjZkF925\n LgVsbCzMb01ANnZp3uFTLf4cdcRMQkLZAaRHurOivD0Gj2liIusC4i/t1bczPe07k87I\n SOBw=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=sourceware.org; s=key;\n t=1776459253; c=relaxed/simple;\n bh=DPpjPR4Z19DkZ2M9LgkAkAc1Jqc0hjKYPaZifZWBmL8=;\n h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To;\n b=knzOehvMS0Wrllesiig9dNFU+fmjEru3Ly8JEd+xU1kttYiboFziVYqCkt5TRjX40LswNIKvsjJbO2PxzMPM+OSnhmRszE1ZSOpl+nFXPFdsO4bYDc7K1B9jLRN8NP2FP49EbO0QZoYn4sTwv/mcNLHcAgpFl6lM7r7R13GL/Go=","i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:dkim-signature;\n bh=h70/ucEwt9fjmhYZGVxBbq653HYMwGAGiDcfL6jii0s=;\n fh=IVHstSESlJ+LIW6W7umM5mQpGCmb3sllYMh7m6w0PeE=;\n b=jSuc0kfsZ9kOPsQRLx4R4LVJB65OZUUiCylNYjvQU7a3GPiBw/oICUzgSscmHvSrsr\n MrPTIV/XIQm8Krzp5XaT1FsvkK4KHW+31qTdFCF64+V+8N5NyksITYVoQxT/Jd9TB13x\n K1h4tWiztdMjkgUNE/LmCCQeoN9jBzgZVGsU0vyqDu90RynG8pG7hsPiA6A6Yzm/ifkC\n hrDwaY65FQhBLvL5cGL4aYFgdJu0Ky53B/k+YAiILlzLvM1yjFPwFrRoabmfctXRigdi\n dtVObSegY90J07ajQaLkUakTxNP26FRiwG8qRM0CuVcBQLydQP2R0mu8iehFec2LQjW4\n BO6Q==; darn=gcc.gnu.org"],"ARC-Authentication-Results":["i=2; server2.sourceware.org","i=1; mx.google.com; arc=none"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=gmail.com; s=20251104; t=1776459252; x=1777064052; darn=gcc.gnu.org;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:from:to:cc:subject:date\n :message-id:reply-to;\n bh=h70/ucEwt9fjmhYZGVxBbq653HYMwGAGiDcfL6jii0s=;\n b=P/HhnJo5f2CEHC74XF1h7frb8pH2qVlmPJLWPvOtaHsArlWVeBCWBJqhTXELZQvam0\n B1ZqEKzYPlAjtdoNFvr5PHsln3UpbeSjqPTCh7MLZAtdtrmRxcW1BbKX3nHQR/YllplV\n kPuHtBtHkHK1qN2SChdgkCSgZWXPz5v2ZE2sV1M1MsoCBsnVqgTUD4xny+lNttU2vBIB\n 1MGBiFwX3kF43yNAZtDaqli3WBuhZ6R3Jgnlb4zVdZ51jgUnBDetFJNJdUOsp4etsMEX\n YuzS4rA/gdq/1xEipc3lriYTZIy/y/xoWwfybV/T8cDOl3TEbwOGQOnWY9T4TVdGg8Zt\n 14TA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776459252; x=1777064052;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=h70/ucEwt9fjmhYZGVxBbq653HYMwGAGiDcfL6jii0s=;\n b=UZbkNtNcyDV2oBWuj6SPlVab7F8LBDneInviHC3YVXrHfT+EVV9YoiyixPItwmV0U3\n +/mp1K/JttvYEd3uJgwgXKdcC+MFeEOLrSRGVfBZ+ioecPYHF7Jy2K2Sivc853gbZE07\n oEy0sFK6mdsiqZucbkKGPRA2WH8v9qmPOsM3kDWjVo5DBVV4wRq4VbRnURKHddKSpakB\n oPY6BItolLs/OTQDYGi2e6ReXkNE5HOnQ7EeYHTOLhB66H01AE2EflZpud/gCllsMwx9\n rElZ/jyy9KBcFT+HP65d/cN8qcIaEMFQB7QrVFJjUW4ewVe0knlNSHAlSs/PCLgeD3sh\n rLjg==","X-Gm-Message-State":"AOJu0Yzp/kqEC9TWRWHW/CIF+QLsVwlC/xdatI5IlPAyA+WpJPlKLMVh\n l5F0IpwtonhI9YcKUR1+WP2KZ2abeZL02FF587luN4ANkN2nI1Q16h12uW2/8HYXQIUpWOF1T+p\n bhBJ6DdIDSkTjCda9O9iv+oQ31sNtYBo=","X-Gm-Gg":"AeBDieukRg0y2n8J1kvdxRg9tfJLZzglkn7ZbbjPTxSU8xZ1IzzqYZWNcVLlMidQCeL\n wVC28UFydLDl+IO7TMCjTj5673qOyv40VM9lPLHHZHTChmX/RDABMGf3Vs+m+TIxK7lY53ephJw\n /O/w6sHhqjVQHuyOr/aYBGL2/0X5Vd2brl8VfmRk/DUZrGtvDuT68J7RpECO31cjZXWfg7JTDay\n KNO99CXWBRWObyPIlFBuMFUdHfJmjhW7jza5BPKnBN5wpCPqwIUaSrgHdSH8mczge4qXrSG4roO\n Z2c+wbx1roNTwvbg","X-Received":"by 2002:a05:7022:f9e:b0:128:ccb7:7fa3 with SMTP id\n a92af1059eb24-12c73fa8fa3mr2071634c88.34.1776459252253; Fri, 17 Apr 2026\n 13:54:12 -0700 (PDT)","MIME-Version":"1.0","References":"<20260417130051.3717561-1-daniel.barboza@oss.qualcomm.com>","In-Reply-To":"<20260417130051.3717561-1-daniel.barboza@oss.qualcomm.com>","From":"Andrew Pinski <pinskia@gmail.com>","Date":"Fri, 17 Apr 2026 13:54:00 -0700","X-Gm-Features":"AQROBzDE95bKMaLF6GR6HLCEGcQeHJur5lhHULmPQPqcuIOMiW6ivsPI7f_Sh8Q","Message-ID":"\n <CA+=Sn1mX9ysh_QhpOmOxPyC=xSb8Z_4=qowxvwnoeFy1eWkxqw@mail.gmail.com>","Subject":"Re: [PATCH v3] match.pd: (A>>bool) == 0 -> (unsigned)A) <= bool\n [PR119420]","To":"Daniel Henrique Barboza <daniel.barboza@oss.qualcomm.com>","Cc":"gcc-patches@gcc.gnu.org, jeffrey.law@oss.qualcomm.com,\n andrew.pinski@oss.qualcomm.com","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable","X-BeenThere":"gcc-patches@gcc.gnu.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Gcc-patches mailing list <gcc-patches.gcc.gnu.org>","List-Unsubscribe":"<https://gcc.gnu.org/mailman/options/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe>","List-Archive":"<https://gcc.gnu.org/pipermail/gcc-patches/>","List-Post":"<mailto:gcc-patches@gcc.gnu.org>","List-Help":"<mailto:gcc-patches-request@gcc.gnu.org?subject=help>","List-Subscribe":"<https://gcc.gnu.org/mailman/listinfo/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe>","Errors-To":"gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org"}},{"id":3679520,"web_url":"http://patchwork.ozlabs.org/comment/3679520/","msgid":"<04569d3f-971f-4817-b43f-597bc49cd864@oss.qualcomm.com>","list_archive_url":null,"date":"2026-04-20T18:17:36","subject":"Re: [PATCH v3] match.pd: (A>>bool) == 0 -> (unsigned)A) <= bool\n [PR119420]","submitter":{"id":92288,"url":"http://patchwork.ozlabs.org/api/people/92288/","name":"Daniel Henrique Barboza","email":"daniel.barboza@oss.qualcomm.com"},"content":"On 4/17/2026 5:54 PM, Andrew Pinski wrote:\n> On Fri, Apr 17, 2026 at 6:03 AM Daniel Henrique Barboza\n> <daniel.barboza@oss.qualcomm.com> wrote:\n>>\n>> From: Daniel Barboza <daniel.barboza@oss.qualcomm.com>\n>>\n>> Also add its counterpart:\n>>\n>> \"(A>>bool) != 0 -> (unsigned)A) > bool\"\n>>\n>> Bootstrap tested in x86, aarch64 and RISC-V.\n>> Regression tested in x86 and aarch64.\n>>\n>>          PR tree-optimization/119420\n>>\n>> gcc/ChangeLog:\n>>\n>>          * match.pd(`(A>>bool) EQ 0 -> (unsigned)A) LE bool`): New\n>>          pattern.\n>>\n>> gcc/testsuite/ChangeLog:\n>>\n>>          * gcc.dg/tree-ssa/pr119420.c: New test.\n>> ---\n>>\n>> Changes from v2:\n>> - gate the pattern with \"#if GIMPLE\"\n>> - use 'single_use' in the rshift result\n>> - add the NE variant\n>> - v2 link: https://gcc.gnu.org/pipermail/gcc-patches/2026-April/712431.html\n>>\n>>   gcc/match.pd                             | 13 ++++++++\n>>   gcc/testsuite/gcc.dg/tree-ssa/pr119420.c | 42 ++++++++++++++++++++++++\n>>   2 files changed, 55 insertions(+)\n>>   create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/pr119420.c\n>>\n>> diff --git a/gcc/match.pd b/gcc/match.pd\n>> index 7b652afb43d..fab1da673d1 100644\n>> --- a/gcc/match.pd\n>> +++ b/gcc/match.pd\n>> @@ -5367,6 +5367,19 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)\n>>         @0)))))\n>>   #endif\n>>\n>> +#if GIMPLE\n>> +/* PR119420: (A >> bool) == 0 -> (unsigned)a <= (unsigned)bool\n>> +   and its variant:\n>> +   (A >> bool) != 0 -> (unsigned)a > (unsigned)bool;  */\n>> +(for cmp (eq ne)\n>> +     icmp (le gt)\n>> + (simplify\n>> +  (cmp (rshift@2 @0 zero_one_valued_p@1) integer_zerop)\n>> +  (if (single_use (@2))\n> \n> This is patch is ok as is.\n> Now I think we could improve things here slightly but that is\n> definitely a follow up.\n> I think the check here could become `single_use (@2) ||\n> fold_before_rtl_expansion_p ()`. (likewise for the other case).\n> Maybe even add a `use_only_in_compare_with_cst (@2)` might a check we\n> add later on. This checks to makes sure all the uses of the SSA_NAME\n> passed in is used with a comparison that has a constant.\n> I have seen other places which could use either of these checks even.\n\nI just sent a new version of 124019 without these suggestions because I didn't\nfully understood them hehe\n\nfold_before_rtl_expansion_p() is described as \"true if doing the fold before expansion\nto rtl\".  In gimple-fold.cc there are some uses of it as a way of telling \"until this\npoint there was no folding, so this value won't be folded anymore after this point\"\n(e.g. gimple_fold_builtin_constant_p).\n\nSo if we do a \"single_check (@2) || fold_before_rtl_expansion_p\" I suppose the intended\nsemantic is \"either @2 is single_check or there won't be any folding done after this\npoint\".  Is this correct?\n\n\nAs for use_only_in_compare_with_cst() I didn't find it in the code.  IIUC it would be\na way of telling if a given node is used only for comparisons, which would be a way\nof trying to alleviate the single_use() constraint.  Seems a neat idea but for these\nlshift/rshift patterns we need to be careful to not trip in ctz/clz builtins, i.e. we\nneed to check if this approach would cope with these cases too.\n\nThanks,\nDaniel\n\n\n> \n> Thanks,\n> Andrew\n> \n>> +   (with { tree utype = unsigned_type_for (TREE_TYPE (@0)); }\n>> +    (icmp (convert:utype @0) (convert:utype @1))))))\n>> +#endif\n>> +\n>>   /* Rewrite an LROTATE_EXPR by a constant into an\n>>      RROTATE_EXPR by a new constant.  */\n>>   (simplify\n>> diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr119420.c b/gcc/testsuite/gcc.dg/tree-ssa/pr119420.c\n>> new file mode 100644\n>> index 00000000000..99259fd4a8b\n>> --- /dev/null\n>> +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr119420.c\n>> @@ -0,0 +1,42 @@\n>> +/* { dg-additional-options -O2 } */\n>> +/* { dg-additional-options -fdump-tree-optimized } */\n>> +\n>> +int ll (signed a)\n>> +{\n>> +  int d = a >> 1;\n>> +  return d == 0;\n>> +}\n>> +\n>> +int ll1 (signed a)\n>> +{\n>> +  int d = a & ~1;\n>> +  return d == 0;\n>> +}\n>> +\n>> +int ll2 (signed a)\n>> +{\n>> +  unsigned aa = a;\n>> +  return aa <= 1;\n>> +}\n>> +\n>> +int ll3 (signed a)\n>> +{\n>> +  int d = a >> 1;\n>> +  return d != 0;\n>> +}\n>> +\n>> +int ll4 (signed a)\n>> +{\n>> +  int d = a & ~1;\n>> +  return d != 0;\n>> +}\n>> +\n>> +int ll5 (signed a)\n>> +{\n>> +  unsigned aa = a;\n>> +  return aa > 1;\n>> +}\n>> +\n>> +/* { dg-final { scan-tree-dump-times \" >> \" 0 optimized } } */\n>> +/* { dg-final { scan-tree-dump-times \" <= \" 3 optimized } } */\n>> +/* { dg-final { scan-tree-dump-times \" > \" 3 optimized } } */\n>> --\n>> 2.43.0\n>>","headers":{"Return-Path":"<gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org>","X-Original-To":["incoming@patchwork.ozlabs.org","gcc-patches@gcc.gnu.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","gcc-patches@gcc.gnu.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=qualcomm.com header.i=@qualcomm.com header.a=rsa-sha256\n header.s=qcppdkim1 header.b=R2MHuWb2;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.a=rsa-sha256 header.s=google header.b=WNIhmB5m;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org\n (client-ip=2620:52:6:3111::32; helo=vm01.sourceware.org;\n envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org;\n receiver=patchwork.ozlabs.org)","sourceware.org;\n\tdkim=pass (2048-bit key,\n unprotected) header.d=qualcomm.com header.i=@qualcomm.com header.a=rsa-sha256\n header.s=qcppdkim1 header.b=R2MHuWb2;\n\tdkim=pass (2048-bit key,\n unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.a=rsa-sha256 header.s=google header.b=WNIhmB5m","sourceware.org; dmarc=none (p=none dis=none)\n header.from=oss.qualcomm.com","sourceware.org;\n spf=pass smtp.mailfrom=oss.qualcomm.com","server2.sourceware.org;\n arc=none smtp.remote-ip=205.220.168.131"],"Received":["from vm01.sourceware.org (vm01.sourceware.org\n [IPv6:2620:52:6:3111::32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fztyb1yt9z1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 21 Apr 2026 04:18:13 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id A95FA4A98F04\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 20 Apr 2026 18:18:11 +0000 (GMT)","from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com\n [205.220.168.131])\n by sourceware.org (Postfix) with ESMTPS id 64DAD4BC0544\n for <gcc-patches@gcc.gnu.org>; Mon, 20 Apr 2026 18:17:42 +0000 (GMT)","from pps.filterd (m0279863.ppops.net [127.0.0.1])\n by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 63KBnDSB1598126\n for <gcc-patches@gcc.gnu.org>; Mon, 20 Apr 2026 18:17:41 GMT","from mail-qv1-f69.google.com (mail-qv1-f69.google.com\n [209.85.219.69])\n by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4dnfgnjrdh-1\n (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT)\n for <gcc-patches@gcc.gnu.org>; Mon, 20 Apr 2026 18:17:41 +0000 (GMT)","by mail-qv1-f69.google.com with SMTP id\n 6a1803df08f44-8b0312bb1dcso71633396d6.1\n for <gcc-patches@gcc.gnu.org>; Mon, 20 Apr 2026 11:17:41 -0700 (PDT)","from [192.168.68.106] ([191.202.238.222])\n by smtp.gmail.com with ESMTPSA id\n 6a1803df08f44-8b02aeb04e0sm80187626d6.46.2026.04.20.11.17.37\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Mon, 20 Apr 2026 11:17:38 -0700 (PDT)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org A95FA4A98F04","OpenDKIM Filter v2.11.0 sourceware.org 64DAD4BC0544"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org 64DAD4BC0544","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org 64DAD4BC0544","ARC-Seal":"i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1776709062; cv=none;\n b=hxDYoIa/D4lsVyY9KWJV2L47Oj6F0iEGBjAj2115AUX2wI7Qi2SpsBgUSXX0ti/p4QSX3ka6ELTD6nPRumqtLyHzYsmk6aEQ/RUU72hhFGPoVDUXhNZ2qXoVrJVbDPNeST8Z1fr4G+kqmi8Q8MYxUrJPKp4lSv+gZEmfyYBEzuA=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1776709062; c=relaxed/simple;\n bh=6MypjQY1ndCRwLpIeRE5llksOSfv5WYtuini52zOM2s=;\n h=DKIM-Signature:DKIM-Signature:Message-ID:Date:MIME-Version:\n Subject:To:From;\n b=TsNSy80PsG2l8t3efSLHzAlg2S6l30jimnWocy43Ge+/Ol9Y/s8FJ5JX4oq/K8W9NMmPouFFJq+LJBAyOBlrRFd+f92L+DJCmfbh5mntKaftamQpqmjeOM1SRZNwcwUkveblnf6DZo4CW8+G59RiRcNUleqFiok0r3hnWRS/Q4Y=","ARC-Authentication-Results":"i=1; server2.sourceware.org","DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h=\n cc:content-transfer-encoding:content-type:date:from:in-reply-to\n :message-id:mime-version:references:subject:to; s=qcppdkim1; bh=\n L3LqVtdETTVr1weur3usYwT8OGURKbRthdD0owOzC6U=; b=R2MHuWb2N2UHzx6+\n SBLncdaWH2lQGn4IeDl34ZO0e9h5J6W7HJQKnjKKLgu3g98RVWX+Ia0aepCEdshJ\n 4LDi/9mE4GnXxqNhheUtzf09p2Yj9HGQ7vx4QppDnyqe4I7qaTgZhqGTTFownvJc\n K6OHZT8K5skTlufeQgRbEHN+w8ihS5C7q8UqtwKykUU/rYcyjkoVAxpDpamKb9Ff\n 4i1stWbcd4Xply/+KtdZBwchiYD0KBCk+S1xx6+fYIdnFVLZcYY/Aeo9r5cN0yYX\n /ehQNV4Rj0PUuEyCsMJCO1K+4k0lRTUqXgBO4w34o38kEo04tYuewEy51EXTsLg8\n VbFoTw==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=oss.qualcomm.com; s=google; t=1776709060; x=1777313860; darn=gcc.gnu.org;\n h=content-transfer-encoding:in-reply-to:content-language:from\n :references:cc:to:subject:user-agent:mime-version:date:message-id\n :from:to:cc:subject:date:message-id:reply-to;\n bh=L3LqVtdETTVr1weur3usYwT8OGURKbRthdD0owOzC6U=;\n b=WNIhmB5mmYnSdHuSXvRJJc4nd7Iz/YFIRXucYVcPOW0MCDPMC8ubejoLcAHg2l8dPF\n Tz+yV00j6yKzEagc8QrwszyPc3VC6G0K0PIxGp4R/xyi6q3cKyEYBHKjFliBAR+aWY2I\n 8xzvUJkASDfbcNdNz5POvUPFHbCWM2Mfd17Jchg2I1RYhDJ9c+/ujSGNU0651bk8uzoF\n 1vzaesZcA6fOINCwF3qQyEXWa+SheJbAQEpTTzwhL54kN4wRXslq4izYuLlTEHezz9rl\n ZxV0xT26zl1cW0RP0gXM1oT2hMO1LSbsELxDvRnJwc9H4KojZHqEiRu3UDFnCBWHTo6b\n 1LfQ=="],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776709060; x=1777313860;\n h=content-transfer-encoding:in-reply-to:content-language:from\n :references:cc:to:subject:user-agent:mime-version:date:message-id\n :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=L3LqVtdETTVr1weur3usYwT8OGURKbRthdD0owOzC6U=;\n b=lz8THFUQCYwg+GgrySnlWqy5TFlkgSeNJ88QXnHP+JU7FPs6i5C0r0K/zEtEmsaOp1\n WMpupAaGE/KH1JMRX0OaOPQZt2+542plx5uPD7ucnVs/QGvIqgXmgu6H31wJwNAex5df\n CJfITFJCrifMYYw+KFTnC01oCCes/SudHS6rHfgYR7mHde8G1INsbm7TB6voyJI8M0Dz\n 5dqnDXgyDXz8lXJ5ObldQfHxABFi5jXNtkjfeqz6sItqqOuUSVSQWXkt2j28dEJKFHGV\n 1FLoMsnHOOwQhw7+8iAvCpazXWn5KHLKNAwh/2kSLIqxi5MY6zPiRC70sClTJ8GkVpXb\n VBrA==","X-Gm-Message-State":"AOJu0YwlrC83bwqiM1h6K/nRtaeLNzLhcn6+0mt9eXtzsB8Uvx/UGEP+\n PpSimoeWDnAVvyZKbxYhf1vISG74Hm7mBXNcFoti2KxeFPhJhu/D9icJG+HsY+22ZOWhpN0Jld5\n B38AntgxUjhQ/kTEX2LOnNzWwiDFh+WLr7FywM003Jw7abVJtOEQg/m5JCX7T","X-Gm-Gg":"AeBDietPIjMTRJDQ09VyvmOZ9HlzPAMzpwWyrxmJgfBHPvFRbhTHAWN+VAOLfZbEzQY\n nmkdX1Wj9EMQXtjgvggWLrMfo9p+a+WDnzU7HnSNku1Bz79XRoBisoOvdTlkY+iSvrEsztoQkuC\n QHwOicKpZZnmKWFIW1GG8dkjk8u660wXzYWoKTm8gBPgqd1VfNp6Bu/7pFBw+QpyPmwLTzhqT2S\n BUBr3HiA/2yLNWHadGuru4kAGNBFmnVDXQZGY82pF/ahDeNOpIU1oQrpAYZu0Fi64YsEFIhR6vK\n IeLzjJpV8cJLV+iKHGrx8HU+1Y8xEWC0tfs6y927lXwzDqTg4ySFhqmE1l9B+ghAJoi4ZyrvlAC\n l/ghkDPrg2bEgj9Jvh/gSbRCzhcDt5rknKExovISr+WkgWEUUDwTIGqmXeGaxe1DhwLQPkg==","X-Received":["by 2002:a05:6214:c23:b0:8ae:61bb:95e3 with SMTP id\n 6a1803df08f44-8b0281126ecmr233288776d6.36.1776709060120;\n Mon, 20 Apr 2026 11:17:40 -0700 (PDT)","by 2002:a05:6214:c23:b0:8ae:61bb:95e3 with SMTP id\n 6a1803df08f44-8b0281126ecmr233288116d6.36.1776709059332;\n Mon, 20 Apr 2026 11:17:39 -0700 (PDT)"],"Message-ID":"<04569d3f-971f-4817-b43f-597bc49cd864@oss.qualcomm.com>","Date":"Mon, 20 Apr 2026 15:17:36 -0300","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v3] match.pd: (A>>bool) == 0 -> (unsigned)A) <= bool\n [PR119420]","To":"Andrew Pinski <pinskia@gmail.com>","Cc":"gcc-patches@gcc.gnu.org, jeffrey.law@oss.qualcomm.com,\n andrew.pinski@oss.qualcomm.com","References":"<20260417130051.3717561-1-daniel.barboza@oss.qualcomm.com>\n <CA+=Sn1mX9ysh_QhpOmOxPyC=xSb8Z_4=qowxvwnoeFy1eWkxqw@mail.gmail.com>","From":"Daniel Henrique Barboza <daniel.barboza@oss.qualcomm.com>","Content-Language":"en-US","In-Reply-To":"\n <CA+=Sn1mX9ysh_QhpOmOxPyC=xSb8Z_4=qowxvwnoeFy1eWkxqw@mail.gmail.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","X-Proofpoint-ORIG-GUID":"Rxfwt_b1JsbR38XNdW-6hlcK9SQos0Uj","X-Proofpoint-GUID":"Rxfwt_b1JsbR38XNdW-6hlcK9SQos0Uj","X-Authority-Analysis":"v=2.4 cv=TK11jVla c=1 sm=1 tr=0 ts=69e66dc5 cx=c_pps\n a=wEM5vcRIz55oU/E2lInRtA==:117 a=etEqFfc6qwXwpI8uT8rzbw==:17\n a=IkcTkHD0fZMA:10 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10\n a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=yOCtJkima9RkubShWh1s:22\n a=mDV3o1hIAAAA:8 a=EUspDBNiAAAA:8 a=UviXy3KgWLKIVK6YuBoA:9 a=3ZKOabzyN94A:10\n a=QEXdDO2ut3YA:10 a=OIgjcC2v60KrkQgK7BGD:22","X-Proofpoint-Spam-Details-Enc":"AW1haW4tMjYwNDIwMDE3NyBTYWx0ZWRfX26X9vXghDppN\n On+In24pokHgCMxaqbGRioPzZYYlTWXZqqSi9b6USgByedZQEUqT0FHksug9n1GXSKsLes6pgkB\n 9aN6YQdbkPkhljp+qAz93BcNqy1VJoW2LJVd5laqARIGxYWL99EmuWUoIGPUyafyjrOoTqdVHsx\n FR0b73JWSYEN0tXXggSqIIFl3/JRECV24PkvpcN3mNOEp6Kp+rw67MtadUqqLg6KeD92ukI4jX0\n y/QzluQpWOZ/TgyhkgTiHfhbyvwsp9fi/O42PueO0h6MI2SC7q/OygDDcLhh8nb40VkOOO15sa4\n u0gD5nVA+MgCxr6zzANstswrk6rZvRY4IfZSbf1U5KMpc+XU8FOQfvMJHfGTyFi7NIW637xtRgh\n 2DOfSsrfr9YYjygledoJRTvDNBv4QEYdHKJEdapAeVYuZ6msOZWdmT8zeXtw18l4y9joM7NtHVL\n KUnK6kfzz06DIamfswg==","X-Proofpoint-Virus-Version":"vendor=baseguard\n engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49\n definitions=2026-04-20_03,2026-04-20_02,2025-10-01_01","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n impostorscore=0 clxscore=1015 lowpriorityscore=0 malwarescore=0\n priorityscore=1501 suspectscore=0 adultscore=0 phishscore=0 spamscore=0\n bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound\n adjust=0 reason=mlx scancount=1 engine=8.22.0-2604070000\n definitions=main-2604200177","X-BeenThere":"gcc-patches@gcc.gnu.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Gcc-patches mailing list <gcc-patches.gcc.gnu.org>","List-Unsubscribe":"<https://gcc.gnu.org/mailman/options/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe>","List-Archive":"<https://gcc.gnu.org/pipermail/gcc-patches/>","List-Post":"<mailto:gcc-patches@gcc.gnu.org>","List-Help":"<mailto:gcc-patches-request@gcc.gnu.org?subject=help>","List-Subscribe":"<https://gcc.gnu.org/mailman/listinfo/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe>","Errors-To":"gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org"}}]