Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2232220/?format=api
{ "id": 2232220, "url": "http://patchwork.ozlabs.org/api/patches/2232220/?format=api", "web_url": "http://patchwork.ozlabs.org/project/gcc/patch/CAMe9rOpsc6R-QXiGR=R6C0TVJTbjPtEyj8unUo1Yhh+CGTkcEg@mail.gmail.com/", "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": "<CAMe9rOpsc6R-QXiGR=R6C0TVJTbjPtEyj8unUo1Yhh+CGTkcEg@mail.gmail.com>", "list_archive_url": null, "date": "2026-05-04T00:04:04", "name": "or1k: Allow SImode for condition flag register", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "ca2e1c720c8c59d4d89d72d5b9cd2014aa246897", "submitter": { "id": 4387, "url": "http://patchwork.ozlabs.org/api/people/4387/?format=api", "name": "H.J. Lu", "email": "hjl.tools@gmail.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/gcc/patch/CAMe9rOpsc6R-QXiGR=R6C0TVJTbjPtEyj8unUo1Yhh+CGTkcEg@mail.gmail.com/mbox/", "series": [ { "id": 502596, "url": "http://patchwork.ozlabs.org/api/series/502596/?format=api", "web_url": "http://patchwork.ozlabs.org/project/gcc/list/?series=502596", "date": "2026-05-04T00:04:04", "name": "or1k: Allow SImode for condition flag register", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/502596/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2232220/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2232220/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=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=MLty//tU;\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=MLty//tU", "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=2607:f8b0:4864:20::530" ], "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 4g822y3njzz1yJ0\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 04 May 2026 10:05:12 +1000 (AEST)", "from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 810024BAE7FA\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 4 May 2026 00:05:10 +0000 (GMT)", "from mail-pg1-x530.google.com (mail-pg1-x530.google.com\n [IPv6:2607:f8b0:4864:20::530])\n by sourceware.org (Postfix) with ESMTPS id 0E9614BABF15\n for <gcc-patches@gcc.gnu.org>; Mon, 4 May 2026 00:04:43 +0000 (GMT)", "by mail-pg1-x530.google.com with SMTP id\n 41be03b00d2f7-c80148ae949so286211a12.2\n for <gcc-patches@gcc.gnu.org>; Sun, 03 May 2026 17:04:42 -0700 (PDT)" ], "DKIM-Filter": [ "OpenDKIM Filter v2.11.0 sourceware.org 810024BAE7FA", "OpenDKIM Filter v2.11.0 sourceware.org 0E9614BABF15" ], "DMARC-Filter": "OpenDMARC Filter v1.4.2 sourceware.org 0E9614BABF15", "ARC-Filter": "OpenARC Filter v1.0.0 sourceware.org 0E9614BABF15", "ARC-Seal": [ "i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1777853083; cv=pass;\n b=m99HKXbfqE7MIlrCH+YsxIzArUQWmLibdbKLefcAGRMaR+NtELAWJitjm2YGjDXQ7XQZhxu0pBl23JvZqIZZJUD8QXXx5KqcNXg0D7e6tPN8W5uBiXXZz+1lbk4u7sOciFeoKm5drNImNAoBUUQkI3M9HiQO7YqkgF0i7vV0U94=", "i=1; a=rsa-sha256; t=1777853081; cv=none;\n d=google.com; s=arc-20240605;\n b=jEvPeHDgq3C/1OjcX35/BIj0019H/7bYBKhJNDrAoaKjtxO7eRrm3GS0xpXgZQMUhL\n 6J78dBUle3v10OuloGAwFOzIQvAUhVx+1cxDjwerrFnmvrTJm9vPhitKwsVHAe2TF5gq\n R/OpHrOqInWMfp3KdzckYwqnBISq5QTKdvQFNQr5BTSq7+S8AbKd9WovubEA3/gyUz7k\n ROqj2h6nYb70YoQ4dC83tMjlOlFqyWLehvfzBAUqQUltOfedCgCK2zE+BmFQ+ClS5xvu\n icKihBZf40nHSxO2WJzn5pIbppa0oDjEvYdFoo3zvGNP+MoteW+lXkpdOmGYdFp/QvsE\n tCCg==" ], "ARC-Message-Signature": [ "i=2; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777853083; c=relaxed/simple;\n bh=YN75lsoAnMSNf/Ea+zVXSPlMPqbKs1nO/glPTeZRpwQ=;\n h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To;\n b=SyBYB330JlvuC15iTXWgzB6jKnIKJHDynETIjP9knBtksBIV1kc0dFUWL9lVvXELvMP8P/nVV2CW57cVST7vv48QF07TkgVhusZHLSs3mWV4oFQhTrHEYc5KY9GHDPOE+0DjuWR9p+M+tBSeupfd3VP4EDLNZWekxXgujYASDk4=", "i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n h=to:subject:message-id:date:from:mime-version:dkim-signature;\n bh=QT9ZjkIbbhf4DvpZ/QGo41FZwUIdvk3vJxuAqPEgoFc=;\n fh=dXueBjYwyUBdt1LSld0/OONKY6wpbruHuJONT86X6Wo=;\n b=F5WiGQ9FqJva1roWe9MQlv1bXcr/NSbxXSsf3LMp9flA+zWN2V3qkBy+KAXjgBU7KY\n UASJTWIKz63K7oIlAdwhd6kfsyMroJQkiuenqDLcYLwyCslFU4A9E19NWxBpiZly3GKy\n vEO7zzo2xcRXB/1XNGZ/UPzPxfliFSP4tOXy1VyVwhlxlNbYcCKzCZw7ZzgwZp+wO9YW\n uDtgkNYQDZYLsbGnmGbyvvYiDER4u90VD2zs6av8ZbY0VyeDJjLTQG7TaRoMbpLJTujJ\n JUNrhTrdlQn48PfQr2W9Fc6l/jdnrHH8641rzSRXDcbwbC1ZmI3Y5YuL0NLgHlu7w7aG\n uSdw==; 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=1777853081; x=1778457881; darn=gcc.gnu.org;\n h=to:subject:message-id:date:from:mime-version:from:to:cc:subject\n :date:message-id:reply-to;\n bh=QT9ZjkIbbhf4DvpZ/QGo41FZwUIdvk3vJxuAqPEgoFc=;\n b=MLty//tUgvPqPTx7wc2Fk4DV9hIRMV9DLlj7LBtbnJFEv4wsv01HSxHDkDgCzPOFkv\n 9f6fV17ZOM7tmaa4584U/b72hctYL3f4EFp9zBMFWzqCTN56vWmwZkb0ChnBgM2RVQEs\n lFFkF+KkJWBNilqHmjz/srYFVr5QhKwgl03fv+f9y3Po6PTaALEyqXSpGw71mvqK0kXr\n tDvEhVxqp+mtKMhvHlctCXVNWGQO/TCsZdslkG5rdpAgVo1SMkGpFJS0HqF1nId+lFf0\n 7tKHXOCCpxEuQO8crRaQ5zO9m/f3Idi+lHLONp1cx1dfcNCJUqelaK9l6eq/26E6DSHc\n iXtA==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777853081; x=1778457881;\n h=to:subject:message-id:date:from:mime-version:x-gm-gg\n :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;\n bh=QT9ZjkIbbhf4DvpZ/QGo41FZwUIdvk3vJxuAqPEgoFc=;\n b=sogTJ1NhXkX34E1YBIIf12Qtk4fZ1px77hpZORYQfc0g/uuXEyG2r1PB+K6I6pa1SS\n c1/W9hTusoNGDec8FLq6HB4hhVxn22/rJvCWfBfg41PcIDBEJPRUTPB9nYqZLvdmyFSf\n tyWgeFCD7ciBYwcXJKIW/oCysSZ8861X4XlMtMwI26QBfueXKAgpaU6skSYCsKDiX2LA\n fxpaV2SFTP/rUEwlLR820REhaDeXjm1Q1ZSV1fpwMC2DJHbeJEtNYR9MVYBkxXu8J6ZF\n qfxwvd8MVYVwdLLJNP37IkIbiAxLbOrqeAXEADs6zMipHwOs+oMTO58Yr0icB6nBNpM9\n 17Nw==", "X-Gm-Message-State": "AOJu0YwcyeiQQxwWd41CU8/M8GLLNWJAD93BGYxWrR93uMYjKgpkdGjI\n 9jh6OdDjo9YRUUdib6+KJyY1hROzwQcpFOrVZpqAWnqcQGJFEwPoU2pWLHQE/pHGo3/HqTR4Nsg\n s7XPv3jBkm1y4/hrE3UwmmkavPdayncWYbHUFByKztXsw", "X-Gm-Gg": "AeBDietu9HmN8+/jw6UXjaIH/aTVonzLalTFJvCxs6RTJE4HZ1sTcbrAkCQY/7LIBTO\n seh0D9eyJGmFS4TVMN7vC7xnoKIHjbsM6EBsMWxDbMZOF9KEnDNNWxpL3tuAXdbGibEN9MDpuQe\n l+p1FPuo0ldIlySYvil4pTt21wn9ljM76D7YYnavMWvftk5RfcU66zX0DoCY08HGB/yBJY63pRq\n QDD+rtjv9nTOBVzIXwIdUIocJUaIVj/xSkXdwK+6Lc1zrMVqnYlLwfJGZ4evEXikULiI3MDmHOp\n J6aVhaD67uKr/cISrQ==", "X-Received": "by 2002:a05:6a20:7d8a:b0:3a0:cd5:82a6 with SMTP id\n adf61e73a8af0-3a7f1c6759amr6979019637.46.1777853081274; Sun, 03 May 2026\n 17:04:41 -0700 (PDT)", "MIME-Version": "1.0", "From": "\"H.J. Lu\" <hjl.tools@gmail.com>", "Date": "Mon, 4 May 2026 08:04:04 +0800", "X-Gm-Features": "AVHnY4Ls8PTQMRiB9B_MUFYkX5ySTY5e-vh9R8HJMjcUe78YFXkN3TfnE9R3XWk", "Message-ID": "\n <CAMe9rOpsc6R-QXiGR=R6C0TVJTbjPtEyj8unUo1Yhh+CGTkcEg@mail.gmail.com>", "Subject": "[PATCH] or1k: Allow SImode for condition flag register", "To": "GCC Patches <gcc-patches@gcc.gnu.org>, Stafford Horne <shorne@gmail.com>", "Content-Type": "multipart/mixed; boundary=\"0000000000005f5d7a0650f2ad33\"", "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": "Commit\n\neb2ea476db2 emit-rtl: Allow extra checks for paradoxical subregs [PR119966]\n\nchanged validate_subreg to return false on the paradoxical SImode subreg\nof the OpenRISC condition flag register (reg:BI sr_f), which triggered\n\ninternal compiler error: in emit_move_multi_word, at expr.cc:4497\n\nc0694f95f59 or1k: Fix ICE in libgcc caused by recent validate_subreg changes\n\nchanged or1k_can_change_mode_class to allow changing flags mode from BI\nto SI. But or1k_hard_regno_mode_ok still returns false for condition\nflag register in SImode. Update or1k_hard_regno_mode_ok to also allow\ncondition flag register in SImode.\n\nTested with or1k Linux cross compiler for or1k glibc build.\n\ngcc/\n\nPR target/120587\nPR target/125155\n* config/or1k/or1k.cc (or1k_hard_regno_mode_ok): Allow condition\ncondition flag register in SImode.\n\ngcc/testsuite/\n\nPR target/120587\nPR target/125155\n* gcc.target/or1k/pr125155.c: New test.", "diff": "From d788754d9a90dd811a6c57b47407efd9aeb41890 Mon Sep 17 00:00:00 2001\nFrom: \"H.J. Lu\" <hjl.tools@gmail.com>\nDate: Mon, 4 May 2026 05:08:51 +0800\nSubject: [PATCH] or1k: Allow SImode for condition flag register\n\nCommit\n\neb2ea476db2 emit-rtl: Allow extra checks for paradoxical subregs [PR119966]\n\nchanged validate_subreg to return false on the paradoxical SImode subreg\nof the OpenRISC condition flag register (reg:BI sr_f), which triggered\n\ninternal compiler error: in emit_move_multi_word, at expr.cc:4497\n\nc0694f95f59 or1k: Fix ICE in libgcc caused by recent validate_subreg changes\n\nchanged or1k_can_change_mode_class to allow changing flags mode from BI\nto SI. But or1k_hard_regno_mode_ok still returns false for condition\nflag register in SImode. Update or1k_hard_regno_mode_ok to also allow\ncondition flag register in SImode.\n\nTested with or1k Linux cross compiler for or1k glibc build.\n\ngcc/\n\n\tPR target/120587\n\tPR target/125155\n\t* config/or1k/or1k.cc (or1k_hard_regno_mode_ok): Allow condition\n\tcondition flag register in SImode.\n\ngcc/testsuite/\n\n\tPR target/120587\n\tPR target/125155\n\t* gcc.target/or1k/pr125155.c: New test.\n\nSigned-off-by: H.J. Lu <hjl.tools@gmail.com>\n---\n gcc/config/or1k/or1k.cc | 7 ++++---\n gcc/testsuite/gcc.target/or1k/pr125155.c | 14 ++++++++++++++\n 2 files changed, 18 insertions(+), 3 deletions(-)\n create mode 100644 gcc/testsuite/gcc.target/or1k/pr125155.c\n\ndiff --git a/gcc/config/or1k/or1k.cc b/gcc/config/or1k/or1k.cc\nindex 17240e3ee48..66fd784f8b9 100644\n--- a/gcc/config/or1k/or1k.cc\n+++ b/gcc/config/or1k/or1k.cc\n@@ -1389,10 +1389,11 @@ or1k_trampoline_init (rtx m_tramp, tree fndecl, rtx chain)\n static bool\n or1k_hard_regno_mode_ok (unsigned int regno, machine_mode mode)\n {\n- /* For OpenRISC, GENERAL_REGS can hold anything, while\n- FLAG_REGS are really single bits within SP[SR]. */\n+ /* For OpenRISC, GENERAL_REGS can hold anything, while FLAG_REGS are\n+ really single bits within SP[SR]. Also allow condition flag register\n+ in SImode to match or1k_can_change_mode_class. */\n if (REGNO_REG_CLASS (regno) == FLAG_REGS)\n- return mode == BImode;\n+ return mode == BImode || mode == SImode;\n return true;\n }\n \ndiff --git a/gcc/testsuite/gcc.target/or1k/pr125155.c b/gcc/testsuite/gcc.target/or1k/pr125155.c\nnew file mode 100644\nindex 00000000000..8ca95475b66\n--- /dev/null\n+++ b/gcc/testsuite/gcc.target/or1k/pr125155.c\n@@ -0,0 +1,14 @@\n+/* { dg-do compile } */\n+/* { dg-options \"-O2\" } */\n+\n+int __pthread_keys_0_0;\n+int\n+___pthread_key_delete (void)\n+{\n+ int result = 22;\n+ int __atg3_old = 0;\n+ if (__atomic_compare_exchange_n (&__pthread_keys_0_0, &__atg3_old,\n+\t\t\t\t 0, 0, 2, 0))\n+ result = 0;\n+ return result;\n+}\n-- \n2.54.0\n\n", "prefixes": [] }