From patchwork Tue Jul 11 21:57:08 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Faust X-Patchwork-Id: 1806527 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=Q5EtqW4w; dkim-atps=neutral Received: from server2.sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4R0vvJ3kl4z20Ph for ; Wed, 12 Jul 2023 08:00:44 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 86D9E386C48B for ; Tue, 11 Jul 2023 22:00:42 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 86D9E386C48B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1689112842; bh=q9CrfYrN9FRkRqt3F7ay738iirdGhwbTG2Kwi5naa70=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=Q5EtqW4ws3uOeoMs5N08WT6zB2q2taK7sweEE5FPAdMO6NC4VWsntR7dMw+U7kA2h dNSIKJyh6WsoaEljB7e+v7K+Gl2+Mm9XDZvkxOERMqtj1An9AFPE6I6gDikpr5jhq6 UZx5HX9sibwic4YRBIYp0c86fk1Owj/F0xoqYbMA= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id 7EADA3858D20 for ; Tue, 11 Jul 2023 21:59:03 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7EADA3858D20 Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 36BIDFqx018370; Tue, 11 Jul 2023 21:59:03 GMT Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3rpydtwykw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 11 Jul 2023 21:59:02 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 36BLw8RD027105; Tue, 11 Jul 2023 21:58:48 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2046.outbound.protection.outlook.com [104.47.56.46]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3rpx85hhuw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 11 Jul 2023 21:58:48 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lsU7gg3pGbDYwzEmRMoXQYwCL9dzb9IzzdXAnkPoGSmVfaDiIONdgDka3olYzVXMFsBLmi+sJjoGiLMCuSU9gHUY/U76K0lfD2l3GcuzyxkAIX8JycZMP6XWJGNwD+myI44/GNZvnp2ePF6MgogqVA3uVKylC1TyVZ7f2R+kA9h7Fum5x0eo0TfwJnO5V51jrvh3GMGKF07MQO5hGbnowPP/c/Id5PDdUCrb52gPLaw208JPpxv0NJX49r+pTcrN1Q/bz9slIj8XiI85jRfvrQRZsmphEbAhYrAkkrA99NuUw9jmPz5eRWDmAKRwQgXnAUBcR9CGtQW84ZTzHPKA3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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; bh=q9CrfYrN9FRkRqt3F7ay738iirdGhwbTG2Kwi5naa70=; b=Lbo0XSrVYu1aq1vBXJVd8VgjOxWjgXI8E5ujvQIV8r6af11fLQ1kbIEynQrHWHqFVRxKiw72fZJNQv3JglpuuEA5rvUi2rkTe8b7eHK4dEUDKYeDS0M1nxkicqYDDDZ8Msl1cwgBsnxb46NpSnLJcilxr9CjBER7IjLr3TfTUC6v64cB4fSk5RSJdzgZVGesS3ZmKtxfecxE4bUqM5dDjl1aHInaheEGx+lKmMair30jeMhym/YPChGHoTMRv4OWQk2wM+m7nd1MtXdOD/nga9ObOXhsB8Ff0Y1Bio+vNYdzECjOl9IIbhqjqtm1bmd+U7kxdtPcXcD61NTaRZ19Tg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none Received: from MN2PR10MB3213.namprd10.prod.outlook.com (2603:10b6:208:131::33) by CO6PR10MB5650.namprd10.prod.outlook.com (2603:10b6:303:14f::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.30; Tue, 11 Jul 2023 21:58:21 +0000 Received: from MN2PR10MB3213.namprd10.prod.outlook.com ([fe80::1797:59c3:a40e:f8ab]) by MN2PR10MB3213.namprd10.prod.outlook.com ([fe80::1797:59c3:a40e:f8ab%4]) with mapi id 15.20.6565.028; Tue, 11 Jul 2023 21:58:21 +0000 To: gcc-patches@gcc.gnu.org Cc: jose.marchesi@oracle.com, yhs@meta.com Subject: [PATCH 1/9] c-family: add btf_decl_tag attribute Date: Tue, 11 Jul 2023 14:57:08 -0700 Message-Id: <20230711215716.12980-2-david.faust@oracle.com> X-Mailer: git-send-email 2.39.1 In-Reply-To: <20230711215716.12980-1-david.faust@oracle.com> References: <20230711215716.12980-1-david.faust@oracle.com> X-ClientProxiedBy: SA0PR13CA0002.namprd13.prod.outlook.com (2603:10b6:806:130::7) To MN2PR10MB3213.namprd10.prod.outlook.com (2603:10b6:208:131::33) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR10MB3213:EE_|CO6PR10MB5650:EE_ X-MS-Office365-Filtering-Correlation-Id: ef28177d-7b0a-428f-9230-08db8259f0d1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IaKoGbYeB7ibmuSs87MyxkZ4d3yFsQV9tqxUqLvHcjX9tm+qfSTXcZAA2Y9mwk8NOsm2gjsSlnapdbqb1/0SFq9ZVBqfluRhMv3Ac2ejk4FWXPdOYmgPDpBq5r9LGxY0prgrdPaLkEAD9oOIOi/bjrI8lvOf4hifDgMhnJhn6aZpqCi6k8jQ8Z17oeyjvr7iIBnnfh9knPz2sKanrpCyW44xCyjdSuLKn0mJMaiyQUulhH9svdkTJw6v5279whTZjzlPJqGMSn/5PvJASxuEsaWeodpgF/2YJzmRfBLFczPh8Tdx50CJybt7OQKZfqCjz+rIztLOBj7cEJZ+tHWogs7WHZPbLlLsqSAqZ2GUof62BBJ3zUPrW1wap6rgDZI0L/6pkJ5wEJgw6nV/vWs3D8gBjupRgelLK9nOfF9M6PUBHpeNTi97Bkm+NON+Sckd5Vz0t/j2w8F+bTdBoWdm7rzeaebJUDJhUjC2cpYOpQkT2vbmpWtf4cOLCS9wwrLM5suzm7G5++l6aSi0B817bU4Xdzys5VBonyWZwFV3KovFBahsmHmnmfAJ0YTcdNAR X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR10MB3213.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(39860400002)(346002)(136003)(376002)(396003)(366004)(451199021)(86362001)(38100700002)(36756003)(6486002)(6666004)(6506007)(26005)(186003)(1076003)(6512007)(2616005)(5660300002)(2906002)(316002)(66556008)(66946007)(66476007)(8676002)(44832011)(8936002)(83380400001)(4326008)(478600001)(6916009)(41300700001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 9jXsEMzaFx87Y4X1nwy3urAcdHJd7+BgTYZgzoJwVx6UlrSe4e1JIVb9qbUZqdJ53n8C/GFWleaXkwTNGhAGc78XX6BimkfLEP6H9meLF16cVCJ4AGJI/SoiuGKSSO2MFxySqvzWFZXl7gfSbscKN/+xHPcIkB30Wivn4zn5cnTqD4ZL4Afl2WWowI/wIXp8I6ov+bCt/C1Hl3ZeXoOLGjwx7y8SAVtjGek9+UcncyfbFSzXZevXessYziRHs7Tgsy+9csISyKsw4+QL9KvZnoIoGhZ8zqris3Xl1UTCTmU2WOdI0hYJyRXsuAlCKbGHAOHQsWv9U9TmuTyTdYPQ6VH28N/8rOp16amthMqxdSiibGDl2AGahh8LPR7nwbhqkg2YP6CmvEinKMAmcjuPK0aPIT63avvFAgRXxohqZzE39/NdYl710PHXRxcAvtmutT4qa4cpTJoqLJtW+rL+iJ2ORw/6FVHng4KVndvuc3yUSB0XP4AgJxKK+7yw8s4ni45VNYVHJp5NypfG/0RwpFpwNUDK+9NSWEsn+7AzT/38oprJtkXAW7LMQAc2JhbXIGSEwLwfdhIBDQEoM8Pahg4RBQe4Tp/ndCSWk2bbA2hPhJlHGMKNg3vFbNL2C2a7UJUS7fM+Ghrh0GFz+nLiyy65wGMjokXcaGRCuJqU1dgbXwcqGQdQSe0q3dcdFRiR6m8JS1aimE3I8673qMS/gT6uBvEUT9EnrIgc6g8PPNrXAuPl2ZTNoaw4LZSGGOL3/LI6pB5qPNnwBS6NIHch3YWjV9uFweOEEjEZ18Hr8zv7npBUig5Ytu/38rzr1L0lqenKsmca+DPFKma0STWisA3gtVAa1L1UjHaVfpyUvtjBuxtuuPAf/eufPKhKHW7TumEseXDLSSOs8UEoJc8FvNRbRz3xZYJ6eAUB+1q6+gRGp5nje+7SHzRd/SKpGflCfJ8V54PvEboC+9NoxpQE2O2ckUiItJJucAsDN7NuNI7mocq6K4ef9gIq6PfsGzYXP9mr3HCByjk3Y+cARtIn3rZ+w+yGs45wSehGUgwK4T35FHW3W5LYz8pMxkT19tnuYfuHtsZLB01NvKNU8KUgU29KZ/J07LMlij0KVKYRNMEKnLmiSIW9Yrf84ORmYGHvKKnOEV1mVzItKu375KpvvNiyRs2d4ISAG4F0/dNEKRRJkbiAFEwjSgosfPxJbJ2HKAZTfhX5LCujBM/hltaVfdXWtAx73M52FopeU9IcRkTkNiYUlrjE1YZeK4Ney/8XzoFwEpSOGgBnbA7wFM1aqfZesW6M0H8FssUYzIfNHiGs7aEOLAVYy9iE/mLv8vh5Cf63v4JzzGviBdIVEDD9PwXUn7cKVgjq7CTph97+9aP9q+ck/PIGCwTrZTaGTZNz7J0qT1BGG2IQYA8k3ls23FZrQIEzJBZA08B3ryntXnFXayRw947wyGsBEVi++geiQ/PsYW54Abn0ujHWejyYOVzRUNb+KRczCspUSVrJoxDAOYMJQoJvBHcu8fqDp1y4y9DM5boZTkfxvOCyKMb40KymyCM2jQxvnmjMUz5WRmrjaBf9ZZjJRk9q+16cKoR5 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Tr5FzTv6sTH7RrKc8CRzS5IvelYjIqOQmzQUIBiP5j035qUaSfnDv/2UIg5kMJ6gJlDAclAHyLuJpa1JKT2ebLb8w4jcZry1WM/oFXKAtzOebFK1A6O9r9tGhoXDQ+T3bOdWZjtkN4bu7IQO0FOdSLZiSn2wh00xTjEm/v4Oy11Wn/o6sZX/7kG+7HhwqFjTPrfuT5Z512jTiamuFGIw996SXzi2/xmOVbkvn5ngVJQoNWlv9bI5zRc7iWseY0OX7L0ahLzV+pvnq6lJ/cCV+YBZXIFs+9LTRBqF/LGgijZtV+O8fQLOwJANxZ7Qqxm5dF6lLhMQeNukRScpRAsYGmHvIcDVvBy8GvvEiNsbyhT+GlWSji9bs8ffx1i0fCA2rP4zHZbwXY7CfI2ctZxYR4qNiCl6dAZrdsfe6qr45LW2V8ZNr5MDVRPtVsqvrw8Ti6KSYVbc8bqtAe3/F/lerK9mkUXbD3hwZ5KlYrdTyeFV6CSMqVRlpl8t/q66VIKz250fyw+FksO496ikGSua8uDyCotTmSv/ikZvoU/03KA/H2Bmw+TzHpTNqrApbrNhXnL70X13I3htRYfgnuxK2XFSemfrrjWLcVZ9N9Ol/3A0lM9igW5vgbUhc5LcYeQ+LAecTKvmiqYJxRzZZNCnh87oc6Jdt7VfkhC2thgm/XGzI6MhFaRqAg47Xch48NpPpM3ZWIgpK7phWMxcH/ebEdbAfZITjRaDFcFq1Y7xjdHTaazRvnLdqf60m26fVRDgz3NtuQvwLw49KDqgeJ/Xog== X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: ef28177d-7b0a-428f-9230-08db8259f0d1 X-MS-Exchange-CrossTenant-AuthSource: MN2PR10MB3213.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Jul 2023 21:58:20.9574 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: SfJqBaOXejX3qm1BH2qAbDUaLvjvUrZ1Yy9oK+RdNrOe2Bw+zdIS9AM7EDerDkI53FPZdMk1JXlHJgSp4DACxA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO6PR10MB5650 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-07-11_12,2023-07-11_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 mlxscore=0 bulkscore=0 suspectscore=0 spamscore=0 phishscore=0 mlxlogscore=834 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2307110200 X-Proofpoint-GUID: kWEl-VZTJDlTgd2FBOgVNWzMkyL4acXO X-Proofpoint-ORIG-GUID: kWEl-VZTJDlTgd2FBOgVNWzMkyL4acXO X-Spam-Status: No, score=-13.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H5, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: David Faust via Gcc-patches From: David Faust Reply-To: David Faust Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" Add the "btf_decl_tag" attribute to the attribute table, along with a simple handler for it. gcc/c-family/ * c-attribs.cc (c_common_attribute_table): Add btf_decl_tag. (handle_btf_decl_tag_attribute): Handle new attribute. --- gcc/c-family/c-attribs.cc | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gcc/c-family/c-attribs.cc b/gcc/c-family/c-attribs.cc index e2792ca6898..0a3de3ea307 100644 --- a/gcc/c-family/c-attribs.cc +++ b/gcc/c-family/c-attribs.cc @@ -178,6 +178,8 @@ static tree handle_signed_bool_precision_attribute (tree *, tree, tree, int, static tree handle_retain_attribute (tree *, tree, tree, int, bool *); static tree handle_fd_arg_attribute (tree *, tree, tree, int, bool *); +static tree handle_btf_decl_tag_attribute (tree *, tree, tree, int, bool *); + /* Helper to define attribute exclusions. */ #define ATTR_EXCL(name, function, type, variable) \ { name, function, type, variable } @@ -569,6 +571,9 @@ const struct attribute_spec c_common_attribute_table[] = handle_fd_arg_attribute, NULL}, { "fd_arg_write", 1, 1, false, true, true, false, handle_fd_arg_attribute, NULL}, + { "btf_decl_tag", 1, 1, true, false, false, false, + handle_btf_decl_tag_attribute, NULL }, + { NULL, 0, 0, false, false, false, false, NULL, NULL } }; @@ -5988,6 +5993,24 @@ handle_tainted_args_attribute (tree *node, tree name, tree, int, return NULL_TREE; } +/* Handle a "btf_decl_tag" attribute; arguments as in + struct attribute_spec.handler. */ + +static tree +handle_btf_decl_tag_attribute (tree *, tree name, tree args, int, + bool *no_add_attrs) +{ + if (!args) + *no_add_attrs = true; + else if (TREE_CODE (TREE_VALUE (args)) != STRING_CST) + { + error ("%qE attribute requires a string", name); + *no_add_attrs = true; + } + + return NULL_TREE; +} + /* Attempt to partially validate a single attribute ATTR as if it were to be applied to an entity OPER. */