Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2227639/?format=api
{ "id": 2227639, "url": "http://patchwork.ozlabs.org/api/patches/2227639/?format=api", "web_url": "http://patchwork.ozlabs.org/project/gcc/patch/b8e2e71a-2db5-4327-811e-32577385678a@yahoo.co.jp/", "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": "<b8e2e71a-2db5-4327-811e-32577385678a@yahoo.co.jp>", "list_archive_url": null, "date": "2026-04-24T03:06:14", "name": "[3/4] xtensa: Implement \"-mforce-l32\" target-specific option", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "ed8dc6d2a7e367cb84bc7bd32f9d56f64fc0e854", "submitter": { "id": 83997, "url": "http://patchwork.ozlabs.org/api/people/83997/?format=api", "name": "Takayuki 'January June' Suwa", "email": "jjsuwa_sys3175@yahoo.co.jp" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/gcc/patch/b8e2e71a-2db5-4327-811e-32577385678a@yahoo.co.jp/mbox/", "series": [ { "id": 501290, "url": "http://patchwork.ozlabs.org/api/series/501290/?format=api", "web_url": "http://patchwork.ozlabs.org/project/gcc/list/?series=501290", "date": "2026-04-24T03:07:46", "name": "[1/4] xtensa: Implement \"__force_l32\" named address space", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/501290/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2227639/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2227639/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=yahoo.co.jp header.i=@yahoo.co.jp header.a=rsa-sha256\n header.s=yahoocojp-202506 header.b=F+sacQF9;\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=yahoo.co.jp header.i=@yahoo.co.jp header.a=rsa-sha256\n header.s=yahoocojp-202506 header.b=F+sacQF9", "sourceware.org; dmarc=pass (p=quarantine dis=none)\n header.from=yahoo.co.jp", "sourceware.org; spf=pass smtp.mailfrom=yahoo.co.jp", "server2.sourceware.org;\n arc=none smtp.remote-ip=182.22.18.81" ], "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 4g1yfP6fBHz1xvV\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 24 Apr 2026 13:11:25 +1000 (AEST)", "from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id D66B84BB1C17\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 24 Apr 2026 03:11:23 +0000 (GMT)", "from omggw0003-vm1.mail.otm.yahoo.co.jp\n (omggw0003-vm1.mail.otm.yahoo.co.jp [182.22.18.81])\n by sourceware.org (Postfix) with ESMTPS id 5E3004B99F7B\n for <gcc-patches@gcc.gnu.org>; Fri, 24 Apr 2026 03:08:55 +0000 (GMT)", "from sonicgw.mail.gze.yahoo.co.jp by\n sonicconh6102.mail.ssk.ynwp.yahoo.co.jp with HTTP;\n Fri, 24 Apr 2026 03:08:52 +0000", "by smtphe6003.mail.ssk.ynwp.yahoo.co.jp (YJ Hermes SMTP Server) with\n ESMTPA ID 3cfd556477463a07319474428d84746a;\n Fri, 24 Apr 2026 12:08:48 +0900 (JST)" ], "DKIM-Filter": [ "OpenDKIM Filter v2.11.0 sourceware.org D66B84BB1C17", "OpenDKIM Filter v2.11.0 sourceware.org 5E3004B99F7B" ], "DMARC-Filter": "OpenDMARC Filter v1.4.2 sourceware.org 5E3004B99F7B", "ARC-Filter": "OpenARC Filter v1.0.0 sourceware.org 5E3004B99F7B", "ARC-Seal": "i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1777000135; cv=none;\n b=glteQcJCanydXk/Kc7ZP50Atuat6+Lvr3RkTk4YMghFDK5O+4nfm6V5sduHCFCatVTdWqaFel8wt/GkZ7X3P3CNKdE9dDmRjz+9KDLcUg2C5seD/K/XgOuLoO3aQ2G40v2AKpcIwmvu2gYJngm9FpQ8GAZ/WIpGKE1NLY6/8XKM=", "ARC-Message-Signature": "i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777000135; c=relaxed/simple;\n bh=QYenc5mpTivRdqnB1ofeuElBxEhfXg1cUpb0etD+lwk=;\n h=DKIM-Signature:Message-ID:Date:MIME-Version:To:From:Subject;\n b=X99PSpZLDBZBp1qc7TrpEd6bEu/5F1DC3kfOpJGHCeChHYx9fCcOalgoZ7urUFhNdt4s9Y+nbtfrGoXfQK0ZeDPZtTWlNKW/POO/9GmS8LlBvcrXnyr4AQizXQ7crGO/BykGFCFWeaNdeznAmW1Sfb36UmioXtYdEV3NRfS8pE8=", "ARC-Authentication-Results": "i=1; server2.sourceware.org", "X-YMail-OSG": "A8De6mkCAO3w3xmRQ3E4fHHMaJcNll0gwC9hkPRLZVdhogXwn3Tq6mELkswOTLn\n nJ/FOyKG84pi/Icic6dE7ZO/GZX0620GRMVxHYVUOY5m4SPljwdMloI2/DAGO+pFb4Uxp4phuzKr\n 2skxqjIVlulJsOW55K2bsOmRlpKsbGmn4RF6kfHb7Dy7Q9PDW9SBr6PqcqGf77gEzFEoZgimjd/B\n 6oTGddrIsf2tq7iHPcONiDewcSJs/M9u7BY77XBBtwNIv/HsGLKPkq+jwiTmWYUcgq2RxaxsUbbC\n WoarVT/h4aXhLpmK9ByvTzLTyjyjKmaHu3i4RTqe1a2Oh9xsV3nrX1tbavc5OpJoaxPv62D1uYS1\n PDnyOLtko966i7LgtXLlvW+80GnRKv956sweDuXC51JV7ZnPTyvUIpgR6tJUTcGgn6aagf2UA1kX\n 8IEKuUgd7fLNB1f9NeqAUwUon2FiSxHat6N6fDBiyQK15+K0aETvhVcf6lY/uRo+tqUZcltCh5aS\n ucUdbcRfMKcEKewLJq/Xxu45DXetyJwqndNvuZjGO97Rza08QWC0rTT4JwlXnEcvdRS//DVQYw94\n pENijhY2oPTi1w4l79VZlLOteyo5/F68IgoI7j7YiGM1FiclN5aZS5dc2YzpsAQh3jphfb7LBzUr\n 9LcW4KW2+y7IUQ6dL/6FT/igMM78NHGmA9wcfWRXHDRKc6gVgcsEEF2XMUN0+BpoaMzlQ9SmpWGz\n rYYkXROu639MjqVYqT67QQ7ZjArQxDrsN+tq9ADxKtTAtF7OxAj+3f46FUOFz+zZ+qai17PMRM0k\n a0bWkOx8PSykeuT4jsTNrnuhZ/eUozUywDnXfyfjxENI1tJ4bKtffbe4AZIsatRj9eq1XGEuxJYE\n SLzFce6dzcLJuIpMC0OoIn+LY55/7BdgHELubzoYnncMFl+tF1+8hkrvga9UOT5Qf5X5OOX/5yYJ\n FvqmHg1m8C+UWqPxevwGJT85oaFEZlkDD6AqQFpBz5Wp5E1x3pTecgjUrbKYiuMTKM9+ZYSai2Cb\n cvQRKlXPpz7ZtfBrHpyD3uNaA1stsECx4w9/EsqJjkjJa/PS96swrTCKAbc+e3KQKg/1GcMB0Iwe\n HzhyUWB/oBB8hiVT2IE2tktfn3h3ah5C/p3fBpIBolV7IVpQ2IzPOQDCBs59inYQea2EKPV5NeKU\n fObbv5p8yE1zeuuHLwE/8mpWT9Vqfx9wXqstWZbSrgeFwdVRz/XDHCgX8h2JmfKB00Kf2MHlHnpd\n LFSnNQ8LDoDMj/BA8FKXlk4bPGV6IsWQ2XjXILaSV9nDpWHZ19XLWq75cIYwfN1EYa9EB1SZfJ1X\n z/3x6jhgB5ZkDqSaWl+TKyuahETsJLJoMF+pAPUwqX7RmimSs5x+jKDT7Yk5RsrDRQMaMox4Rlud\n 6WUnhbhEfCxkLk7xyILO+4L6/Hrs7pFXIg+ia7WS3W9/+kF+OPuWlPkWMYaH4xNH9oRNueEbSePE\n cuDnUORjNgbEc8SiornQcop0BGUMUcBnIZuLJ1b+DgFEvg3QcQGabcK42SWFv7/x8XKeAMI3MXmQ\n VvduJpKYD+r1UMg9Oj3lcfTBHJjgpg27TOjCYT0KSva63IOUPZB4InpOGHaeJFaTI+Su28cxbm8Z\n 78PLkcQhSCrpGL4Rct/GnaFzNpH5PpqoJ1krQ7bhiYfTlJApwmAXD4TmTF5vjL+czvg82Z5yH8aJ\n Jh9a4XKIn+2ACTav42Sq+WQiCQGpGwvpkL3mefHydxGQ3xvj07HNLIWEWw4c4EFL6ZOAlgO0cohN\n R1tQnIICEF+Akj/aknFcB2zpkRQ2u3ZiKibzpG4nYPCbSVOptYgdrU6bpONiBltz5ycQl+chFini\n FvmGPvFQXHBpF5iougbegPgZjoXiAinvZJR8Ljfr7uO+iHNgGdFFPpFywkL5+suqubxffQgRcvWI\n EecZikl0ueTrQvQMr18WCSLr4uFVZ7I56atRFmxt/8ctPAOn2a6ssu0PnxI42J+Vv9fEusMWQ2E4\n +BOXP/Gm436gcqPtRP7hNpPYYDJgGMF+yCF2Gs89zhGrQJbwBZYfepAKgKwSzMJ503IMqC6zr3x8\n J4JuHJw1WeCt1viC3jMcGJG53WjLRGuJ7TXfrY+DG5PEJC0+WwEaqypjaHIPjKmjHbGjOxSw6Dq9\n YTaTV/3+hKFSRFrDTzcrlfevRbzgOC5L+DJtxJpwRWesGCe8LOoWcbcxHj6VJlxtPcYxNawPe30J\n r5haP7YFc6gXjRKpiEosqAzcmxmW6IVSd4iTItncT3Cr1WjpmeNWj0Oo8zn3oRQX6qMtWTN3mIsc\n EzZWqIQ5BJmXPir27Wg+HMQgWb+ObWXaFl3Fwralc+O543Iq2hmfSo346Yz9gEUKL01RsALsSSKr\n IipDcb8a2YGL5ZYdFmMUigcoCfxeSR3H7OShzu5Dr0t3SToZrFFz7w8S9uqiDHBhfrh2tRvMU2Mg\n ND04anbtt641dZujE8243FYgbIFLU6NI60s/JXyH/bd7yBb6ZBCO8RtNLaJXP88b9k+Kia0eRjtg\n 1OWYacsj+FpnzDjFQ+CE/GtFxknQ1qEYQNl8xGj3iJgfhXoxkl7h70sPj5CPdkjzpFy6LjZWvWqg\n 4F6JqZZgpVVlVfFUWSL4LqBV6lbqgUFgEyDYwVj1/Uz8xHzEOwGqdJnWKP735B7VzSVPLCKPQOTO\n yAIwirlXelw3kub3oV9120GiWdiSt1xQc8g5gPaoJR578sNWQcTGw4vSNGI2prR/w1Id5y+RSoZi\n QV4OcTScYdlW4xXpn9hQlzN6zx1x7c80L8QzqKYJeEmWekYT+hZSuKnNO7g==", "X-Sonic-MF": "jjsuwa_sys3175@yahoo.co.jp", "DKIM-Signature": "v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1776999974;\n s=yahoocojp-202506; d=yahoo.co.jp;\n h=References:Content-Transfer-Encoding:Content-Type:Subject:From:Cc:To:MIME-Version:Date:Message-ID;\n bh=aifCC5DWneWp5GycY7aMO3zF28HR23tLhVUXY7BjTlI=;\n b=F+sacQF9GfPjC2e2pKeoTgdJreqkxLaX35YlcPafKANT7PmS2MsKspmVwkaZ7N5k\n Jn7EXhRXuFhTlF35SrRLL46wfFJniWVZ1CZkAHJrw4qCW2e0pgiXvkpA7a9smsjPE7y\n EUjgvZzqngExaL8I/Asbqli0IVXZf6qC6PjoleG5j/QNh/UkCspPW7ft7WGdAjPSYDR\n 7U5D0htvieF3e0F/Mxz6jKwkpGwgL+kZzs5BHTFtW7GfM4GFXEoNvLSSdqf+MklUWUe\n x8hF5x0iTehFMHpdFXnSipvFXX8KN+KXn9OyOywBnDY7DIijI5VllnzD/MCQ6gzro2X\n cR5EIbeg3w==", "Message-ID": "<b8e2e71a-2db5-4327-811e-32577385678a@yahoo.co.jp>", "Date": "Fri, 24 Apr 2026 12:06:14 +0900", "MIME-Version": "1.0", "User-Agent": "Mozilla Thunderbird", "Content-Language": "en-US", "To": "gcc-patches@gcc.gnu.org", "Cc": "Max Filippov <jcmvbkbc@gmail.com>", "From": "Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp>", "Subject": "[PATCH 3/4] xtensa: Implement \"-mforce-l32\" target-specific option", "Content-Type": "text/plain; charset=UTF-8; format=flowed", "Content-Transfer-Encoding": "7bit", "References": "<b8e2e71a-2db5-4327-811e-32577385678a.ref@yahoo.co.jp>", "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": "In the previous patches, both the named address space \"__force_l32\" and\nthe target-specific attribute \"force_l32\" were introduced for reading\nsub-words from the instruction memory area.\n\nThis patch introduces a new target-specific option \"-mforce-l32\", which\nallows sub-word reading from the instruction memory area even in the\ngeneric address spaces (ie., the default memory references) or without\nthe \"force_l32\" attribute.\n\n /* example */\n int test(unsigned int i) {\n static const char string[] __attribute__((section(\".irom.text\")))\n = \"The quick brown fox jumps over the lazy dog.\";\n return i < __builtin_strlen(string) ? string[i] : -1;\n }\n\n ;; result (-O2 -mforce-l32)\n \t.literal_position\n \t.literal .LC0, string$0\n test:\n \tentry\tsp, 32\n \tmovi.n\ta8, 0x2b\n \tbltu\ta8, a2, .L3\n \tl32r\ta9, .LC0\t;; If -mno-force-l32,\n \tmovi.n\ta8, -4\t\t;;\n \tadd.n\ta9, a9, a2\t;;\tl32r\ta8, .LC0\n \tand\ta8, a9, a8\t;;\tadd.n\ta8, a8, a2\n \tl32i.n\ta8, a8, 0\t;;\tl8ui\ta2, a8, 0\n \tssa8l\ta9\t\t;;\n \tsrl\ta8, a8\t\t;;\n \textui\ta2, a8, 0, 8\t;;\n \tretw.n\n .L3:\n \tmovi.n\ta2, -1\n \tretw.n\n \t.section .irom.text,\"a\"\n string$0:\n \t.string\t\"The quick brown fox jumps over the lazy dog.\"\n\ngcc/ChangeLog:\n\n\t* config/xtensa/xtensa.cc (xtensa_expand_load_force_l32):\n\tAdd handling for loading from the generic address space when the\n\t\"-mforce-l32\" option is enabled.\n\t* config/xtensa/xtensa.opt (mforce-l32):\n\tNew target-specific option definition.\n---\n gcc/config/xtensa/xtensa.cc | 3 ++-\n gcc/config/xtensa/xtensa.opt | 4 ++++\n 2 files changed, 6 insertions(+), 1 deletion(-)", "diff": "diff --git a/gcc/config/xtensa/xtensa.cc b/gcc/config/xtensa/xtensa.cc\nindex 783cc6bbaf6..fa7d5fa9957 100644\n--- a/gcc/config/xtensa/xtensa.cc\n+++ b/gcc/config/xtensa/xtensa.cc\n@@ -2669,7 +2669,8 @@ xtensa_expand_load_force_l32 (rtx *operands, machine_mode dest_mode,\n \n /* Exclude insns that do not perform memory loading with \"force_l32\". */\n if (MEM_ADDR_SPACE (src) != ADDR_SPACE_FORCE_L32\n- && ! xtensa_expand_load_force_l32_1 (src))\n+ && ! xtensa_expand_load_force_l32_1 (src)\n+ && (!TARGET_FORCE_L32 || MEM_ADDR_SPACE (src) != ADDR_SPACE_GENERIC))\n return false;\n \n /* As a preprocessing, handle cases where addr is (PLUS (REG, OFFSET))\ndiff --git a/gcc/config/xtensa/xtensa.opt b/gcc/config/xtensa/xtensa.opt\nindex 36ac95522d7..adbfc232fa6 100644\n--- a/gcc/config/xtensa/xtensa.opt\n+++ b/gcc/config/xtensa/xtensa.opt\n@@ -170,3 +170,7 @@ Do not generate code using SALT/SALTU instructions.\n msalt\n Target RejectNegative Var(xtensa_salt, 1)\n Ggenerate code using SALT/SALTU instructions.\n+\n+mforce-l32\n+Target Mask(FORCE_L32)\n+Use L32I instruction to access 1- and 2-byte quantities in memory instead of L8UI/L16UI/L16SI.\n", "prefixes": [ "3/4" ] }