get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/2227639/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "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": "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",
        "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"
    ]
}