Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/1.1/patches/2227983/?format=api
{ "id": 2227983, "url": "http://patchwork.ozlabs.org/api/1.1/patches/2227983/?format=api", "web_url": "http://patchwork.ozlabs.org/project/gcc/patch/AM6PR08MB4280964EBB08DC21A1814110A92B2@AM6PR08MB4280.eurprd08.prod.outlook.com/", "project": { "id": 17, "url": "http://patchwork.ozlabs.org/api/1.1/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 }, "msgid": "<AM6PR08MB4280964EBB08DC21A1814110A92B2@AM6PR08MB4280.eurprd08.prod.outlook.com>", "date": "2026-04-24T16:27:53", "name": "RISC-V: Missed bit manipulation on RISC-V [PR123884]", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "538359d8c201791dc6ada0552c25ce7934d1a22e", "submitter": { "id": 92320, "url": "http://patchwork.ozlabs.org/api/1.1/people/92320/?format=api", "name": "Milan Tripkovic", "email": "Milan.Tripkovic@rt-rk.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/gcc/patch/AM6PR08MB4280964EBB08DC21A1814110A92B2@AM6PR08MB4280.eurprd08.prod.outlook.com/mbox/", "series": [ { "id": 501392, "url": "http://patchwork.ozlabs.org/api/1.1/series/501392/?format=api", "web_url": "http://patchwork.ozlabs.org/project/gcc/list/?series=501392", "date": "2026-04-24T16:27:53", "name": "RISC-V: Missed bit manipulation on RISC-V [PR123884]", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/501392/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2227983/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2227983/checks/", "tags": {}, "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=rt-rk.com header.i=@rt-rk.com header.a=rsa-sha256\n header.s=s2021 header.b=jJskF/ex;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org\n (client-ip=38.145.34.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=rt-rk.com header.i=@rt-rk.com header.a=rsa-sha256\n header.s=s2021 header.b=jJskF/ex", "sourceware.org;\n dmarc=pass (p=none dis=none) header.from=rt-rk.com", "sourceware.org; spf=pass smtp.mailfrom=rt-rk.com", "server2.sourceware.org;\n arc=pass smtp.remote-ip=205.220.185.213" ], "Received": [ "from vm01.sourceware.org (vm01.sourceware.org [38.145.34.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 4g2JL95mQHz1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 25 Apr 2026 02:28:32 +1000 (AEST)", "from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 9778E4BB5925\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 24 Apr 2026 16:28:30 +0000 (GMT)", "from mx08-0061a602.pphosted.com (mx08-0061a602.pphosted.com\n [205.220.185.213])\n by sourceware.org (Postfix) with ESMTPS id 6497A4BB591E;\n Fri, 24 Apr 2026 16:27:58 +0000 (GMT)", "from pps.filterd (m0278994.ppops.net [127.0.0.1])\n by mx07-0061a602.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 63O5oFcZ2821108; Fri, 24 Apr 2026 16:27:57 GMT", "from am0pr83cu005.outbound.protection.outlook.com\n (mail-westeuropeazon11020108.outbound.protection.outlook.com [52.101.69.108])\n by mx07-0061a602.pphosted.com (PPS) with ESMTPS id 4dq8nx2g4p-1\n (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT);\n Fri, 24 Apr 2026 16:27:56 +0000 (GMT)", "from AM6PR08MB4280.eurprd08.prod.outlook.com (2603:10a6:20b:b6::19)\n by AS8PR08MB8736.eurprd08.prod.outlook.com (2603:10a6:20b:562::14)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.22; Fri, 24 Apr\n 2026 16:27:53 +0000", "from AM6PR08MB4280.eurprd08.prod.outlook.com\n ([fe80::2ec0:7db:a864:9376]) by AM6PR08MB4280.eurprd08.prod.outlook.com\n ([fe80::2ec0:7db:a864:9376%4]) with mapi id 15.20.9818.033; Fri, 24 Apr 2026\n 16:27:53 +0000" ], "DKIM-Filter": [ "OpenDKIM Filter v2.11.0 sourceware.org 9778E4BB5925", "OpenDKIM Filter v2.11.0 sourceware.org 6497A4BB591E" ], "DMARC-Filter": "OpenDMARC Filter v1.4.2 sourceware.org 6497A4BB591E", "ARC-Filter": "OpenARC Filter v1.0.0 sourceware.org 6497A4BB591E", "ARC-Seal": [ "i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1777048079; cv=pass;\n b=V8NG5NFydniO+nLItaFCmOUQHzfcT108LFOj7Wi792qItqLpEQVOBs8IP98of9qV4Zs89enN7ui9ROt9dKauxoequz6+4nrHPM4PprKWBEC8WscBOAaB5sSMBrdASOijPtNGytJPMu6oX+l7/Nl1JdgTYgMWT5VpHQuk8RQbke8=", "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=oDPA3FY0ZYCt05YeJ4RgZrqgguP+3lohl/RZOLnyH7tlTjsxgivEXQ0MwyYACLjBM0GVZw/IxnAz2Hx+a7UGs6qaYDv9HNYSUV7JktvGOnWdLO4EEe7M3GhVIhwKOiK+449Hbkz5yx7Q7mdhzMAdB9SIHYMzLxtYK27sllF2m+FHkjA2qJq25B8G19dn0mYB44bHoGWtqa3K45YKGGqgfihQTSrZoCHYmopjC1xqF9b0hOC4K3hgZKlUDlyMJVPTdzXlgGQR2KnqDxVhquvV8R/cuMJxe8dnIgmsjlQ4jKAslEHbMHTy6BpyJC244OUMfncWn0gnuNFJ9Xyvbv/6xw==" ], "ARC-Message-Signature": [ "i=2; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777048079; c=relaxed/simple;\n bh=V762H3Ev2NiWAHlHW+4+Ot7x2cs/+TJHELF5BHncC7k=;\n h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version;\n b=uI/hWyJL0ygMRdXL5cB/SpYg7ryQ1fw/8c9EkFpvMnDZiyplFECwVYj10ojirIQ71HC/UComVSUPEWpKhcMWTCeej47ibk7qyAxWu6wa3YEgDbmZxfGqHlkpHUSOSvGdPppkTZvKB3lUOSHbsQK88buRmCZJz7EGQiMOuxzY8f8=", "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=RsgUH+QA34ahod78OKSw9QBUU0WdeT8I7AFhTgkNGHU=;\n b=NMa4aK4EjPWg9EQHr+0XorFjQsWsvu0XxUGf35SmoW7F0wCMY2QiyhnPMPWCp3HN48UECHIz9Y/t1tIuvMGTXVKIwNJvpikOHtzcY1oRMbTKwgreEVMqyhZVN9fR3PReyhd1MJw8kPc6q05tWDU0m0vdnLDiN3UIHsucaC/AUxVKnrWjbHR2V9PlxCzwOumhDEaJo+rYab9CyTBpakGll8x7hKnYMMQDREE/H6A69ENBkGvqN8ABGBkmTsfgDlkCws93JHujCzN3qRxU/EE8TwAxALiUiYeNoi5dsxERh76cHVYdfVKl7LQ87AZoCY1qT1z5XmR5BRzaAJE5aY5PhQ==" ], "ARC-Authentication-Results": [ "i=2; server2.sourceware.org", "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=rt-rk.com; dmarc=pass action=none header.from=rt-rk.com;\n dkim=pass header.d=rt-rk.com; arc=none" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=rt-rk.com; h=cc\n :content-type:date:from:message-id:mime-version:subject:to; s=\n s2021; bh=RsgUH+QA34ahod78OKSw9QBUU0WdeT8I7AFhTgkNGHU=; b=jJskF/\n extnztrFq4cOud7jA//wSrJjR/BoYPI8VPM4jWNNz2v96qe0t0jvVpIfTZzuBGcE\n puH8n1j8tqSFOH1sYxkI2ROEmhbtI90Mz7B/kWACNDXxMlX4S3rH30dNkM+6QiKt\n B63ucZCUvR8iTOlOh8vzuzLHUCm10vyeiVGq55C+mr1pKdJcGY64QSFWEQugnVt+\n xfd3yDXUcXMohwVBvSHMDmY9yFSl3ICpauleYbPuCkTNyUMIm+ewHbUZIiQnEHxV\n elhaL8oDsvsuANsfmx4fVdise2T2NViq1WvwFVMqsOd/pKKtLtjm7eNbQ1XxGmBV\n PAHghhmfOFaChgZw==", "From": "Milan Tripkovic <Milan.Tripkovic@rt-rk.com>", "To": "\"gcc-patches@gcc.gnu.org\" <gcc-patches@gcc.gnu.org>, \"law@gcc.gnu.org\"\n <law@gcc.gnu.org>", "CC": "Dusan Stojkovic <Dusan.Stojkovic@rt-rk.com>", "Subject": "[PATCH] RISC-V: Missed bit manipulation on RISC-V [PR123884]", "Thread-Topic": "[PATCH] RISC-V: Missed bit manipulation on RISC-V [PR123884]", "Thread-Index": "AQHc0/pDv3D3ueG6y0Gn3fXqWTJgRw==", "Date": "Fri, 24 Apr 2026 16:27:53 +0000", "Message-ID": "\n <AM6PR08MB4280964EBB08DC21A1814110A92B2@AM6PR08MB4280.eurprd08.prod.outlook.com>", "Accept-Language": "en-US", "Content-Language": "en-US", "X-MS-Has-Attach": "yes", "X-MS-TNEF-Correlator": "", "msip_labels": "", "x-ms-publictraffictype": "Email", "x-ms-traffictypediagnostic": "AM6PR08MB4280:EE_|AS8PR08MB8736:EE_", "x-ms-office365-filtering-correlation-id": "01cc5677-6bda-444f-57a4-08dea21e6f8c", "x-ms-exchange-senderadcheck": "1", "x-ms-exchange-antispam-relay": "0", "x-microsoft-antispam": "BCL:0;\n ARA:13230040|1800799024|366016|376014|19092799006|6049299003|38070700021|4053099003|56012099003|8096899003|18002099003;", "x-microsoft-antispam-message-info": "\n 8zaDWXPK3YlKV+K7nwBUC+6NORbBvOPJjX4sJ7gLUbUNgzhGTnWAr3VBaUE1EC9UC5AlibeA2ZFViYMQikCLT9TqBYHmIeQRyqROaGluPMRoXE4go39wYn2YWG6MhMYSSo7ugIcYSZf1Vf/TQNfIQ+rDDurcoYuY6Ghhtlm6NT0ayFzVcxDTzf0CLCQccXnB+6ACGTvx7GNhhP7WWr44NIWE/x8gTDJhQWOg79hw7uWyzb6zYf7fJ0HI6SsdLQ+biQ9QqJu5gEP7czYSh+mG74ioCOXRqhn5U3DJNcqpxL0E55kNod3MMsVCTVPn2xr1qI9KAl2yNmAjpOqZ6ar1+jpt16Aj8CpkixbF2pLwWYuwEYCJ5mWi/ulEK7VZhSddnLvS2J3P5nLPySWyNOC/uD69KPWdZCqROzU5U2S0DTNNlOwDpolrMHQpn7N5kU0ZFZ4AqEsd3y/64EtATuu6VW30pIO4xD+r7KDXfvlZnMPmQ3JKreXVcphW00w51HPFTvybLGFiILuy1uGDK9RzKE3+suTbmXaxQuFMFI1WCx7cdHLdBSSs6bBf8s/62PXFVHgrzkZCTeFcHpSD1X5VXd16n+1Ci8rzjK4PP5HmJ1W2NVwro9oUWFgQQHoSbbdXIlQwb5c7Mh6oCRNbwUt572rZlKAyURn480zSJijMgBafmNBH7Zx4FtJLqRLXJcf/bonSdubbBoyiXBpPc1k/Q9bqZ39Mv9fe0/RV1dVmhw7bp58sZrgxiblJkoHW6y90", "x-forefront-antispam-report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:AM6PR08MB4280.eurprd08.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230040)(1800799024)(366016)(376014)(19092799006)(6049299003)(38070700021)(4053099003)(56012099003)(8096899003)(18002099003);\n DIR:OUT; SFP:1102;", "x-ms-exchange-antispam-messagedata-chunkcount": "1", "x-ms-exchange-antispam-messagedata-0": "=?utf-8?q?eGlT3lKj8EYqWFOng/FWom1eCd7v?=\n\t=?utf-8?q?iwEK/OgxQBCILYrClQL36DgIwKm3z4NtojadvGOe2GWPVd4C5PWmuzWXBBIR+jboR?=\n\t=?utf-8?q?/ZBRXJaHtKjhXf2sIb/sqyWKb3cqpQbweSHA1BE0Ks9a63vW5gLHQdLnNMlHdUBw9?=\n\t=?utf-8?q?pgx1tE2Esv4Xx5wrBtKSi2f4Mzfd8RIABfK00HgRTqn97e4FGq5Y7kkpVg9Eu27PE?=\n\t=?utf-8?q?5pYY/UPDHv3c7D5r3K+U1Cc9OcjNLDCUgkuwqsEkbzLYgBTX3GIaOguZCWFiKwH96?=\n\t=?utf-8?q?S0JjDJ7AZrAGrIBYkDk4pTyl0jbI4gCgJ/JB0EKZe3A8UG16+PjJJS4OMVyQYHLNx?=\n\t=?utf-8?q?nzRpdi5V4N/mj/4Q1hmbY40LeRdStjj8e6a+IBaPZUY8CQAZaLKoux/uff5J3fHm1?=\n\t=?utf-8?q?Zs5jmqJJ7h0Q9S9H1/JPehjKByeClbB6HjbpjhQuSlwjncXeCUSnGaf5pUP+UaJ2p?=\n\t=?utf-8?q?QXP+y51uOyhELQ94Gg04m4AOVTNUNPDwhSgqVTiOKbGn0EE9R8trgarg1RNe3TLBa?=\n\t=?utf-8?q?daE46iACOD7oZAlcmCo/xaRwV3kH57Sh9QfqdIEW4PQCeX1p36rAILIjunwk7GUR7?=\n\t=?utf-8?q?9Hy2ftn+YGRx4V8ZMKDHp+FvgZNNEKy4oK2MeCydqdGY+SFxfC+y23yRbVyzetUqO?=\n\t=?utf-8?q?/SlFr/ggAQA5yDh7j2IgHAgOl7uC1DlZAZFkL/Zy/1KrAcDcwV8dImbOYiePk7Wm4?=\n\t=?utf-8?q?Y65cMFzjeisGWREcwpASJEuE7jluqRCttk4V4f5YmAiUmnbhVmnurqasrhGITkdOo?=\n\t=?utf-8?q?mK0efSDlvTl02pB4fa+gKzbGnp61iAYjt9xVM6EANp1UddcHlhKjdoThU8WinmZNW?=\n\t=?utf-8?q?4ufiuI7X+SoArjWJ8/lRkrHUp2MT3490NVbYbEJlfLv0dMSwn1FvYbfqt1hS/7ebJ?=\n\t=?utf-8?q?+cBwCMDqaqHbze0oySlSseGyM28Tn0N7JEvHc+GGrxtZDPfweizg1/z5befqRiGLl?=\n\t=?utf-8?q?nnZmeX+ZlbegcxT/8Ds7bSmtrEQdss92CtmHXO+AttFLrgMHtcaMahicMkcaf1oyl?=\n\t=?utf-8?q?/+Ep2BldLVxUF9y9m1pqA+U9r+HpocCIhPo8le8XJUs6AEUNaYnU3X1/OMjO/A1AD?=\n\t=?utf-8?q?QHXICMAFkgB78zsWo/IZagawcPr7hdKx7nzrI6w3ASidp1ExNupsO8bgkyZocPh1s?=\n\t=?utf-8?q?E28Ykn1ZGQ7yIwgPjz3oi5hn1GqDgJ+PkFYpTukRGHmW67qbAu64loIiBA7oJhzKY?=\n\t=?utf-8?q?MVFSo/mpAQ6osynyNQ6Cw23EPn6izBQY2l3pgbY2XUZXgEIwcvtjDnrC4xbKNTJzS?=\n\t=?utf-8?q?DpzS9Oc1ILdn5hXJL+18SKnS0u3cpynL95YxhDtp8FUOSsZyy4cIYCyHaBH08yqXW?=\n\t=?utf-8?q?7sZSm3+vlWCWmSsNi4lRdD+sK3QqRN6VAtofFjtOvXBZM5iWR5x/1pM5iOfF3k4cS?=\n\t=?utf-8?q?PUqWeh1fn49EKwUBpnkpey2htUqvaZIoxJ4dpBV0LtpCnHmNJ3QiskZz4GXnt5ln2?=\n\t=?utf-8?q?Ir5dve2HuAc7p4qwui2lDCTnr89nKMm5HRDsQu0n19w7DhQJ/3Vtb/cIOCE33NHfr?=\n\t=?utf-8?q?S3zfLz/aH2WNg1UILnkIlGtVSeY6OW7DIohIqT5IGIKsHuT/XI27VDjDQzNtz1KXX?=\n\t=?utf-8?q?3r+ZpDPsrshM0IiIcLvHEUsFR6s7jrkG1Lx46YoagqKNU9bXOSuKcMWTJM2h1J9y8?=\n\t=?utf-8?q?LNQ0HyzR+IFSqvMzI5JR5kF3Q7zv+jzQ=3D=3D?=", "Content-Type": "multipart/mixed;\n boundary=\"_004_AM6PR08MB4280964EBB08DC21A1814110A92B2AM6PR08MB4280eurp_\"", "MIME-Version": "1.0", "X-Exchange-RoutingPolicyChecked": "\n WgRpg7rkzoqKB2HEDEr3BRYfjNgsoh+Nt76DigCQsNIidlFWXE+cnqxX/fti3Ua9S+mCsZ3ZgdwV3DF4W6DLqSPmyQBMAq4Mha9HRqsJdW2fi/9nBl53GnMOGzzZGZVtFsr/8pf9jR2mF1tqMX7fGRAj3aRozVtZXpRF5zbXji6uzcbTMko+CxguAYUDUVLP7gjYhqhMSC3ofDBy7CyHf3xpnmejcggDeSqmdGCpcxU3JQ4OOpdI2UkN87//FVWFPySpJICSUY9WAb5LtCiHiheIr9rDklLUafBPG06IsxxOfgbWmvx59igDObvQ3oDi3LUF93LuBhkEx2Q+mbZphQ==", "X-OriginatorOrg": "rt-rk.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-AuthSource": "AM6PR08MB4280.eurprd08.prod.outlook.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 01cc5677-6bda-444f-57a4-08dea21e6f8c", "X-MS-Exchange-CrossTenant-originalarrivaltime": "24 Apr 2026 16:27:53.6975 (UTC)", "X-MS-Exchange-CrossTenant-fromentityheader": "Hosted", "X-MS-Exchange-CrossTenant-id": "9bc3ed46-a3ca-43f0-b84e-9a557209a7df", "X-MS-Exchange-CrossTenant-mailboxtype": "HOSTED", "X-MS-Exchange-CrossTenant-userprincipalname": "\n nlVBYdRyY6wKe7wTE+oeJvcrKMURhbAKhr28ed+HroBdBJ5w7kgURq55WSaRTgaHuzQ8F+kGYmfpXdlH9Ca1MyqOe0NramouHzvHRBbG3oY=", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "AS8PR08MB8736", "X-Proofpoint-ORIG-GUID": "I-O6SID0U0gRdgFL2AYZuQwy1y8GhYS2", "X-Authority-Analysis": "v=2.4 cv=QPlYgALL c=1 sm=1 tr=0 ts=69eb9a0c cx=c_pps\n a=Bop8FmdBXkBZtennidDHEQ==:117 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19\n a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=A5OVakUREuEA:10\n a=VkNPw1HP01LnGYTKEx00:22 a=l8piMy5ppB5XiWB7et-e:22 a=ybZebMIEOSTZGb8Qf0aw:22\n a=wT45_P3iAAAA:8 a=jXuQHcAsHH7lK8CqaSQA:9 a=QEXdDO2ut3YA:10\n a=Ix7ccVzOkkdQnGk7eCoA:9 a=TVSlRYQdgzvfr3f8:21 a=frz4AuCg-hUA:10\n a=_W_S_7VecoQA:10 a=zrZoEA0Cg5-ig_UDXccA:9 a=m-Z_27IZkzAA:10\n a=RJRP_u8kRGsxlTjV8B5_:22", "X-Proofpoint-GUID": "I-O6SID0U0gRdgFL2AYZuQwy1y8GhYS2", "X-Proofpoint-Spam-Details-Enc": "AW1haW4tMjYwNDI0MDE1OSBTYWx0ZWRfX0YOcblZEmQa2\n 3H8fpLuvY32Wo52Qi4gifK6GMACik2LojvVrHM9OJOM4FPhc8PPW6RVdcvbyvkbKHVoPpHBrsAX\n aid9u47/1FYpOYAkCp4jN52Ij7Q+tezvZqPL+jX7DxRUJVcHBvOKTuDugO0BtH0qq8CgDeVF4Qn\n 57dsTvWIQvawWyzL49HdTqivU5a5WyWCxEHbP2ZYRWhQPQKd4wWvzci5GggGdp36vzKfNFqrDLm\n 3C9BkK7XIp1JDZHl7JAEloW8Rf1ijz/zw6HaoiN7qwWP5L/k4RouxW+c2n6hljRBxCMFKGUzWX0\n +ggCp1wdgzHuFZBuMWwrNhlLChSlyG+qPqt0/9RIZXUxtGORzZ8ftgsTYPvgDFt5nhw72ruqTGS\n m1Feu4vl7nFHL0g/tUAp7Ix0NYbB7BLJJwYsNIODIpR+Ps/lxkA3wVHZeKTB9/qJvOqz/WuXc/R\n 85+cAxVu72fb4eEg8DA==", "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 implements new patterns for bclr, binv and bset,\nwhich fix the problem with bad code generation in\nPR123884.\nfoo2before:\n li a5,1\n sllw a5,a5,a1\n or a0,a0,a5\n Ret\n\nFoo2after:\n bset a0, a0, a1\n sext.w a0, a0\n Ret\n\n2026-04-24 Milan Tripkovic <Milan.Tripkovic@rt-rk.com>\n\ngcc/ChangeLog:\n\n * config/riscv/bitmanip.md (<code>_sextw_pair): new pattern for binv and bset\n (bclr_sextw_pair): new pattern for bclr\n\ngcc/testsuite/ChangeLog:\n\n * gcc.target/riscv/pr123884-a.c: New test for new pattern\n * gcc.target/riscv/pr123884-b.c: New test for new pattern\n * gcc.target/riscv/pr123884-c.c: New test for new pattern\n\n\n\n\nCONFIDENTIALITY: The contents of this e-mail are confidential and intended only for the above addressee(s). If you are not the intended recipient, or the person responsible for delivering it to the intended recipient, copying or delivering it to anyone else or using it in any unauthorized manner is prohibited and may be unlawful. If you receive this e-mail by mistake, please notify the sender and the systems administrator at straymail@rt-rk.com immediately.", "diff": "diff --git a/gcc/config/riscv/bitmanip.md b/gcc/config/riscv/bitmanip.md\nindex 0d16d79df..877274773 100644\n--- a/gcc/config/riscv/bitmanip.md\n+++ b/gcc/config/riscv/bitmanip.md\n@@ -737,6 +737,59 @@\n { operands[2] = GEN_INT (INTVAL (operands[2]) & 0x1f); }\n [(set_attr \"type\" \"bitmanip\")])\n \n+;;Patterns for binv, bset and bclr with sign_extend\n+(define_insn_and_split \"<code>_sextw_pair\"\n+ [(set (match_operand:DI 0 \"register_operand\" \"=r\")\n+ (any_or:DI\n+ (sign_extend:DI\n+ (ashift:SI\n+ (const_int 1)\n+ (subreg:QI\n+ (match_operand:DI 1 \"register_operand\" \"r\") 0)))\n+ (match_operand:DI 2 \"register_operand\" \"r\")))]\n+ \"TARGET_64BIT && TARGET_ZBS\"\n+ \"#\"\n+ \"&& !reload_completed\"\n+ [\n+ (set (match_dup 3)\n+ (any_or:DI\n+ (ashift:DI (const_int 1)\n+ (subreg:QI (match_dup 1) 0))\n+ (match_dup 2)))\n+ (set (match_dup 0)\n+ (sign_extend:DI (subreg:SI (match_dup 3) 0)))\n+ ]\n+ {\n+ operands[3] = gen_reg_rtx (DImode);\n+ }\n+)\n+(define_insn_and_split \"bclr_sextw_pair\"\n+ [(set (match_operand:DI 0 \"register_operand\" \"=r\")\n+ (and:DI\n+ (not:DI\n+ (sign_extend:DI\n+ (ashift:SI\n+ (const_int 1)\n+ (subreg:QI\n+ (match_operand:DI 1 \"register_operand\" \"r\") 0))))\n+ (match_operand:DI 2 \"register_operand\" \"r\")))]\n+ \"TARGET_64BIT && TARGET_ZBS\"\n+ \"#\"\n+ \"!reload_completed\"\n+ [\n+ (set (match_dup 3)\n+ (and:DI\n+ (rotate:DI (const_int -2)\n+ (subreg:QI (match_dup 1) 0))\n+ (match_dup 2)))\n+ (set (match_dup 0)\n+ (sign_extend:DI (subreg:SI (match_dup 3) 0)))\n+ ]\n+ {\n+ operands[3] = gen_reg_rtx (DImode);\n+ }\n+ )\n+\n ;; Similarly two patterns for AND generating bclr to\n ;; manipulate a bit in a register\n (define_insn_and_split \"\"\ndiff --git a/gcc/testsuite/gcc.target/riscv/pr123884-a.c b/gcc/testsuite/gcc.target/riscv/pr123884-a.c\nnew file mode 100644\nindex 000000000..b3bcc8355\n--- /dev/null\n+++ b/gcc/testsuite/gcc.target/riscv/pr123884-a.c\n@@ -0,0 +1,11 @@\n+/* { dg-do compile } */\n+/* { dg-options \"-march=rv64gc_zbs -mabi=lp64d -O2\" } */\n+ \n+int foo(int dst, int a)\n+{\n+ dst ^= (1 << a);\n+ return dst;\n+}\n+ \n+/* { dg-final { scan-assembler-times \"binv\" 1 } } */\n+/* { dg-final { scan-assembler-times \"sext.w\" 1 } } */\n\\ No newline at end of file\ndiff --git a/gcc/testsuite/gcc.target/riscv/pr123884-b.c b/gcc/testsuite/gcc.target/riscv/pr123884-b.c\nnew file mode 100644\nindex 000000000..6e7021ce3\n--- /dev/null\n+++ b/gcc/testsuite/gcc.target/riscv/pr123884-b.c\n@@ -0,0 +1,12 @@\n+/* { dg-do compile } */\n+/* { dg-options \"-march=rv64gc_zbs -mabi=lp64d -O2\" } */\n+ \n+int x264_macroblock_encode_p8x8(int dst, int a)\n+{\n+ dst &= ~(1 << a);\n+ return dst;\n+}\n+\n+/* { dg-final { scan-assembler-times \"bclr\" 1 } } */\n+/* { dg-final { scan-assembler-times \"sext.w\" 1 } } */\n+ \n\\ No newline at end of file\ndiff --git a/gcc/testsuite/gcc.target/riscv/pr123884-c.c b/gcc/testsuite/gcc.target/riscv/pr123884-c.c\nnew file mode 100644\nindex 000000000..d7ad4dbc8\n--- /dev/null\n+++ b/gcc/testsuite/gcc.target/riscv/pr123884-c.c\n@@ -0,0 +1,11 @@\n+/* { dg-do compile } */\n+/* { dg-options \"-march=rv64gc_zbs -mabi=lp64d -O2\" } */\n+ \n+int foo2(int dst, int a)\n+{\n+ dst |= (1 << a);\n+ return dst;\n+}\n+ \n+/* { dg-final { scan-assembler-times \"bset\" 1 } } */\n+/* { dg-final { scan-assembler-times \"sext.w\" 1 } } */\n\\ No newline at end of file\n", "prefixes": [] }