get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 2194967,
    "url": "http://patchwork.ozlabs.org/api/patches/2194967/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/gcc/patch/D1AB2DDF-E79F-431E-BAC8-F12D593164D3@nvidia.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": "<D1AB2DDF-E79F-431E-BAC8-F12D593164D3@nvidia.com>",
    "list_archive_url": null,
    "date": "2026-02-10T10:08:28",
    "name": "aarch64: Fix ICE in JSON tuning schema with dispatch scheduling and update schema for SVE costs",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "12befe15e79bef2e1840aded5f6348e6aa08195f",
    "submitter": {
        "id": 89747,
        "url": "http://patchwork.ozlabs.org/api/people/89747/?format=api",
        "name": "Soumya AR",
        "email": "soumyaa@nvidia.com"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/gcc/patch/D1AB2DDF-E79F-431E-BAC8-F12D593164D3@nvidia.com/mbox/",
    "series": [
        {
            "id": 491641,
            "url": "http://patchwork.ozlabs.org/api/series/491641/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/gcc/list/?series=491641",
            "date": "2026-02-10T10:08:28",
            "name": "aarch64: Fix ICE in JSON tuning schema with dispatch scheduling and update schema for SVE costs",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/491641/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/2194967/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/2194967/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=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256\n header.s=selector2 header.b=WBJKzsx4;\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=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256\n header.s=selector2 header.b=WBJKzsx4",
            "sourceware.org;\n dmarc=pass (p=reject dis=none) header.from=nvidia.com",
            "sourceware.org; spf=fail smtp.mailfrom=nvidia.com",
            "server2.sourceware.org;\n arc=pass smtp.remote-ip=40.93.201.31",
            "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=nvidia.com;"
        ],
        "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 4f9HND16d7z1xtr\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 10 Feb 2026 21:09:16 +1100 (AEDT)",
            "from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id E26414BA23F1\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 10 Feb 2026 10:09:13 +0000 (GMT)",
            "from CY3PR05CU001.outbound.protection.outlook.com\n (mail-westcentralusazon11013031.outbound.protection.outlook.com\n [40.93.201.31])\n by sourceware.org (Postfix) with ESMTPS id DE3A84BB3BEF\n for <gcc-patches@gcc.gnu.org>; Tue, 10 Feb 2026 10:08:31 +0000 (GMT)",
            "from SA1PR12MB9546.namprd12.prod.outlook.com (2603:10b6:806:459::17)\n by PH7PR12MB9150.namprd12.prod.outlook.com (2603:10b6:510:2eb::21)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9587.12; Tue, 10 Feb\n 2026 10:08:28 +0000",
            "from SA1PR12MB9546.namprd12.prod.outlook.com\n ([fe80::fc5f:d70:c43b:a54]) by SA1PR12MB9546.namprd12.prod.outlook.com\n ([fe80::fc5f:d70:c43b:a54%6]) with mapi id 15.20.9587.017; Tue, 10 Feb 2026\n 10:08:28 +0000"
        ],
        "DKIM-Filter": [
            "OpenDKIM Filter v2.11.0 sourceware.org E26414BA23F1",
            "OpenDKIM Filter v2.11.0 sourceware.org DE3A84BB3BEF"
        ],
        "DMARC-Filter": "OpenDMARC Filter v1.4.2 sourceware.org DE3A84BB3BEF",
        "ARC-Filter": "OpenARC Filter v1.0.0 sourceware.org DE3A84BB3BEF",
        "ARC-Seal": [
            "i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1770718112; cv=pass;\n b=mlMWmifkm9rbmfMKwdowL4Zce4qvdv+gWby2OsWkIggrCLYzzWHeO3aBoYIKCSWITjmeDCXQFs3TBs8KVoexA74oMd9qktWk8GLVteakeO1CI1Pf/P5bR0OCNiZnGbUOt8Z+rHP4kjsym0j4Hc/TUJLzzm+7XM6Y0gQ3LknCOtk=",
            "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=n3caTxAMwUj+M9L+VTAXV2iymb5Qk5h08XazsExm7YClXeL6urkhqpfTeMopLygp1glPU3nbHjEVJa2P6QaHXKDyeKvg+sCNpMmnThqPtLjIhX1Bh9P0Ow7O8PGVfngVjNRcSCLrxva7fZUmj2KSeCSzOOKbj77vdYwl3jg1Cpu7tmNrymN7yXum/fa+Hd7b0eXY0Me+e3omCoMxPHjdJupalW+6FJbkELDqqW7ANxv40r+tLCwedb1Cxz3q7/XzYKc98vvhNMifxIwn8O+66bnPZfROWa3gTHiJoSqI4eoUc2iGjGaENFxZODtjdwqRkMb3Ut7SkorhWZBFjOGi6w=="
        ],
        "ARC-Message-Signature": [
            "i=2; a=rsa-sha256; d=sourceware.org; s=key;\n t=1770718112; c=relaxed/simple;\n bh=eOj17lNzvp32SL7uI+95bX9QON4jhlVh/cZMIfJr4OY=;\n h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version;\n b=lepuTWua64PeWyLRODUBRtNagZatBF/U8ykkg/09nOtGn8F3ce2/+JfpNnCGu40GE6m3yn1Ub/Nr65AT1H3XZ6jOUsIe2wJ3MIHeYBPuKh9atBNlfIQ76SWUscLI1GLxkUopj9EXnos7RKo+sJizZ2u5+WVoAXdp7DUhlKYbEi0=",
            "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=6o4V6vUUW9RnVI2rPYXjzjJyNj/7fjwANq+wlfXGI2I=;\n b=HPVNgUCIzp0otrritWp9qB+XTvPBSzk6EDRpH8rFTurH3b/cv5zeXrA+EAPIEiUSe8mH4xG2k1ZPleNDhR57QBYmJz1UDGM8hBwStYsqAKEF/wy+2bRhZiZL908NcARbt+UiccDcOXNXBfT1uPF181T/Ijde5zbZ17ghEGHmWXovQCMRZLDB6Q4HeHSEP4cFPYz2qqo0cu0VO41giplK1U/fW2OjQDgPr7iIjbaB87lv8SJIPU5TDozQ5hc+8jSul7HqrCPtNBLK/TvV2t6IQw8I9rkEb/zcCBMc1n7H0mue8YSi2OOIa7E9C/qeQTjZwwaIwqlMBogiJRotKF5zrg=="
        ],
        "ARC-Authentication-Results": [
            "i=2; server2.sourceware.org",
            "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com;\n dkim=pass header.d=nvidia.com; arc=none"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=6o4V6vUUW9RnVI2rPYXjzjJyNj/7fjwANq+wlfXGI2I=;\n b=WBJKzsx4IL+Q+9Qgvz8DBLUuOCP11nGic+3BiO6wsVYnjG2uDtKU6SaXgBKoFBVd/0XvQNgPAX2TkC8HCED1oWQzpvYWumpPTQEJyZXvxA3EA94d8emwg99hhJNFBNHMND6TIiz8TsCOAjXfKVcM7pzlQub4qSRLTzvnYmJnRkljhWWqRoeoV57VEsEzrZV+WZIzp+ZjsHvZe/NGh9pm80Etxn/Tv5O7iEOwrejx28swpuwobBMxom7dQVRYXqn9CflBr58MQrtUHFVfVtOxmOLJzbtjgEyoxDlClqKuaQo3iSddpRBpIzgE3sLlB0qxUAUbULYu2N99ftp0/hpGPA==",
        "From": "Soumya AR <soumyaa@nvidia.com>",
        "To": "\"gcc-patches@gcc.gnu.org\" <gcc-patches@gcc.gnu.org>",
        "CC": "Kyrylo Tkachov <ktkachov@nvidia.com>",
        "Subject": "[PATCH] aarch64: Fix ICE in JSON tuning schema with dispatch\n scheduling and update schema for SVE costs",
        "Thread-Topic": "[PATCH] aarch64: Fix ICE in JSON tuning schema with dispatch\n scheduling and update schema for SVE costs",
        "Thread-Index": "AQHcmnUzSJVzwKyZmE661Sjo0WSNxw==",
        "Date": "Tue, 10 Feb 2026 10:08:28 +0000",
        "Message-ID": "<D1AB2DDF-E79F-431E-BAC8-F12D593164D3@nvidia.com>",
        "Accept-Language": "en-US",
        "Content-Language": "en-US",
        "X-MS-Has-Attach": "",
        "X-MS-TNEF-Correlator": "",
        "authentication-results": [
            "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256\n header.s=selector2 header.b=WBJKzsx4;\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=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256\n header.s=selector2 header.b=WBJKzsx4",
            "sourceware.org;\n dmarc=pass (p=reject dis=none) header.from=nvidia.com",
            "sourceware.org; spf=fail smtp.mailfrom=nvidia.com",
            "server2.sourceware.org;\n arc=pass smtp.remote-ip=40.93.201.31",
            "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=nvidia.com;"
        ],
        "x-ms-publictraffictype": "Email",
        "x-ms-traffictypediagnostic": "SA1PR12MB9546:EE_|PH7PR12MB9150:EE_",
        "x-ms-office365-filtering-correlation-id": "79238dce-fbf0-4ca7-dee7-08de688c5631",
        "x-ms-exchange-senderadcheck": "1",
        "x-ms-exchange-antispam-relay": "0",
        "x-microsoft-antispam": "BCL:0;\n ARA:13230040|376014|1800799024|366016|38070700021;",
        "x-microsoft-antispam-message-info": "\n /2kErGtZ4l40aDZ3KGrEWnbEjSyVNXm0CUz1226OIkljERk3MJQDS5uTNib7E9frLB20HdXwwRhfHC3g7U3vluurrK+BvBjPrO+4k1SHaZ9wZrlx9pXzClAniRGr8YLMWdrfNRD6xTaYY6L0uUM0GdApCrVSYXkw8lnV7vQw66VRKk77KYrHsGnDxsEhdwsFrNdZqSpzAZf8lF34G1OTWq8yCJPak2x3gxQEUyRBYscqNqaXUi7Ol++gQ0MMYBmVzmk5QdiC2o00p6495QsTZU7y0RMaOkubR0uidtRMqwzdXogZ23cs89jDuNxMn2RbSt9ah/pw0D2MdMzlb/lE/Z6Ytdy1hOo1Slw31PMZR22mh1S1mFoglrXX4U6mDvwKaDOd965NQXACmfxX/ii1UoC7ivHjp0VgQBBgzQUV87+g+QYP/uj1Htl7HG51rlKKDfX5ZhdB6kH7Ad9jhmA09fn1BVa3EzamVfr0ITk13B/AszJOsbTK2arUFgbynPBdIbdeBYOdsd5hxYvKGX/fqGIrDSTzdkgOYJ8iunPM2BgkEqmCm2lBsf/OYrwqqJ3YVMiJ7ENas2sxxtdiQjNyvRjpxi8LjQbCI7ldQFMy1wKaZ1rS4LKdBWvaVQ51+i8pI3sTHAfR8kFgVouxuKsFKU0tgVUY6h9s2eTfzGwerRxZfRkD1+HoV6nrBCLyHGqUa3khxVIf2olgRNEmAV+672b9K2BY3sVk7xlarWCQj1ZQSl1/m8GrMD2MwDJItp+yOSRaui1m+5HI2F/o+uVjFvnYLPaFioVN8uNH+2q7OGKn7hm0Hh3Z1ngawVdYdDVuszmJlKC0DQPb7ZCHVwNhulcDvNe4CVz7dgTq+e6451/iSNevFYRAatvrmUfFAS/6KSPycX+vD+yLQGhOrIBSc1tsVsJgL4dFnfZnO/pFA2wveIUPA3LrxMwjEgKQc9qoeIfjBKyX9gz/14o6LAK4sfglFhXqb/n7ebBYPf0UqcwK1ifDfJECYE7Z6XQ7UJPqDY0DgG1sQr24ZMxsvPdU/yVr5ogs+3aMq2rzSCcYP+XoCmxv39SEq79y0Wt6WmG7VuRDqzfgGIxO1QCvJkpPldwtZ5AEywQtQ59yjpBOIkJ0bcgr7ZCoRPzLnsPwZIVSo++4egnJQoJOdsh59SzYXTeHKJP1fnsGBU0S3LRSkfHTJqLpHySzhBqwtLrPGRliKh5z514YnpYUOy5Y6MjLyal8b0namncxMEtyQSdtccQQ3teRo86dkwFct1FxqvB0cn/E6heEPLHU8zwKmiuol+ghfm88nxLMRFHougYvx6SeUB/p1A9aUzMIKrZCT9Z9OuMpJ+7IzIO1pdfxq3x3uu6iedtj/DOQwS+IoQBn4ckgGPERVA7K0XonPUW6gyIuLlZFa4r1oY9Z9Ixm/3V4x3lV62+NJTXybmsxs7zYBqrF5yekqiP+K2dcDYC8YSGY2K8x25wzkAUvQGst9bn/ujxUYhu2lFyNJCD4OKOevri5+SBzzjV1qAlb+TBTUdbiIxVwqoV6FFrT6+kY4peULz6MKHmS/4Kyn+I7JbS9N2j0kc/GcurL7t4bmYnATfGc48N1zmlJua3j1uxlozh91GW22t7DtoaYCFTUS/oEuYY=",
        "x-forefront-antispam-report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:SA1PR12MB9546.namprd12.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230040)(376014)(1800799024)(366016)(38070700021); DIR:OUT; SFP:1101;",
        "x-ms-exchange-antispam-messagedata-chunkcount": "1",
        "x-ms-exchange-antispam-messagedata-0": "\n ZQRRoMKOfOQ7VGKtTm/D2zSTSke/zsQp06VthdsZw6xFA/qAhdrzjVNjeWlfnTxh5J2zzlu4+yYc3PAmjKg3jc9ehz4ghUnxQ8KxpDeLLvdDOIfiyiZnMT8f2b4nSVs/wWg5pu7gHKb7+jgyJzrM9wcfjPRdLo47M/XJhRqNap3ZzNcuKNelKWN5M12tJnIn3443TfSSAXU5zB73l10V3Vr5KpGb/EBsAcumxsUACVVuYalxx4yOl+ReoqswVFfNzr3bNxPZF874inqOigpDOXgwVOO5+QDSjyIyV5EmzlhAZaIHaetrTHiKs5uexewQhmL3sMMzyLsFtJzhhqyDEyiqHMCH3Rgl0vxJMCxs+jFJr6yfho8ubfvpunzPVKSzSuHYs9ypC+fsDp01Xle6NMdvVGLg4GQLjPxSNIgdtgTXfYhfHWpQ005TEgjcLTbDZeP7U6VKYQgs0X9h3JU1kFHNuMQ+cxIzaTKtHScHfe831avMA9DOu5qfIbmyPtqgDA65LAkBSNA7El/zdr8vTGlLbJTqhfo0vWJtipXemM0sn6pMNNs+QekyCTjGBYmV9E1y3ZBzL5v9Egn2e3OLQyx0HqIBKNpodZevpOkkeYDty88OtRSY+NdMv1jfX2OPmUwxmZyJtmdeVBu0meGz6WLkrrH26pslb/FhxE7xOi2Gx7r+8f1cbFFrOzM+84P2qK7DAx23GIf4mZcWlWOwNUWxQEzrpynv+3iNKByDPKf0V8V1EveHOUDM9UaQJ66eqfCqLeWDVcALMrlc81Ck13mPG3xxaCwzXrHVZSJH7icuxnlvVlFTyKEsum/yaGtjUCNkxau9l3kKVR6F/xUGf0LlcUNE57USYK7NIEz/C2wRnh+BGW+Lt39FL0pQDp7/Rory7psYkztl7Qkw6eMQYlZm66mA9oNyvFX+k15TdyUknqq897nXh1icq3/qybMxQjktRLCvSodsLg0kmRpwOvoAyED0VGwfYiY4FGma3ZdqyvVOxI0wymj1M1U4JItJ2jcW2nqGnQBAgQYID156CZopalUe4zaWPkWvy7NnV13fnAUBHxbjVZG1ZFApjqqo3FWWB7x/BIw/CAlXGXW/8clMDGe+CAeht9VmU8vk/fznlZVn0bWOesk1oef3752RBN1/Wp8ujsKibaEaCBmfwuCAHtfkKlpXBY+jBRu53e1QqW1N7QCYS+1uLVpjU113p4UlPLQjM/sth3CRHWcS2oWwPEpGC5OwpsxjIIZWvhaDGAbOfBJptd+MhSCg9URJjf0djumysdiVRd8hXLmRrqUAqG2WOpjRpJRBZNwXU73QqfoImpqlMae0rRYIkx6pEMAU1mWuwhbNOoTWcsD10zTvoXo6oSJrCbxQjtspOh2VDWaCHZYijBCKQqJ1zllyOW/APZ8+680fsvyv7NY8dqqy+tpjNyhLwzgjs28tuhvTaVF71iK6qXeTufUy/0VjbSJ3RWpFQ0FPCe/zPD+MSUfxOQMEXIK/s9rsNErs1oLpC+sAGQUYH6nOWiPGG+kh+IVSBEYRRMB3n/OSmHMJOa01U0r5L/wnCF10KORNQ6PVBLKLr+4YQQ4eIoPrBD2Wua2xRBu93Ydw6TLL0MTNCAsJt92aK3xDlFRiBI4PLjpFFsyP7w6tKDDU8GD13ibAsgwOkRBCDxw5Uj2vsMY0uregYXRX01a0V7XfKA8jFmRvqSamYnQZ64AhWYC5nTKvbiLKjKJQXZSTOaXJ7fxP1Q==",
        "Content-Type": "text/plain; charset=\"us-ascii\"",
        "Content-ID": "<26648702296EBB4682E93F82CB0B6FFD@namprd12.prod.outlook.com>",
        "Content-Transfer-Encoding": "quoted-printable",
        "MIME-Version": "1.0",
        "X-OriginatorOrg": "Nvidia.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Internal",
        "X-MS-Exchange-CrossTenant-AuthSource": "SA1PR12MB9546.namprd12.prod.outlook.com",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 79238dce-fbf0-4ca7-dee7-08de688c5631",
        "X-MS-Exchange-CrossTenant-originalarrivaltime": "10 Feb 2026 10:08:28.3773 (UTC)",
        "X-MS-Exchange-CrossTenant-fromentityheader": "Hosted",
        "X-MS-Exchange-CrossTenant-id": "43083d15-7273-40c1-b7db-39efd9ccc17a",
        "X-MS-Exchange-CrossTenant-mailboxtype": "HOSTED",
        "X-MS-Exchange-CrossTenant-userprincipalname": "\n cMSg+1T8zUXA47KwDL7NfB2LHErsUiSvYlbI/Q80n8w+OZPp30VYcDNDQveiikxlc5NYUvMhYwAcCmMpB/2kFQ==",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "PH7PR12MB9150",
        "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 patch fixes the following bugs:\n\n1) For SVE vector costs [sve_vec_cost], the JSON schema did not list the\ninherited members from the base structure, only the SVE specific ones. Updated\nthe schema to include all the members and regenerated the printing/parsing\nroutines.\n\n2) If someone uses -fdump-tuning-model with mcpu=olympus, it will have the flag\nfor dispatch scheduling enabled. Then, if someone uses that dump against any\n-mcpu other than olympus for tuning, it will ICE as we enable dispatch scheduling\nbut don't provide the data. Updated this to clear the flag if\ndispatch_constraints is NULL.\n\nSigned-off-by: Soumya AR <soumyaa@nvidia.com>\n\ngcc/ChangeLog:\n\n\t* config/aarch64/aarch64-json-schema.h: Include inherited members for\n\tSVE vector costs.\n\t* config/aarch64/aarch64-json-tunings-parser-generated.inc\n\t(parse_vec_costs_sve): Regenerate.\n\t* config/aarch64/aarch64-json-tunings-parser.cc\n\t(aarch64_load_tuning_params_from_json_string): Clear dispatch scheduling\n\tflag if dispatch_constraints is NULL.\n\t* config/aarch64/aarch64-json-tunings-printer-generated.inc\n\t(serialize_vec_costs_sve): Regenerate.\n---\n gcc/config/aarch64/aarch64-json-schema.h      | 20 +++++++++++++++++++\n .../aarch64-json-tunings-parser-generated.inc | 20 +++++++++++++++++++\n .../aarch64/aarch64-json-tunings-parser.cc    | 14 +++++++++++++\n ...aarch64-json-tunings-printer-generated.inc | 20 +++++++++++++++++++\n 4 files changed, 74 insertions(+)",
    "diff": "diff --git a/gcc/config/aarch64/aarch64-json-schema.h b/gcc/config/aarch64/aarch64-json-schema.h\nindex 32fb39300fe..9b6c5478d15 100644\n--- a/gcc/config/aarch64/aarch64-json-schema.h\n+++ b/gcc/config/aarch64/aarch64-json-schema.h\n@@ -176,6 +176,26 @@ static const char *schema_json = R\"json(\n \t\"store_cost\": \"int\"\n       },\n       \"sve\": {\n+\t\"int_stmt_cost\": \"int\",\n+\t\"fp_stmt_cost\": \"int\",\n+\t\"ld2_st2_permute_cost\": \"int\",\n+\t\"ld3_st3_permute_cost\": \"int\",\n+\t\"ld4_st4_permute_cost\": \"int\",\n+\t\"permute_cost\": \"int\",\n+\t\"reduc_i8_cost\": \"int\",\n+\t\"reduc_i16_cost\": \"int\",\n+\t\"reduc_i32_cost\": \"int\",\n+\t\"reduc_i64_cost\": \"int\",\n+\t\"reduc_f16_cost\": \"int\",\n+\t\"reduc_f32_cost\": \"int\",\n+\t\"reduc_f64_cost\": \"int\",\n+\t\"store_elt_extra_cost\": \"int\",\n+\t\"vec_to_scalar_cost\": \"int\",\n+\t\"scalar_to_vec_cost\": \"int\",\n+\t\"align_load_cost\": \"int\",\n+\t\"unalign_load_cost\": \"int\",\n+\t\"unalign_store_cost\": \"int\",\n+\t\"store_cost\": \"int\",\n \t\"clast_cost\": \"int\",\n \t\"fadda_f16_cost\": \"int\",\n \t\"fadda_f32_cost\": \"int\",\ndiff --git a/gcc/config/aarch64/aarch64-json-tunings-parser-generated.inc b/gcc/config/aarch64/aarch64-json-tunings-parser-generated.inc\nindex 882d8f79975..7943dea6ece 100644\n--- a/gcc/config/aarch64/aarch64-json-tunings-parser-generated.inc\n+++ b/gcc/config/aarch64/aarch64-json-tunings-parser-generated.inc\n@@ -175,6 +175,26 @@ template <typename T>\n static void\n parse_vec_costs_sve (const json::object *jo, T &sve)\n {\n+  PARSE_INTEGER_FIELD (jo, \"int_stmt_cost\", sve.int_stmt_cost);\n+  PARSE_INTEGER_FIELD (jo, \"fp_stmt_cost\", sve.fp_stmt_cost);\n+  PARSE_INTEGER_FIELD (jo, \"ld2_st2_permute_cost\", sve.ld2_st2_permute_cost);\n+  PARSE_INTEGER_FIELD (jo, \"ld3_st3_permute_cost\", sve.ld3_st3_permute_cost);\n+  PARSE_INTEGER_FIELD (jo, \"ld4_st4_permute_cost\", sve.ld4_st4_permute_cost);\n+  PARSE_INTEGER_FIELD (jo, \"permute_cost\", sve.permute_cost);\n+  PARSE_INTEGER_FIELD (jo, \"reduc_i8_cost\", sve.reduc_i8_cost);\n+  PARSE_INTEGER_FIELD (jo, \"reduc_i16_cost\", sve.reduc_i16_cost);\n+  PARSE_INTEGER_FIELD (jo, \"reduc_i32_cost\", sve.reduc_i32_cost);\n+  PARSE_INTEGER_FIELD (jo, \"reduc_i64_cost\", sve.reduc_i64_cost);\n+  PARSE_INTEGER_FIELD (jo, \"reduc_f16_cost\", sve.reduc_f16_cost);\n+  PARSE_INTEGER_FIELD (jo, \"reduc_f32_cost\", sve.reduc_f32_cost);\n+  PARSE_INTEGER_FIELD (jo, \"reduc_f64_cost\", sve.reduc_f64_cost);\n+  PARSE_INTEGER_FIELD (jo, \"store_elt_extra_cost\", sve.store_elt_extra_cost);\n+  PARSE_INTEGER_FIELD (jo, \"vec_to_scalar_cost\", sve.vec_to_scalar_cost);\n+  PARSE_INTEGER_FIELD (jo, \"scalar_to_vec_cost\", sve.scalar_to_vec_cost);\n+  PARSE_INTEGER_FIELD (jo, \"align_load_cost\", sve.align_load_cost);\n+  PARSE_INTEGER_FIELD (jo, \"unalign_load_cost\", sve.unalign_load_cost);\n+  PARSE_INTEGER_FIELD (jo, \"unalign_store_cost\", sve.unalign_store_cost);\n+  PARSE_INTEGER_FIELD (jo, \"store_cost\", sve.store_cost);\n   PARSE_INTEGER_FIELD (jo, \"clast_cost\", sve.clast_cost);\n   PARSE_INTEGER_FIELD (jo, \"fadda_f16_cost\", sve.fadda_f16_cost);\n   PARSE_INTEGER_FIELD (jo, \"fadda_f32_cost\", sve.fadda_f32_cost);\ndiff --git a/gcc/config/aarch64/aarch64-json-tunings-parser.cc b/gcc/config/aarch64/aarch64-json-tunings-parser.cc\nindex 59c745e347e..9b7bdf535c9 100644\n--- a/gcc/config/aarch64/aarch64-json-tunings-parser.cc\n+++ b/gcc/config/aarch64/aarch64-json-tunings-parser.cc\n@@ -496,6 +496,20 @@ aarch64_load_tuning_params_from_json_string (const char *json_string,\n     }\n \n   parse_tunings (jo, *tune);\n+\n+  /* dispatch_constraints are not represented in JSON tunings.  If the JSON\n+     sets DISPATCH_SCHED in extra_tuning_flags but the base model does not\n+     provide dispatch_constraints, clear the flag to avoid an assertion\n+     failure later.  */\n+  if ((tune->extra_tuning_flags & AARCH64_EXTRA_TUNE_DISPATCH_SCHED)\n+      && tune->dispatch_constraints == nullptr)\n+    {\n+      warning (0, \"JSON tuning enables dispatch scheduling but \"\n+\t       \"%<dispatch_constraints%> is not available; \"\n+\t       \"disabling dispatch scheduling\");\n+      tune->extra_tuning_flags &= ~AARCH64_EXTRA_TUNE_DISPATCH_SCHED;\n+    }\n+\n   return;\n }\n \ndiff --git a/gcc/config/aarch64/aarch64-json-tunings-printer-generated.inc b/gcc/config/aarch64/aarch64-json-tunings-printer-generated.inc\nindex 498be96ff33..e619a39749d 100644\n--- a/gcc/config/aarch64/aarch64-json-tunings-printer-generated.inc\n+++ b/gcc/config/aarch64/aarch64-json-tunings-printer-generated.inc\n@@ -209,6 +209,26 @@ serialize_vec_costs_sve (const T &sve)\n {\n   auto sve_obj = std::make_unique<json::object> ();\n \n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"int_stmt_cost\", sve.int_stmt_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"fp_stmt_cost\", sve.fp_stmt_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"ld2_st2_permute_cost\", sve.ld2_st2_permute_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"ld3_st3_permute_cost\", sve.ld3_st3_permute_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"ld4_st4_permute_cost\", sve.ld4_st4_permute_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"permute_cost\", sve.permute_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"reduc_i8_cost\", sve.reduc_i8_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"reduc_i16_cost\", sve.reduc_i16_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"reduc_i32_cost\", sve.reduc_i32_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"reduc_i64_cost\", sve.reduc_i64_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"reduc_f16_cost\", sve.reduc_f16_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"reduc_f32_cost\", sve.reduc_f32_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"reduc_f64_cost\", sve.reduc_f64_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"store_elt_extra_cost\", sve.store_elt_extra_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"vec_to_scalar_cost\", sve.vec_to_scalar_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"scalar_to_vec_cost\", sve.scalar_to_vec_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"align_load_cost\", sve.align_load_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"unalign_load_cost\", sve.unalign_load_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"unalign_store_cost\", sve.unalign_store_cost);\n+  SERIALIZE_INTEGER_FIELD (sve_obj, \"store_cost\", sve.store_cost);\n   SERIALIZE_INTEGER_FIELD (sve_obj, \"clast_cost\", sve.clast_cost);\n   SERIALIZE_INTEGER_FIELD (sve_obj, \"fadda_f16_cost\", sve.fadda_f16_cost);\n   SERIALIZE_INTEGER_FIELD (sve_obj, \"fadda_f32_cost\", sve.fadda_f32_cost);\n",
    "prefixes": []
}