{"id":2222869,"url":"http://patchwork.ozlabs.org/api/1.1/covers/2222869/?format=json","web_url":"http://patchwork.ozlabs.org/project/gcc/cover/20260413222006.3862501-1-andrew.pinski@oss.qualcomm.com/","project":{"id":17,"url":"http://patchwork.ozlabs.org/api/1.1/projects/17/?format=json","name":"GNU Compiler Collection","link_name":"gcc","list_id":"gcc-patches.gcc.gnu.org","list_email":"gcc-patches@gcc.gnu.org","web_url":null,"scm_url":null,"webscm_url":null},"msgid":"<20260413222006.3862501-1-andrew.pinski@oss.qualcomm.com>","date":"2026-04-13T22:20:00","name":"[GCC17-PATCH,0/6] Improve Phiprop slightly","submitter":{"id":91428,"url":"http://patchwork.ozlabs.org/api/1.1/people/91428/?format=json","name":"Andrew Pinski","email":"andrew.pinski@oss.qualcomm.com"},"mbox":"http://patchwork.ozlabs.org/project/gcc/cover/20260413222006.3862501-1-andrew.pinski@oss.qualcomm.com/mbox/","series":[{"id":499758,"url":"http://patchwork.ozlabs.org/api/1.1/series/499758/?format=json","web_url":"http://patchwork.ozlabs.org/project/gcc/list/?series=499758","date":"2026-04-13T22:20:03","name":"Improve Phiprop slightly","version":1,"mbox":"http://patchwork.ozlabs.org/series/499758/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/covers/2222869/comments/","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=i0n11fBn;\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=Sa5ilocz;\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=i0n11fBn;\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=Sa5ilocz","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.180.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 4fvhh24KBVz1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 14 Apr 2026 08:21:06 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 9D9D44BA2E3C\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 13 Apr 2026 22:21:04 +0000 (GMT)","from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com\n [205.220.180.131])\n by sourceware.org (Postfix) with ESMTPS id 9F69E4BA2E0D\n for <gcc-patches@gcc.gnu.org>; Mon, 13 Apr 2026 22:20:15 +0000 (GMT)","from pps.filterd (m0279873.ppops.net [127.0.0.1])\n by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 63DLB1YL2509966\n for <gcc-patches@gcc.gnu.org>; Mon, 13 Apr 2026 22:20:14 GMT","from mail-pg1-f197.google.com (mail-pg1-f197.google.com\n [209.85.215.197])\n by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4dh867r5bk-1\n (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT)\n for <gcc-patches@gcc.gnu.org>; Mon, 13 Apr 2026 22:20:14 +0000 (GMT)","by mail-pg1-f197.google.com with SMTP id\n 41be03b00d2f7-c792f3a5c35so1492776a12.1\n for <gcc-patches@gcc.gnu.org>; Mon, 13 Apr 2026 15:20:13 -0700 (PDT)","from xeond2.wrightpinski.org ([98.97.32.212])\n by smtp.gmail.com with ESMTPSA id\n 41be03b00d2f7-c79219f55c4sm12129600a12.22.2026.04.13.15.20.11\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Mon, 13 Apr 2026 15:20:11 -0700 (PDT)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org 9D9D44BA2E3C","OpenDKIM Filter v2.11.0 sourceware.org 9F69E4BA2E0D"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org 9F69E4BA2E0D","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org 9F69E4BA2E0D","ARC-Seal":"i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1776118815; cv=none;\n b=nUGy0r4JHAga4RJ5oRq/Yi3PiSbUoX6bA5OAklkuGh5/+JjLPCwsSpBZAs+itnkrs/v3fF3gSacdb/2pcdthAyeitQvNn9zLJAdMdWzHe7n7jszdWb6N85w2U1ppcpLADlU/HWwcrBfD/BKSS/KVb5/kyvNkLR9vZ+j7rXEKDXA=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1776118815; c=relaxed/simple;\n bh=elAwLPvVjMwER8KeEVNlfwXhTXX7RAZfnghWcgNXAfc=;\n h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID:\n MIME-Version;\n b=yDSSFknSTgt8/FswFEvsit8M1g4ksDKpSfKhGf/c5pC+oCagnLGYXQBkjLfIbzUfAjaumYIk1jwp1BPKplHCMKvCE9W1IM3+MRHnuyiCoqipw00T9GTK/GHaj5ynlaGDfr2/KDwp9dNXU1+F0XwTRSvfuHme78T5Ctx7epJ0kYE=","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:date:from:message-id:mime-version\n :subject:to; s=qcppdkim1; bh=In6ido3aJ09YWasXAtMg/Y1DFITiHULWyQ+\n UVupO4Ks=; b=i0n11fBnlzGLEOIQ270gLjKGqSzWs9XXXQPFZZeY2f4HCn/xhZf\n y0NyYxwcEPeDjx5kSAYEuGcwUBVqmB1doWTuGDj3ovl0sCe28fZq5AWmanb4pGBd\n +YEhn/cZYo876VbafABHE37UrbSTfl1wrnix4FKZY0AYkLqwE+56o2tCi4kvqEW1\n PBRRwcvSZPLLYyTAHdU0grLzZUseuEUyfB1Y/V8OUwc96QrQR98OVwWaJH+qIID3\n uJ9f41RGgmAOdqbol8w2vt+hwcXxCgJ/C6cniwD4HmJM+d1vTCqiSgAjKKoxKBNH\n IGcIddMdByW3uypnbqBW48qAUZsS6RR2UGw==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=oss.qualcomm.com; s=google; t=1776118813; x=1776723613; darn=gcc.gnu.org;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:from:to:cc:subject:date:message-id:reply-to;\n bh=In6ido3aJ09YWasXAtMg/Y1DFITiHULWyQ+UVupO4Ks=;\n b=Sa5iloczES+HIq6XnGSmbo8kM2oATqQrcHXgpeCiBaUmXBqWU9oucUqSIsxW61NrMm\n phi0B5RqxRnUjvU3m2csZv4gZ5T/T8GO2kHlQBSsjFRQD0232I7FSPT8yFK0uhRIkL2U\n KCv7narNRuU3093vUoNY2yd/InbjEu2gTrn8fodvT0fSa1obo8kVvgOfliF0KYFccCMw\n viMHxQ5bPgTvxgQWmt1VwWNRplestKXEh5a86j89gK+KI+J2wtU1SrarAChlNZ5Mci1t\n 2Tr8aNtIqTpuETca7jUcnRPyn+wdLU4NtjxblcWDnTgwt6ch7B8LXoXGEhPrUvrieDJm\n pXAA=="],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776118813; x=1776723613;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=In6ido3aJ09YWasXAtMg/Y1DFITiHULWyQ+UVupO4Ks=;\n b=AYBPG1lYpK/WiDZExysR5AQN8TU3v+qGswYyOjWrHaHmTvVFTKRW1CWzbW7RHf7npn\n SllNL7DLjNb/6tDzjPV5DbRk2THh3r5HA8NTJq9LXWLIeEmW3H0bd651gvzMEP8F6mGV\n IyFgcFeCtjIJ+yJXFG5LBKbcq+oeHNDD3jHlraV+yj472LIQv6G5bDI+2PMI83T/sYQQ\n PkZXR1o1ZljzEKS0T8eVdlRP544+ndDhTw4jbxi3ONEy6hxrXcRR/PYHMhrQcbdpE6Ui\n Nntg9PJ2pJkWEdLh4EHIZhWENbXZoUi4VbE3Rg7H3HNleZ6h0AUs5BeR03ZanYce4Up6\n MlDA==","X-Gm-Message-State":"AOJu0YxXW3DPOcnQxT+fny46grsz2YI3sZorQAPu+bvQ3h28+hPvnzbv\n WQrw+Wxvo3R9VJhbR/AJbbT3YFrsA6UyvkBpgg8s9cKkO+83qgym7UXOUqqdWwtwwx8whoj3gjk\n qTpR9z2siExijx9n4ZCanJW07ffbGqBN47LO8NgspwQQRjReJola2yF0edz/kkZgbH/Kp","X-Gm-Gg":"AeBDietkIYbamQCtBXo69xyAq6W89Gue7oNchluht/ycw76EIM2hAenNi2yLMef9Rou\n HVMzvsB/fF+0gS1/gPacW3TLw02mrImpZomi08xWXsgGTrEJjZoV9jGC3hcvgRJ9K0c1uhOCkgB\n IEW8cGn4mz8Qg8/Eo8s2wlZE/9j1oM8n21D2sBKxDmKpyYii1ELgI/5URNFdFmMpmDMQnEGszvY\n 4XOVhLQW9Qnc83PjBZbxG7wqw7dxNiJZacY7yJ9Y2a35dewQ+PAbbc4tA4i4tstaN6Sg7qM/0s5\n BEapgzeGuQEGbU/U9BDqg5HXqJhE8X5aFK7F4ATx3HtvEw0MqNM6wtN06BdKgDyP2TW/L3wj14h\n i8a7vlMjrun+iNwlKjq8+TyImnR3K1M56ZQH7YwVx+x25RN3N","X-Received":["by 2002:a05:6a20:918c:b0:39b:9644:6e98 with SMTP id\n adf61e73a8af0-39fe3c64c57mr14976203637.8.1776118812624;\n Mon, 13 Apr 2026 15:20:12 -0700 (PDT)","by 2002:a05:6a20:918c:b0:39b:9644:6e98 with SMTP id\n adf61e73a8af0-39fe3c64c57mr14976173637.8.1776118812043;\n Mon, 13 Apr 2026 15:20:12 -0700 (PDT)"],"From":"Andrew Pinski <andrew.pinski@oss.qualcomm.com>","To":"gcc-patches@gcc.gnu.org","Cc":"Andrew Pinski <andrew.pinski@oss.qualcomm.com>","Subject":"[GCC17-PATCH 0/6] Improve Phiprop slightly","Date":"Mon, 13 Apr 2026 15:20:00 -0700","Message-ID":"<20260413222006.3862501-1-andrew.pinski@oss.qualcomm.com>","X-Mailer":"git-send-email 2.43.0","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-Proofpoint-ORIG-GUID":"dvmfgEz5zzuIprNp-6HtLHY8gTrUwK2j","X-Proofpoint-GUID":"dvmfgEz5zzuIprNp-6HtLHY8gTrUwK2j","X-Proofpoint-Spam-Details-Enc":"AW1haW4tMjYwNDEzMDIyMCBTYWx0ZWRfX7UxEiASA0Ns5\n gTj/XI5dH9UNNnUAShke0TwGvAEyPtMi+rdT54bYeY7j1WCPRc1j3P/Y2hpbV2I7cRSRpP/15Ue\n vZQSuYqJm6aV3HJ7c0yQz9Jb5DujLAooKiP1ZkSGXOF5/VbCTXruigb+vq9uUMGzXYPhGind6PT\n oQNmrY9opO/GwuO/h8uzE7wwQZGnceUFFHIO+hAelq88pPbhTZcEIAovAzKc+vnp6nJYMyZbpTT\n fXRVVs1RyjhK1O6ZOJbU0Vp9m2H2P0IlndvWwHoUs3s1JWf0FWSRQq3o28u/aSh3+3iFhci8635\n 4l0t5OdBDPOvHJ++PyrZkfK73D8WZ2e1baYv0ZfZ9VXQwy/L/LkI7DybE/hn+TGcu/4lvInxnlF\n lTHu4KiLWBJhOlkU+pMBf0GwjvpOE9v61VFzuP3WXxj1sgFX0K/AHInndIme/eS2WWK35Oe2pCA\n jBCutI3tCbAthxwHPbw==","X-Authority-Analysis":"v=2.4 cv=etzvCIpX c=1 sm=1 tr=0 ts=69dd6c1e cx=c_pps\n a=rz3CxIlbcmazkYymdCej/Q==:117 a=i7c1TCcCr6Kt3kgLFmYdbA==:17\n a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22\n a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=CCpqsmhAAAAA:8\n a=COk6AnOGAAAA:8 a=Z-tM9cNKrNrljyIVD3UA:9 a=bFCP_H2QrGi7Okbo017w:22\n a=ul9cdbp4aOFLsgKbc677:22 a=TjNXssC_j7lpFel5tvFf:22","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-13_03,2026-04-13_04,2025-10-01_01","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n malwarescore=0 phishscore=0 lowpriorityscore=0 adultscore=0 impostorscore=0\n priorityscore=1501 bulkscore=0 suspectscore=0 spamscore=0 clxscore=1015\n classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0\n reason=mlx scancount=1 engine=8.22.0-2604070000 definitions=main-2604130220","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"},"content":"This set of patches for gcc 17 stage 1 improve phiprop\nby skipping over one store or skipping over clobbers to\nbe able to insert more loads.\n\nThe store case happens for C++ with the following code:\n   return std::max(std::min((long long)3, a), (long long)d);\nIt also shows up with UBSAN which inserts:\n  .UBSAN_NULL (tt_2, 0B, 8);\nAnd we want the ability to still optimize around them.\nFor the clobber case, it allows to \"optimize\" undefined cases.\nThe clobber case was originally posted as\nhttps://inbox.sourceware.org/gcc-patches/20240924161312.1556293-2-quic_apinski@quicinc.com/\nBut with the simplified code improvement I did for the skipping one store,\nit was reworked and also fixing for the aggregates case.\n\nThanks,\nAndrea\n\nAndrew Pinski (6):\n  testsuite: Add phiprop testcase that is already fixed [PR116823]\n  phiprop: Factor out the vdef check into new function\n  phiprop: Move the check on vuse before the dominator tests\n  phiprop: Move vuse variable declaration to right before use\n  phiprop: Allow for one store inbetween the load and the phi which is\n    being used to insert [PR123120]\n  skip clobbers [PR116823]\n\n gcc/testsuite/g++.dg/tree-ssa/phiprop-1.C  |  25 ++++\n gcc/testsuite/g++.dg/tree-ssa/phiprop-2.C  |  23 +++\n gcc/testsuite/g++.dg/tree-ssa/phiprop-3.C  |  23 +++\n gcc/testsuite/g++.dg/tree-ssa/phiprop-4.C  |  30 ++++\n gcc/testsuite/gcc.dg/tree-ssa/phiprop-10.c |  30 ++++\n gcc/testsuite/gcc.dg/tree-ssa/phiprop-11.c |  30 ++++\n gcc/testsuite/gcc.dg/tree-ssa/phiprop-8.c  |  27 ++++\n gcc/testsuite/gcc.dg/tree-ssa/phiprop-9.c  |  24 +++\n gcc/tree-ssa-phiprop.cc                    | 161 ++++++++++++++++-----\n 9 files changed, 339 insertions(+), 34 deletions(-)\n create mode 100644 gcc/testsuite/g++.dg/tree-ssa/phiprop-1.C\n create mode 100644 gcc/testsuite/g++.dg/tree-ssa/phiprop-2.C\n create mode 100644 gcc/testsuite/g++.dg/tree-ssa/phiprop-3.C\n create mode 100644 gcc/testsuite/g++.dg/tree-ssa/phiprop-4.C\n create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/phiprop-10.c\n create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/phiprop-11.c\n create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/phiprop-8.c\n create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/phiprop-9.c"}