From patchwork Sat Sep 20 07:33:57 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 120558 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 103EF3858429 for ; Sat, 20 Sep 2025 07:35:05 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 103EF3858429 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1758353705; bh=YwYeBxCZKjUrtEfqm/XBwEGP5wa0ij0XwOeRVVdlZB8=; h=To:Cc:Subject:Date:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From:Reply-To:From; b=FxTJlVrJezs9TOpaIear2rDqk3plUdsu1OAX6J8FgmP1vzbmWewyt16qeoOIRV2JU vOJuNFEXE5bn/bpZNnqLA5IgN5YF4ey7FAxOy6u26cCiOCxaffDbgHfTBCkuq9uJ8A fkYjgHw2Fa/aQhG3QeMZMVanBigihMKPztIakma0= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 8798F3858D21 for ; Sat, 20 Sep 2025 07:34:12 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8798F3858D21 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8798F3858D21 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1758353652; cv=pass; b=hs6kpQxUG0jMrWYaBdh5etjVFsQzDu4MtDQkTHtpEeuR5jzJUlM3Msfuyn8CoxqwOzyfO2k2sXwB1XKq/xbjtLWAy08pcyNgOSpRBjdficgbMOOpWVCdDmgGOMxdxj8fz7vZ0AEUzqVwzhBboPQQzqjKT2mkjhC+dKgMpnQLPTs= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1758353652; c=relaxed/simple; bh=SsM2otyjsTchczh4MgEQf3dLehgJeXwZJQDQunlsuYI=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=GLOo4vzHc0bZh1eKO4L7Ivz+hRiTM6cxCkfB5GaRB/P/V1g6slH4Tj+rXdD9JhhrAUStLmQceTxubAlOMDuafEw/z59+I27z4nnBEg8xXmXerJrQf0xqY4z+V3JO/OnuQ+MG8YkcuJd2/1Q7CWo2uYPULSYbaHXmhNPuzWxp81k= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8798F3858D21 Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58K3OWas027699; Sat, 20 Sep 2025 07:34:08 GMT Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 499m5983y5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sat, 20 Sep 2025 07:34:08 +0000 (GMT) Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 58K708Au013531; Sat, 20 Sep 2025 07:34:06 GMT Received: from sn4pr0501cu005.outbound.protection.outlook.com (mail-southcentralusazon11011001.outbound.protection.outlook.com [40.93.194.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 499jq55tuh-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sat, 20 Sep 2025 07:34:06 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=pPZipfaP0KqlWXneXOZNHe1o3+iaGLEnvQj3rM+ilEes/Y3ILrWESwL8tU/xfZyW5odrQi2HdvpAg5FLplpkdwk1DEl1hIgvAqGxL5V30d6O6VA8H+ORLiSxALIAyMLewVOtU8McX0f1AQEUkx0OlDiT7rMQGT7czum5WiqHAJOLIwpJbovmSqGY6PU45Xu+5VGS8YAxO8HU/jZlN16vXAFZDkNrk4b8DPIdmF2L+lmkoCnqTOot/BlF2/mpZWR7vZLhZRfVcqM9aU6BlWulis287upg2ZdsZR7PcC4biKPbtaqiw4aevKcQOym7zHwYMPk81pp0p1llAqm/1og18w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=YwYeBxCZKjUrtEfqm/XBwEGP5wa0ij0XwOeRVVdlZB8=; b=HQ/N2VWAp9EkhnBci3r7p99QQyr9qdkTUIi2XtLTD6BDkKWrqn23PVH/z3IoijRIo5jNen8g72zMhHVe8GXeF5f5TGGFU+RPEOjzF7graCyt2IJxtHpc10ctqvYT8AB7L2ZGAv4c3QFce9bykSkNVjrHgGvA+Z4Ymkz8umhBQ2QSPHZRWKjHzqC7q1XBLnF85p21XFV3Ud+04gmdudRdmoIZIEUinROuTkvHu7gCpmxa/zvKQiQJu+LqJrvutq23noY41PPclNAq9tsEopmeRIw6Bjnsi7DNBMCsq/nZxJAfV2XtC9T1bV8uPe+ScYxIHB4f/NSK1P2wGwyLteDsTA== 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 SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by SN7PR10MB6287.namprd10.prod.outlook.com (2603:10b6:806:26d::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9137.14; Sat, 20 Sep 2025 07:34:03 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9137.012; Sat, 20 Sep 2025 07:34:03 +0000 To: binutils@sourceware.org Cc: richard.earnshaw@arm.com, Indu Bhagat Subject: [PATCH] libsframe: testsuite: make test names unique Date: Sat, 20 Sep 2025 00:33:57 -0700 Message-ID: <20250920073357.1508633-1-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 X-ClientProxiedBy: MW4PR04CA0259.namprd04.prod.outlook.com (2603:10b6:303:88::24) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|SN7PR10MB6287:EE_ X-MS-Office365-Filtering-Correlation-Id: 8e20cac8-d62a-40b0-a466-08ddf8181268 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|10070799003|376014|1800799024|366016; X-Microsoft-Antispam-Message-Info: rqos4kg+8K7g7isaJbVqRUHKVAIWJaw6qrUP/lLrz3GnrxavgNf9FJxUZiCPVPHuWCJefE+DnyTym897PiTqnrClH1t/dZjHfDWGsKo7uWonVmvdiAgAraT++pDYAVqvj2UBlbbSMNCFKu7XRny+kgdUvynK/SyC5lqUUr70BPA0NTY0RApaAnZh78tvp6dYfGakbx32Ln4yn54nduhwZNVFUC8Xacy7UUQPKb6/f3vXu2VeRZfDeGoeH1Gem0knSnQTqkEdCpQfd7QoNE08QzgFTS6hysBrOeaNs90OAjxAZEzdImVBWs9UxOS5/5BtQbacDfV6ejsS/uqTYmifSnNG/TEO59YHdgB/BnebFHxH5q3raFsZj4paXiudPqUxqiLJbfDhpwEJgbpqZuHQDhiOcyjdMBR7ybFQY3c6IoM9viVPCxu19SU5iAUjZKORVHdG0NQ4yfpSZlb97k9/+QPI6lSbsmUmEAVLiFGMUZWjiIfQCs2JRqM3OSfFnmCRF9LK6NNh43HYG8KBVXXNYJLY2MlxQbvgj8vlmxTUOvoTk6MHUJrSYTE7y1DrDV3Gcb3rNai21h8zBxuGgwpBdaQP5B+sk34QCozaFeqRPO03NL/mLBiabeoAEzeXILuizv8bKiQ0DWI8WybHR9xx1K0kyH5GBAJp/yk8+V1Dk0B8fZ/20/rVT0Nxy/BFq/tuaqAKTxfFA5cxDVZCvegXmNj9I56YDdPEWzK7Xq9w4rwceT7GdRJezP+bCUwqZ3JYA5osxRQPsOQ+o3pliJktxrtEWygDUe2N8HEN3GN+Z+hEQI0T0uYxtxv9fchmoK0fULXEKP88XCB5Tp06Vu8hZG7RFKp0YSf8bJCCXbRvVEpK38yIychRFE7oSqhp+7xrAHUf7PKcMUVit0x4ZCUeZpDN5OsWQurOaJsuht+ypiUipHgBJLvjTkaPGyZp0g1OhERnhtdLuYVyYmFySnKXenSWIrq83dBj7fj9rK2LXAwLhaDhpo3I8e8BpW0jyuV+gW1dZpS3W9ER+AOididm6IijSON0kqCEVWAM9crhWjYqmo9xEOEfXO4B7gOx/EIHSNcQClkB2oe2RULs2PbProm7IT7mRTHVkF/zPEKxNaFn+rZOvQRWMa02kvEsem3Z9oQtyky9F0ojD4jBkkSlmBK7znG81yCGH5crhf78oRIdKRaxeKtbVjGmJtzyvnVu+m97pJIEgRgLvQrw1W7BMni0lHk9QGHpfMfMHK8zVADPq57WM06ptw4GzGN3LSVK9FWi0uT2RGHWfTdhRLy11XiQK61SxYGcdk+atHgCMIAHT6RQ0ycG4s12DVg6UENfn5AOes62lKSktgjaZ20dHSrDwZjnQSIr7oOWZ310lQll8ySGQ4ay84A8MAiz75Ep X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(10070799003)(376014)(1800799024)(366016); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: zP2SIY8HTlxmZ62S3bksJDPN+pqZp3zC74IM21FlslyJEB9OJaNPhnS17WGanPTzYI8qYYUx7Bb8kB4G/1jYavfKpLJ9tLtjMxxt7gWa6rrQIGyMxTk7NgXW8MwWLtREx72btVClheHEjAfZ0x/WOcEtxZbvj4GTXawoQ73OTVJQq07aDq3478kdQ2iZPd9YzO5ESNZ2IWx/KGAhGQx0d+vdYzZ6KXs9w29I0EqFUR3BKMQfRPYFpmaNycgcEfbIpk3bAXrFZIc0Us3lVW0YDSnLSl9b0z9rZdMJU4qJtOg92zEUEqfgVeIbp3ymot7NBM5uTkrBtBcobIxvbuyKipHpUeRIKMsx/a10yq0ptrq9O6Doelu0JjYmxGMQbf2RIBwPekipNzz9tB4uUAPz0rKpn1WmSGzJmw8/ZY4bnxOrv9O2ob0mOj2jZtp2+ffhJoDFdaLEfkZwA9nXBu/kLGnjLjArOY7Yr1cETP0nIsIudV73JlqjhU/v8LX9eY2/Zr5yiBvyMS+hOs6JSBvZU/hJlaRIN0dsn+Sa4L8QQPqILKoAlV/NgISql8MKncN4MBRxYvOOE1jJ1P0uj0ZkK8ei6YT1WE1ls9EhJxXh6GajVGTCqoH9Qo242QNrQj75axSHgdnfPaJXsSKX8kLSKMUlEQhlsvcrFWp3CzO4EB4mrXFrltcbzqSnPlwtrfebRXjH7YlEF5aQhHCmeq2/jj1DubKs53dt//WJ9yv5S7+IAZAkgseTTePJKIwQ7SX8MgOgK5ekm81OjM5nYz1xzwgTtQqdz+nmMuf2aHZqS10LAuxivV7j3OmXIoBlO893APQfyUDmz1sv7GfdWhIOZXvUQieBJQU09iaL3CBpYRahx8vkYSMrezPrIFoDiCRTfnCje1fKD26ug3vkmPPwd9H8UF+W7EappSNLotGVXDqBMyS7YE3ctQ4bwi2/P2IxWXwkyXyLpKBxunGUbnvpCcQr9henUeFYGZdtk9O5tfFTTfqEd8tcDuefAcJ0eutWUiJ946te+ctjxQJpxB/tIeKoZIY0PnzhPyBhjPysL0cav9Yzyw/fUAqh8UKhYZ7EIWtUnKEt2wDQ7pU/KACihF1wjd3X/j0RU/9h9OPuHFL3aZ1Mo+zCw9or7rsq3p2KQW/eGHXOjc4BWsTuCo6WzV2qKdf2sq6N1+agTnKrJMdIeVzz278nVKzNwZ/kzBzklS+vB+AlHQHg4YGc/WAkGNlVSIPwRxNci3DWFWfSRlVTYDL3OE+Ut4uFSTBMVAoN0SQhpPX6hNtx7ehxcoPy1aObjeUHgfuwEl2/GMGVnI57tzvtZrCRcNVWwQ+19IDHWxxrFrtFCeIDAi0ZG//OIqev11fYqdGRVBKLtIe63nItX08m9eKC32TPthnR607x26+FtzQcl6fQJywMebrTiYwX7zGAoUGs5gumC2di3563SCbHxhCQLsZpyqIJVxbeMcEB5LxpayUUDtabhj9TrnigicORt2nstUVXdJi2aMkagTbDEOTnsOF1/i/JN4rfRe2CZJ5ZP0Fgd2jvtl4EiJjP8Qybg9iBlOg4+Fipp13f9dRT2/KUyTtJzCiVFPk+luTRbvoGW9RbDAkFdDwomX8KhSTD9Pgw3Lfx4njCTq0= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: BC5nOt1eq2F1caFerp5RNVp063iXuUWShlNLbpfDMEhy6HiM+2IUoCZLs8YwFAcd/X9jNiB1Jxj9gSUYlURDBaGhijq2lO779wvsNokuECDRh8+jpoq5nx5zZtBXmiVq9WmJiYedk3LL7BS+KQAvxOSxAiFUqnH48+A+VY7HZWkJRV0Sk4cLYym+Nmn0SuqFFF3aztawlmlWIvxK9aKh531jKyEaZs31tCLfwtstr166q+Bnc80cYms8khm6y/VqnGCbmp6OHWqXDXeOeMtw0iLF8YiaX59chEF1qrZxg7cXA50fy4PdzXi2H1kTqO8scd3Wa55yrexxROcu6fUpo8fuzR+7lzoSFnfWnNofS2tlSjtMyN3llmyu2+OBgSIruZyk7gVdaTi4+R62kGfR0FmBmHeI/sgHhE9d7sbaBcohABb2ISAYHvJGe+cg8P0bhe6Tz1TZJVP1KWSRXEMmx6IhxZutCOxgXIqDfv65u1AFc5FcsCpqkDlqw671tg229ikO5OfwUy8gMoRjUl7TGLA5Lle+UEl3D+XfLSlZ1rDdja8BQbBNhDb/F6u3gNEm8axfCll0OYPWduZ1EBgunq5iVMlDKqyT1BKM4gS6zds= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8e20cac8-d62a-40b0-a466-08ddf8181268 X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2025 07:34:03.3119 (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: yna96WxfdoSvOwcgU/XnEr322HTgXdf98OqPPNaP1vrv7XJtmyobLlJ1YC0rESCW8AO4CkuDB/7xZvYhyq2O5Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR10MB6287 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-20_02,2025-09-19_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 bulkscore=0 malwarescore=0 phishscore=0 spamscore=0 suspectscore=0 mlxscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2508110000 definitions=main-2509200071 X-Proofpoint-ORIG-GUID: KzkDoPqAHq-4O0nmW5a1R-z8QvKTWkQp X-Proofpoint-GUID: KzkDoPqAHq-4O0nmW5a1R-z8QvKTWkQp X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTIwMDAyOCBTYWx0ZWRfX0/c+xC2slae8 Vukfmvah6FFAK0u+uW3MVIGkug8vuC0S2bpAUDlF/+MVz2EBf4Qk5dExzssPGxnVu2d6kxCLYSm EHQ6y8+zsC2a8qrE7i7wxd7XV4lqu2obB6t1zfPxTPphOL5G4RXmenOmvPlfTdfChk1SCGv5gD/ t1LneDln75qkiA+CRWBcGzQ3wqYmWrgXD9wqV8Ay68HZMfUhfvcBJK0BzqLDnmA6WkibU4Cr2zM y/T3M8Zh8uVayLmRS84luP6BZSJe37seCH5/ntRFCErOScHIBHn6yJx7sD3veFbXrySDB9a8rQG OrlznPQjWS79rQJANmA9L+nkcnaQCI6OByPbrFxnKOgzZqcKKhrc1o73Eh3MhniQJuwopJ0ZX99 ugC7KguOSsTFQzcu0IowqpXPyKFliA== X-Authority-Analysis: v=2.4 cv=HJrDFptv c=1 sm=1 tr=0 ts=68ce58f0 b=1 cx=c_pps a=zPCbziy225d3KhSqZt3L1A==:117 a=zPCbziy225d3KhSqZt3L1A==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=wKuvFiaSGQ0qltdbU6+NXLB8nM8=:19 a=Ol13hO9ccFRV9qXi2t6ftBPywas=:19 a=xqWC_Br6kY4A:10 a=yJojWOMRYYMA:10 a=GoEa3M9JfhUA:10 a=aFHvmIWr2IHnrmMW5a0A:9 cc=ntf awl=host:12083 X-Spam-Status: No, score=-12.8 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_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_NONE, SPF_NONE, TXREP 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: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org Hi, I am considering this patch for fixing the PR. Thanks Indu ------- Fix PR libsframe/33437 - libsframe test names are not unique The TEST () macro definition originally in plt-findfre-2.c allows for three arguments, the last of which is a suffix char that can be used to differentiate between multiple runs of the testcases. Move that definition in the testsuite's common header - sframe-test.h, and use it throughout the testsuite. libsframe/testsuite/ PR libsframe/33437 * libsframe.decode/be-flipping.c: Use new TEST macro with suffix. * libsframe.decode/frecnt-1.c: Likewise. * libsframe.decode/frecnt-2.c: Likewise. * libsframe.encode/encode-1.c: Likewise. * libsframe.find/findfre-1.c: Likewise. * libsframe.find/findfunc-1.c: Likewise. * libsframe.find/plt-findfre-1.c: Likewise. * libsframe.find/plt-findfre-2.c: Likewise. * sframe-test.h: Move the TEST macro definition to this testsuite header. Reviewed-by: Jens Remus --- .../testsuite/libsframe.decode/be-flipping.c | 21 ++----- .../testsuite/libsframe.decode/frecnt-1.c | 23 +++----- .../testsuite/libsframe.decode/frecnt-2.c | 23 +++----- .../testsuite/libsframe.encode/encode-1.c | 25 +++----- .../testsuite/libsframe.find/findfre-1.c | 50 +++++++--------- .../testsuite/libsframe.find/findfunc-1.c | 57 ++++++++----------- .../testsuite/libsframe.find/plt-findfre-1.c | 51 +++++++---------- .../testsuite/libsframe.find/plt-findfre-2.c | 10 ---- libsframe/testsuite/sframe-test.h | 10 ++++ 9 files changed, 104 insertions(+), 166 deletions(-) diff --git a/libsframe/testsuite/libsframe.decode/be-flipping.c b/libsframe/testsuite/libsframe.decode/be-flipping.c index c8b627b2067..c8de886a589 100644 --- a/libsframe/testsuite/libsframe.decode/be-flipping.c +++ b/libsframe/testsuite/libsframe.decode/be-flipping.c @@ -46,16 +46,7 @@ main (void) char *sf_buf; size_t sf_size; uint8_t rep_block_size; - -#define TEST(name, cond) \ - do \ - { \ - if (cond) \ - pass (name); \ - else \ - fail (name); \ - } \ - while (0) + const char suffix = 'a'; /* Test setup. */ fp = fopen (DATA, "r"); @@ -87,15 +78,15 @@ main (void) the host running the test is a little-endian system. This endian-flipped copy of the buffer is kept internally in dctx. */ dctx = sframe_decode (sf_buf, sf_size, &err); - TEST ("be-flipping: Decoder setup", dctx != NULL); + TEST (dctx != NULL, "be-flipping-1%c: Decoder setup", suffix); unsigned int fde_cnt = sframe_decoder_get_num_fidx (dctx); - TEST ("be-flipping: Decoder FDE count", fde_cnt == 1); + TEST (fde_cnt == 1, "be-flipping-1%c: Decoder FDE count", suffix); err = sframe_decoder_get_funcdesc_v2 (dctx, 0, &nfres, &fsize, &fstart, &finfo, &rep_block_size); - TEST ("be-flipping: Decoder get FDE", err == 0); - TEST ("be-flipping: Decoder FRE count", nfres == 5); + TEST (err == 0, "be-flipping-1%c: Decoder get FDE", suffix); + TEST (nfres == 5, "be-flipping-1%c: Decoder FRE count", suffix); free (sf_buf); sf_buf = NULL; @@ -105,6 +96,6 @@ main (void) setup_fail: sframe_decoder_free (&dctx); - fail ("be-flipping: Test setup"); + fail ("be-flipping-1%c: Test setup", suffix); return 1; } diff --git a/libsframe/testsuite/libsframe.decode/frecnt-1.c b/libsframe/testsuite/libsframe.decode/frecnt-1.c index 9cf55ef0868..09cdd7df06f 100644 --- a/libsframe/testsuite/libsframe.decode/frecnt-1.c +++ b/libsframe/testsuite/libsframe.decode/frecnt-1.c @@ -37,16 +37,7 @@ main (void) char *sf_buf; size_t sf_size; uint8_t rep_block_size; - -#define TEST(name, cond) \ - do \ - { \ - if (cond) \ - pass (name); \ - else \ - fail (name); \ - } \ - while (0) + const char suffix = 'a'; /* Test Setup. */ fp = fopen (DATA, "r"); @@ -68,18 +59,18 @@ main (void) /* Execute tests. */ sf_size = fread (sf_buf, 1, st.st_size, fp); fclose (fp); - TEST ("frecnt-1: Read data", sf_size != 0); + TEST (sf_size != 0, "frecnt-1%c: Read data", suffix); dctx = sframe_decode (sf_buf, sf_size, &err); - TEST ("frecnt-1: Decoder setup", dctx != NULL); + TEST (dctx != NULL, "frecnt-1%c: Decoder setup", suffix); unsigned int fde_cnt = sframe_decoder_get_num_fidx (dctx); - TEST ("frecnt-1: Decoder FDE count", fde_cnt == 1); + TEST (fde_cnt == 1, "frecnt-1%c: Decoder FDE count", suffix); err = sframe_decoder_get_funcdesc_v2 (dctx, 0, &nfres, &fsize, &fstart, &finfo, &rep_block_size); - TEST ("frecnt-1: Decoder get FDE", err == 0); - TEST ("frecnt-1: Decoder FRE count", nfres == 4); + TEST (err == 0, "frecnt-1%c: Decoder get FDE", suffix); + TEST (nfres == 4, "frecnt-1%c: Decoder FRE count", suffix); free (sf_buf); sf_buf = NULL; @@ -89,6 +80,6 @@ main (void) setup_fail: sframe_decoder_free (&dctx); - fail ("frecnt-1: Test setup"); + fail ("frecnt-1%c: Test setup", suffix); return 1; } diff --git a/libsframe/testsuite/libsframe.decode/frecnt-2.c b/libsframe/testsuite/libsframe.decode/frecnt-2.c index 9136e9a9e95..d1842b93a0c 100644 --- a/libsframe/testsuite/libsframe.decode/frecnt-2.c +++ b/libsframe/testsuite/libsframe.decode/frecnt-2.c @@ -39,16 +39,7 @@ main (void) char *sf_buf; size_t sf_size; uint8_t rep_block_size; - -#define TEST(name, cond) \ - do \ - { \ - if (cond) \ - pass (name); \ - else \ - fail (name); \ - } \ - while (0) + const char suffix = 'a'; fp = fopen (DATA, "r"); if (fp == NULL) @@ -69,20 +60,20 @@ main (void) /* Execute tests. */ sf_size = fread (sf_buf, 1, st.st_size, fp); fclose (fp); - TEST ("frecnt-2: Read data", sf_size != 0); + TEST (sf_size != 0, "frecnt-2%c: Read data", suffix); dctx = sframe_decode (sf_buf, sf_size, &err); - TEST ("frecnt-2: Decode setup", dctx != NULL); + TEST (dctx != NULL, "frecnt-2%c: Decode setup", suffix); unsigned int fde_cnt = sframe_decoder_get_num_fidx (dctx); - TEST ("frecnt-2: Decode FDE count", fde_cnt == 2); + TEST (fde_cnt == 2, "frecnt-2%c: Decode FDE count", suffix); for (i = 0; i < fde_cnt; ++i) { err = sframe_decoder_get_funcdesc_v2 (dctx, i, &nfres, &fsize, &fstart, &finfo, &rep_block_size); - TEST ("frecnt-2: Decode get FDE", err == 0); - TEST ("frecnt-2: Decode get FRE", nfres == 4); + TEST (err == 0, "frecnt-2%c: Decode get FDE%d", suffix, i); + TEST (nfres == 4, "frecnt-2%c: Decode num FREs for FDE%d", suffix, i); } free (sf_buf); @@ -93,6 +84,6 @@ main (void) setup_fail: sframe_decoder_free (&dctx); - fail ("frecnt-2: Test setup"); + fail ("frecnt-2%c: Test setup", suffix); return 1; } diff --git a/libsframe/testsuite/libsframe.encode/encode-1.c b/libsframe/testsuite/libsframe.encode/encode-1.c index da477e5fb2e..1ef6415d286 100644 --- a/libsframe/testsuite/libsframe.encode/encode-1.c +++ b/libsframe/testsuite/libsframe.encode/encode-1.c @@ -151,16 +151,6 @@ int main (void) unsigned int fde_cnt = 0; int match_p = 0; -#define TEST(name, cond) \ - do \ - { \ - if (cond) \ - pass (name); \ - else \ - fail (name); \ - } \ - while (0) - sframe_vaddr = 0x4020c8; encode = sframe_encode (SFRAME_VERSION, SFRAME_F_FDE_FUNC_START_PCREL, @@ -169,29 +159,30 @@ int main (void) -8, /* Fixed RA offset for AMD64. */ &err); + const char suffix = 'a'; fde_cnt = sframe_encoder_get_num_fidx (encode); - TEST ("encode-1: Encoder FDE count", fde_cnt == 0); + TEST (fde_cnt == 0, "encode-1%c: Encoder FDE count", suffix); err = sframe_encoder_add_fre (encode, 1, &frep); - TEST ("encode-1: Encoder update workflow", err == SFRAME_ERR); + TEST (err == SFRAME_ERR, "encode-1%c: Encoder update workflow", suffix); func1_start_vaddr = 0x401106; err = add_fde1 (encode, func1_start_vaddr, sframe_vaddr, 0, &func1_size); - TEST ("encode-1: Encoder adding FDE1", err == 0); + TEST (err == 0, "encode-1%c: Encoder adding FDE1", suffix); /* Function 2 is placed after 0x0 bytes from the end of Function 1. */ func2_start_vaddr = func1_start_vaddr + func1_size + 0x0; err = add_fde2 (encode, func2_start_vaddr, sframe_vaddr, 1, &func2_size); - TEST ("encode-1: Encoder adding FDE2", err == 0); + TEST (err == 0, "encode-1%c: Encoder adding FDE2", suffix); fde_cnt = sframe_encoder_get_num_fidx (encode); - TEST ("encode-1: Encoder FDE count", fde_cnt == 2); + TEST (fde_cnt == 2, "encode-1%c: Encoder FDE count", suffix); sframe_buf = sframe_encoder_write (encode, &sf_size, &err); - TEST ("encode-1: Encoder write", err == 0); + TEST (err == 0, "encode-1%c: Encoder write", suffix); match_p = data_match (sframe_buf, sf_size); - TEST ("encode-1: Encode buffer match", match_p == 1); + TEST (match_p == 1, "encode-1%c: Encode buffer match", suffix); sframe_encoder_free (&encode); return 0; diff --git a/libsframe/testsuite/libsframe.find/findfre-1.c b/libsframe/testsuite/libsframe.find/findfre-1.c index cbd7ab30a98..c9048888d6d 100644 --- a/libsframe/testsuite/libsframe.find/findfre-1.c +++ b/libsframe/testsuite/libsframe.find/findfre-1.c @@ -88,7 +88,8 @@ add_fde2 (sframe_encoder_ctx *encode, uint32_t start_pc_vaddr, } static -void test_text_findfre (uint32_t text_vaddr, uint32_t sframe_vaddr) +void test_text_findfre (const char suffix, uint32_t text_vaddr, + uint32_t sframe_vaddr) { sframe_encoder_ctx *encode; sframe_decoder_ctx *dctx; @@ -103,16 +104,6 @@ void test_text_findfre (uint32_t text_vaddr, uint32_t sframe_vaddr) size_t sf_size; int err = 0; -#define TEST(name, cond) \ - do \ - { \ - if (cond) \ - pass (name); \ - else \ - fail (name); \ - } \ - while (0) - encode = sframe_encode (SFRAME_VERSION, SFRAME_F_FDE_FUNC_START_PCREL, SFRAME_ABI_AMD64_ENDIAN_LITTLE, @@ -122,56 +113,57 @@ void test_text_findfre (uint32_t text_vaddr, uint32_t sframe_vaddr) func1_start_vaddr = text_vaddr; err = add_fde1 (encode, func1_start_vaddr, sframe_vaddr, 0, &func1_size); - TEST ("findfre-1: Adding FDE1", err == 0); + TEST (err == 0, "findfre-1%c: Adding FDE1", suffix); /* Function 2 is placed after 0x10 bytes from the end of Function 1. */ func2_start_vaddr = func1_start_vaddr + func1_size + 0x10; err = add_fde2 (encode, func2_start_vaddr, sframe_vaddr, 1, &func2_size); - TEST ("findfre-1: Adding FDE2", err == 0); + TEST (err == 0, "findfre-1%c: Adding FDE2", suffix); fde_cnt = sframe_encoder_get_num_fidx (encode); - TEST ("findfre-1: Test FDE count", fde_cnt == 2); + TEST (fde_cnt == 2, "findfre-1%c: Test FDE count", suffix); sframe_buf = sframe_encoder_write (encode, &sf_size, &err); - TEST ("findfre-1: Encoder write", err == 0); + TEST (err == 0, "findfre-1%c: Encoder write", suffix); dctx = sframe_decode (sframe_buf, sf_size, &err); - TEST ("findfre-1: Decoder setup", dctx != NULL); + TEST (dctx != NULL, "findfre-1%c: Decoder setup", suffix); /* Find the third FRE in first FDE. */ lookup_pc = func1_start_vaddr + 0x15 - sframe_vaddr; err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfre-1: Find third FRE", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x3)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x3), + "findfre-1%c: Find third FRE", suffix); /* Find an FRE for PC at the end of range covered by FRE. */ lookup_pc = func1_start_vaddr + 0x9 - sframe_vaddr; err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfre-1: Find FRE for last PC covered by FRE", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x2)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x2), + "findfre-1%c: Find FRE for last PC covered by FRE", suffix); /* Find the last FRE in first FDE. */ lookup_pc = func1_start_vaddr + 0x39 - sframe_vaddr; err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfre-1: Find last FRE", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x8)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x8), + "findfre-1%c: Find last FRE", suffix); /* Find the second FRE in second FDE. */ lookup_pc = func2_start_vaddr + 0x11 - sframe_vaddr; err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfre-1: Find second FRE", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x12)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x12), + "findfre-1%c: Find second FRE", suffix); /* Find the first FRE in second FDE. */ lookup_pc = func2_start_vaddr + 0x0 - sframe_vaddr; err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfre-1: Find first FRE", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x10)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x10), + "findfre-1%c: Find first FRE", suffix); /* Find FRE for PC out of range. Expect error code. */ lookup_pc = func1_start_vaddr + func1_size - sframe_vaddr; err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfre-1: Find FRE for out of range PC", err == SFRAME_ERR); + TEST (err == SFRAME_ERR, + "findfre-1%c: Find FRE for out of range PC", suffix); sframe_encoder_free (&encode); sframe_decoder_free (&dctx); @@ -183,11 +175,11 @@ int main (void) uint32_t text_vaddr = 0x401020; printf ("Testing with text_vaddr = %#x; sframe_vaddr = %#x\n", text_vaddr, sframe_vaddr); - test_text_findfre (text_vaddr, sframe_vaddr); + test_text_findfre ('a', text_vaddr, sframe_vaddr); sframe_vaddr = 0x401020; text_vaddr = 0x402220; printf ("Testing with text_vaddr = %#x; sframe_vaddr = %#x\n", text_vaddr, sframe_vaddr); - test_text_findfre (text_vaddr, sframe_vaddr); + test_text_findfre ('b', text_vaddr, sframe_vaddr); } diff --git a/libsframe/testsuite/libsframe.find/findfunc-1.c b/libsframe/testsuite/libsframe.find/findfunc-1.c index 1dcd870b0e5..14ff9c51f16 100644 --- a/libsframe/testsuite/libsframe.find/findfunc-1.c +++ b/libsframe/testsuite/libsframe.find/findfunc-1.c @@ -130,7 +130,8 @@ add_fde3 (sframe_encoder_ctx *encode, uint32_t start_pc_vaddr, } static -void test_text_findfre (uint32_t text_vaddr, uint32_t sframe_vaddr) +void test_text_findfre (const char suffix, uint32_t text_vaddr, + uint32_t sframe_vaddr) { sframe_encoder_ctx *encode; sframe_decoder_ctx *dctx; @@ -147,16 +148,6 @@ void test_text_findfre (uint32_t text_vaddr, uint32_t sframe_vaddr) size_t sf_size; int err = 0; -#define TEST(name, cond) \ - do \ - { \ - if (cond) \ - pass (name); \ - else \ - fail (name); \ - } \ - while (0) - encode = sframe_encode (SFRAME_VERSION, SFRAME_F_FDE_FUNC_START_PCREL, SFRAME_ABI_AMD64_ENDIAN_LITTLE, @@ -167,26 +158,26 @@ void test_text_findfre (uint32_t text_vaddr, uint32_t sframe_vaddr) /* Add FDE at index 0. */ func1_start_vaddr = text_vaddr; err = add_fde1 (encode, func1_start_vaddr, sframe_vaddr, 0, &func1_size); - TEST ("findfunc-1: Adding FDE1", err == 0); + TEST (err == 0, "findfunc-1%c: Adding FDE1", suffix); /* Add FDE at index 1. */ func2_start_vaddr = func1_start_vaddr + func1_size + 0x10; err = add_fde2 (encode, func2_start_vaddr, sframe_vaddr, 1, &func2_size); - TEST ("findfunc-1: Adding FDE2", err == 0); + TEST (err == 0, "findfunc-1%c: Adding FDE2", suffix); /* Add FDE at index 2. */ func3_start_vaddr = func2_start_vaddr + func2_size + 0x10; err = add_fde3 (encode, func3_start_vaddr, sframe_vaddr, 2, &func3_size); - TEST ("findfunc-1: Adding FDE3", err == 0); + TEST (err == 0, "findfunc-1%c: Adding FDE3", suffix); fde_cnt = sframe_encoder_get_num_fidx (encode); - TEST ("findfunc-1: Test FDE count", fde_cnt == 3); + TEST (fde_cnt == 3, "findfunc-1%c: Test FDE count", suffix); sframe_buf = sframe_encoder_write (encode, &sf_size, &err); - TEST ("findfunc-1: Encoder write", err == 0); + TEST (err == 0, "findfunc-1%c: Encoder write", suffix); dctx = sframe_decode (sframe_buf, sf_size, &err); - TEST ("findfunc-1: Decoder setup", dctx != NULL); + TEST (dctx != NULL, "findfunc-1%c: Decoder setup", suffix); /* Following negative tests check that libsframe APIs (sframe_get_funcdesc_with_addr, sframe_find_fre) work @@ -195,46 +186,46 @@ void test_text_findfre (uint32_t text_vaddr, uint32_t sframe_vaddr) /* Search with PC less than the first FDE's start addr. */ lookup_pc = func1_start_vaddr - 0x15 - sframe_vaddr; err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfunc-1: test-1: Find FRE for PC not in range", - err == SFRAME_ERR); + TEST (err == SFRAME_ERR, + "findfunc-1%c: test-1: Find FRE for PC not in range", suffix); /* Search with a PC between func1's last PC and func2's first PC. */ lookup_pc = func1_start_vaddr + func1_size + 0x1 - sframe_vaddr, err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfunc-1: test-2: Find FRE for PC not in range", - err == SFRAME_ERR); + TEST (err == SFRAME_ERR, + "findfunc-1%c: test-2: Find FRE for PC not in range", suffix); /* Search for a PC between func2's last PC and func3's first PC. */ lookup_pc = func2_start_vaddr + func2_size + 0x3 - sframe_vaddr; err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfunc-1: test-3: Find FRE for PC not in range", - err == SFRAME_ERR); + TEST (err == SFRAME_ERR, + "findfunc-1%c: test-3: Find FRE for PC not in range", suffix); /* Search for a PC beyond the last func, i.e., > func3's last PC. */ lookup_pc = func3_start_vaddr + func3_size + 0x10 - sframe_vaddr; err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfunc-1: test-4: Find FRE for PC not in range", - err == SFRAME_ERR); + TEST (err == SFRAME_ERR, + "findfunc-1%c: test-4: Find FRE for PC not in range", suffix); /* And some positive tests... */ /* Find an FRE for PC in FDE1. */ lookup_pc = func1_start_vaddr + 0x9 - sframe_vaddr; err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfunc-1: Find FRE in FDE1", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x2)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x2), + "findfunc-1%c: Find FRE in FDE1", suffix); /* Find an FRE for PC in FDE2. */ lookup_pc = func2_start_vaddr + 0x11 - sframe_vaddr; err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfunc-1: Find FRE in FDE2", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x12)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x12), + "findfunc-1%c: Find FRE in FDE2", suffix); /* Find an FRE for PC in FDE3. */ lookup_pc = func3_start_vaddr + 0x10 - sframe_vaddr; err = sframe_find_fre (dctx, lookup_pc, &frep); - TEST ("findfunc-1: Find FRE in FDE3", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x18)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x18), + "findfunc-1%c: Find FRE in FDE3", suffix); sframe_encoder_free (&encode); sframe_decoder_free (&dctx); @@ -246,11 +237,11 @@ int main (void) uint32_t text_vaddr = 0x4038b0; printf ("Testing with text_vaddr = %#x; sframe_vaddr = %#x\n", text_vaddr, sframe_vaddr); - test_text_findfre (text_vaddr, sframe_vaddr); + test_text_findfre ('a', text_vaddr, sframe_vaddr); sframe_vaddr = 0x4038b0; text_vaddr = 0x4b5620; printf ("Testing with text_vaddr = %#x; sframe_vaddr = %#x\n", text_vaddr, sframe_vaddr); - test_text_findfre (text_vaddr, sframe_vaddr); + test_text_findfre ('b', text_vaddr, sframe_vaddr); } diff --git a/libsframe/testsuite/libsframe.find/plt-findfre-1.c b/libsframe/testsuite/libsframe.find/plt-findfre-1.c index b41588a4139..f62ca3f84f5 100644 --- a/libsframe/testsuite/libsframe.find/plt-findfre-1.c +++ b/libsframe/testsuite/libsframe.find/plt-findfre-1.c @@ -54,7 +54,8 @@ add_plt_fde1 (sframe_encoder_ctx *ectx, uint32_t plt_vaddr, } static -void test_plt_findfre (uint32_t plt_vaddr, uint32_t sframe_vaddr) +void test_plt_findfre (const char suffix, uint32_t plt_vaddr, + uint32_t sframe_vaddr) { sframe_encoder_ctx *ectx; sframe_decoder_ctx *dctx; @@ -64,16 +65,6 @@ void test_plt_findfre (uint32_t plt_vaddr, uint32_t sframe_vaddr) int err = 0; uint32_t fde_cnt = 0; -#define TEST(name, cond) \ - do \ - { \ - if (cond) \ - pass (name); \ - else \ - fail (name); \ - } \ - while (0) - ectx = sframe_encode (SFRAME_VERSION, SFRAME_F_FDE_FUNC_START_PCREL, SFRAME_ABI_AMD64_ENDIAN_LITTLE, SFRAME_CFA_FIXED_FP_INVALID, @@ -81,50 +72,50 @@ void test_plt_findfre (uint32_t plt_vaddr, uint32_t sframe_vaddr) &err); err = add_plt_fde1 (ectx, plt_vaddr, sframe_vaddr, 0); - TEST ("plt-findfre-1: Adding FDE1 for plt", err == 0); + TEST (err == 0, "plt-findfre-1%c: Adding FDE1 for plt", suffix); fde_cnt = sframe_encoder_get_num_fidx (ectx); - TEST ("plt-findfre-1: Test FDE count", fde_cnt == 1); + TEST (fde_cnt == 1, "plt-findfre-1%c: Test FDE count", suffix); sframe_buf = sframe_encoder_write (ectx, &sf_size, &err); - TEST ("plt-findfre-1: Encoder write", err == 0); + TEST (err == 0, "plt-findfre-1%c: Encoder write", suffix); dctx = sframe_decode (sframe_buf, sf_size, &err); - TEST ("plt-findfre-1: Decoder setup", dctx != NULL); + TEST (dctx != NULL, "plt-findfre-1%c: Decoder setup", suffix); /* Find the first FRE in PLT1. */ err = sframe_find_fre (dctx, (plt_vaddr + 0x0 - sframe_vaddr), &frep); - TEST ("plt-findfre-1: Find first FRE in PLT1", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x1)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x1), + "plt-findfre-1%c: Find first FRE in PLT1", suffix); /* Find the second FRE. */ err = sframe_find_fre (dctx, (plt_vaddr + 0x6 - sframe_vaddr), &frep); - TEST ("plt-findfre-1: Find second FRE in PLT1", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x2)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x2), + "plt-findfre-1%c: Find second FRE in PLT1", suffix); /* Find the last FRE. */ err = sframe_find_fre (dctx, (plt_vaddr + 0xc - sframe_vaddr), &frep); - TEST ("plt-findfre-1: Find last FRE in PLT1", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x3)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x3), + "plt-findfre-1%c: Find last FRE in PLT1", suffix); /* Find the first FRE in PLT4. */ err = sframe_find_fre (dctx, (plt_vaddr + 16*3 + 0x0 - sframe_vaddr), &frep); - TEST ("plt-findfre-1: Find first FRE in PLT4", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x1)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x1), + "plt-findfre-1%c: Find first FRE in PLT4", suffix); /* Find the second FRE in PLT4. */ err = sframe_find_fre (dctx, (plt_vaddr + 16*3 + 0x6 - sframe_vaddr), &frep); - TEST ("plt-findfre-1: Find second FRE in PLT4", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x2)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x2), + "plt-findfre-1%c: Find second FRE in PLT4", suffix); /* Find the last FRE in PLT4. */ err = sframe_find_fre (dctx, (plt_vaddr + 16*3 + 0xc - sframe_vaddr), &frep); - TEST ("plt-findfre-1: Find last FRE in PLT4", - (err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x3)); + TEST ((err == 0 && sframe_fre_get_cfa_offset (dctx, &frep, &err) == 0x3), + "plt-findfre-1%c: Find last FRE in PLT4", suffix); /* Find no FRE for out of range PLT6. */ err = sframe_find_fre (dctx, (plt_vaddr + 16*5 + 0x0 - sframe_vaddr), &frep); - TEST ("plt-findfre-1: Find no FRE for out of range PLT6", err != 0); + TEST (err != 0, "plt-findfre-1%c: Find no FRE for out of range PLT6", suffix); sframe_encoder_free (&ectx); sframe_decoder_free (&dctx); @@ -136,11 +127,11 @@ int main (void) uint32_t plt_vaddr = 0x401020; printf ("Testing with plt_vaddr = %#x; sframe_vaddr = %#x\n", plt_vaddr, sframe_vaddr); - test_plt_findfre (plt_vaddr, sframe_vaddr); + test_plt_findfre ('a', plt_vaddr, sframe_vaddr); sframe_vaddr = 0x401020; plt_vaddr = 0x402220; printf ("Testing with plt_vaddr = %#x; sframe_vaddr = %#x\n", plt_vaddr, sframe_vaddr); - test_plt_findfre (plt_vaddr, sframe_vaddr); + test_plt_findfre ('b', plt_vaddr, sframe_vaddr); } diff --git a/libsframe/testsuite/libsframe.find/plt-findfre-2.c b/libsframe/testsuite/libsframe.find/plt-findfre-2.c index 61f04f00c2d..097d23bfff0 100644 --- a/libsframe/testsuite/libsframe.find/plt-findfre-2.c +++ b/libsframe/testsuite/libsframe.find/plt-findfre-2.c @@ -105,16 +105,6 @@ void test_plt_findfre (const char suffix, const uint32_t plt_vaddr, unsigned int fde_cnt = 0; int i; -#define TEST(cond, ...) \ - do \ - { \ - if (cond) \ - pass (__VA_ARGS__); \ - else \ - fail (__VA_ARGS__); \ - } \ - while (0) - ectx = sframe_encode (SFRAME_VERSION, SFRAME_F_FDE_FUNC_START_PCREL, SFRAME_ABI_S390X_ENDIAN_BIG, SFRAME_CFA_FIXED_FP_INVALID, diff --git a/libsframe/testsuite/sframe-test.h b/libsframe/testsuite/sframe-test.h index d5db96bd081..8b430e4ac35 100644 --- a/libsframe/testsuite/sframe-test.h +++ b/libsframe/testsuite/sframe-test.h @@ -40,4 +40,14 @@ void wait (void); #include #undef wait +#define TEST(cond, ...) \ + do \ + { \ + if (cond) \ + pass (__VA_ARGS__); \ + else \ + fail (__VA_ARGS__); \ + } \ + while (0) + #endif /* _SFRAME_TEST_H */