Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2217614/?format=api
{ "id": 2217614, "url": "http://patchwork.ozlabs.org/api/patches/2217614/?format=api", "web_url": "http://patchwork.ozlabs.org/project/gcc/patch/20260330090714.868443-2-philipp.tomsich@vrull.eu/", "project": { "id": 17, "url": "http://patchwork.ozlabs.org/api/projects/17/?format=api", "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, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260330090714.868443-2-philipp.tomsich@vrull.eu>", "list_archive_url": null, "date": "2026-03-30T09:07:13", "name": "[1/2] ext-dce: fix off-by-one in subreg liveness for 32-bit modes", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "352a04ec1bde83fb42302c262d15c3f342a6d661", "submitter": { "id": 80556, "url": "http://patchwork.ozlabs.org/api/people/80556/?format=api", "name": "Philipp Tomsich", "email": "philipp.tomsich@vrull.eu" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/gcc/patch/20260330090714.868443-2-philipp.tomsich@vrull.eu/mbox/", "series": [ { "id": 497982, "url": "http://patchwork.ozlabs.org/api/series/497982/?format=api", "web_url": "http://patchwork.ozlabs.org/project/gcc/list/?series=497982", "date": "2026-03-30T09:07:14", "name": "ext-dce: narrow sign-extending loads when upper bits are dead", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/497982/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2217614/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2217614/checks/", "tags": {}, "related": [], "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=vrull.eu header.i=@vrull.eu header.a=rsa-sha256\n header.s=google header.b=PDNym3QC;\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=vrull.eu header.i=@vrull.eu header.a=rsa-sha256\n header.s=google header.b=PDNym3QC", "sourceware.org;\n dmarc=none (p=none dis=none) header.from=vrull.eu", "sourceware.org; spf=pass smtp.mailfrom=vrull.eu", "server2.sourceware.org;\n arc=none smtp.remote-ip=209.85.167.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 4fkllt0JMvz1yG8\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 30 Mar 2026 20:08:26 +1100 (AEDT)", "from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 2A5534B7A1D5\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 30 Mar 2026 09:08:24 +0000 (GMT)", "from mail-lf1-f51.google.com (mail-lf1-f51.google.com\n [209.85.167.51])\n by sourceware.org (Postfix) with ESMTPS id CC5EA4B920AD\n for <gcc-patches@gcc.gnu.org>; Mon, 30 Mar 2026 09:07:22 +0000 (GMT)", "by mail-lf1-f51.google.com with SMTP id\n 2adb3069b0e04-5a2abe48868so335874e87.2\n for <gcc-patches@gcc.gnu.org>; Mon, 30 Mar 2026 02:07:22 -0700 (PDT)", "from ubuntu-focal.. ([2a01:4f9:3a:1e26::2])\n by smtp.gmail.com with ESMTPSA id\n 2adb3069b0e04-5a2b144e99bsm1552448e87.56.2026.03.30.02.07.20\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Mon, 30 Mar 2026 02:07:20 -0700 (PDT)" ], "DKIM-Filter": [ "OpenDKIM Filter v2.11.0 sourceware.org 2A5534B7A1D5", "OpenDKIM Filter v2.11.0 sourceware.org CC5EA4B920AD" ], "DMARC-Filter": "OpenDMARC Filter v1.4.2 sourceware.org CC5EA4B920AD", "ARC-Filter": "OpenARC Filter v1.0.0 sourceware.org CC5EA4B920AD", "ARC-Seal": "i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1774861643; cv=none;\n b=oMnJQQCo7CsLd9Bzdq8j5TAl2bVix90RH2pzxpn5fr//3n40PaP5b8JL9ia5HjYskRH4zv8czTMMC3VZ8zRvw6KuIsoOKFYMGaxnVN9DeK2IpYd+F65lWNHc3S0LLkcCjigom38U1t6Z6hERIvR9FkgZNxEP++LvS4bup7GXwAk=", "ARC-Message-Signature": "i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1774861643; c=relaxed/simple;\n bh=oS9RrCO3pKP9WevBSR/OKKh2xAWl2Xoh/03QjGv29Hk=;\n h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version;\n b=lQLRqz/5Nwll+h3d3IahkUDuOt5qlWPIcZ1fQ13VY9+D0r2tFQ0h2/jBxvgQ2In/jsGUzO1iv3weugWXGI6qJk3wFUX4K+KFRw1yD2QQNZXOCsEehdUS00qqj2Edz0XpWjJGPDi7LKh1NRXZrfaK5xrM5wzAhrWRECwgpIyz5Ys=", "ARC-Authentication-Results": "i=1; server2.sourceware.org", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=vrull.eu; s=google; t=1774861641; x=1775466441; darn=gcc.gnu.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=K58tfdaxU0sThwvI5puaDx8WgG47IPEV0YTCRnVimEA=;\n b=PDNym3QCes/Kdb46jXSW/R+l/zfnJpSxjovQktvqna/8v4HpWpj3528ekOTDYl0ZNA\n 5buIUJwl89T/EpowSdeaY77Ldjsm556j4FVrduByWhK7Rfwl8nc1Ux0L4NW7MJbWRmUo\n rVqTaMxXyEFE6qx7YmbKq/z2Aovj9hXUrn6qUXa/xPkver7tRywmNhLX5yCVmqxKKZgL\n jC8FXCnozRJMGnUWkWdFjCEb+eVrAgrz8Af1eTG+9HQxMNKI6OP4kcergQ2U2aNN99Pj\n 0FyUF/ac6C3b0MhCbQRpySovnlTLYwumtcbsdoJqKgks211kSmf5Al3VRx1AZWbyfvxa\n IorA==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1774861641; x=1775466441;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=K58tfdaxU0sThwvI5puaDx8WgG47IPEV0YTCRnVimEA=;\n b=S32fBYc1v2sn09/UL7Z2epT77gPJypm+NdJ+zfUTGuxNPW3zXwm10x789otNmF6MYq\n Pi4mkS0dekZAtGx8oqFhr8zjjjS2TOf65NpB32HMUBXG5pnwxDS/9XztlrHuYGEdDQ10\n Req2DaSuq4pmFaeSsz7VCLEHCsQjGvTIzHOf/zZEgFDoFu2BXinH2jaE0Qp1EcPOl35F\n 3OcXZU16esE3ZLQUaOolffouqz2Nufn5TMKhHhorHK/Ilr88vHv3q53jdoxrQVxmUOV1\n z9jE1wQG2T2mrvGfLYFvme1y/jYkOtdFQpErVQeZgNh5O9TrtT3GpWBu3gqBl83YIlWO\n 5MHA==", "X-Gm-Message-State": "AOJu0YwpYvIP4zRJaLJYuWxhd7Sqc4Y8i8VQjmk1531l5eDUE2yALguS\n fkW5ike+Oge2zzh2NqMKT8kg7Ne4/J7dtH00okqJTGIU1+W/doQ0m8ZrwnftMmre7T/+rjwwA4k\n 8yMfsqTs=", "X-Gm-Gg": "ATEYQzwwG4AVskGwMl/VO5hWQdB/Yx+SSe10EWsm5/9MuSzjEW+EAnlFR/eN7sdU/a8\n qA40eF4zqL7/AzzomQRiEkUaQGJZUPSumftZJFzkb3ajP96zL0tpU+TwRQExpmUlUJan0/DBpNZ\n zNDaFqMmd2+6y57UIkOxz5R6Tg7pHtLk09/AgtjXSL4UXud0AQkIVKeP339Znv+qFvvRrNo721j\n kysVwf++MsUw+AtfN+O6e1gwn5PBMtvJR7j2nb3jHtNSl7lJllVyyf2o3C8llbcqrElYZ9jkYuU\n 2vxNcmiueAONrhCcjYXRmJUYBPSjU7zONlPWLmv/AuD54M2t5b5O8vF9UcIlxNfmsP1DNLfjCRX\n xyAggYksWZfOQQtB23P8dvqeuoqwrUaMm+BxsX1p183FK6WftJg/sD8NY0GgYvvYFLPigz8E1ah\n tkRtNE1XJ13KpgxyI2fAaA4Y7pSZtn4lQ3uDqx84rqLHxJid6j5ZEK", "X-Received": "by 2002:a05:6512:3b89:b0:5a2:b53b:a457 with SMTP id\n 2adb3069b0e04-5a2b53ba55bmr907730e87.3.1774861641226;\n Mon, 30 Mar 2026 02:07:21 -0700 (PDT)", "From": "Philipp Tomsich <philipp.tomsich@vrull.eu>", "To": "gcc-patches@gcc.gnu.org", "Cc": "Philipp Tomsich <philipp.tomsich@vrull.eu>,\n Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu>", "Subject": "[PATCH 1/2] ext-dce: fix off-by-one in subreg liveness for 32-bit\n modes", "Date": "Mon, 30 Mar 2026 11:07:13 +0200", "Message-Id": "<20260330090714.868443-2-philipp.tomsich@vrull.eu>", "X-Mailer": "git-send-email 2.34.1", "In-Reply-To": "<20260330090714.868443-1-philipp.tomsich@vrull.eu>", "References": "<20260330090714.868443-1-philipp.tomsich@vrull.eu>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "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": "ext_dce_process_uses uses `size >= 32` to decide whether group 3\n(bits 32-63) is live for a lowpart subreg source. For SImode subregs\n(size == 32), this incorrectly marks bits 32-63 as live, preventing\nthe pass from recognizing that the upper half of a DImode register is\ndead. This blocks lw -> lwu narrowing on RV64.\n\nChange the condition to `size > 32`, consistent with the other\nthresholds in the same block (size > 8, size > 16). The size > 32\ncase is still reachable via SUBREG_PROMOTED_VAR_P which widens size\nbeyond the outer mode.\n\ngcc/ChangeLog:\n\n\t* ext-dce.cc (ext_dce_process_uses): Fix off-by-one: use\n\tsize > 32 instead of size >= 32 for group 3 liveness.\n\nCo-authored-by: Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu>\nSigned-off-by: Philipp Tomsich <philipp.tomsich@vrull.eu>\n---\n\n gcc/ext-dce.cc | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)", "diff": "diff --git a/gcc/ext-dce.cc b/gcc/ext-dce.cc\nindex 5cc15dd9b44f..caf8a147d976 100644\n--- a/gcc/ext-dce.cc\n+++ b/gcc/ext-dce.cc\n@@ -1001,7 +1001,7 @@ ext_dce_process_uses (rtx_insn *insn, rtx obj,\n \t bitmap_set_bit (livenow, rn + 1);\n \t if (size > 16)\n \t bitmap_set_bit (livenow, rn + 2);\n-\t if (size >= 32)\n+\t if (size > 32)\n \t bitmap_set_bit (livenow, rn + 3);\n \t iter.skip_subrtxes ();\n \t}\n", "prefixes": [ "1/2" ] }