From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2082.outbound.protection.outlook.com [40.107.249.82]) by sourceware.org (Postfix) with ESMTPS id 25E7F3849AEA for ; Fri, 10 May 2024 13:09:08 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 25E7F3849AEA Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 25E7F3849AEA Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.249.82 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1715346550; cv=pass; b=rUCmaxpHZwKcngHoU2tqcGOcP9UnRGsY+j59o8W2RcvoluRSrV6U9HGoNZ723mxtBU3loc7HZfwQvxG55JvZAlWBwblw2pG9LI1iXa63KWagCqTVN/Cw764zkBLkVnDXm98A5tgIhKZ63Gp8Hq2GtO3DLPjCjfFV61xX4BU/H/U= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1715346550; c=relaxed/simple; bh=2FABfJxlsr/z+Wz8Uz/RiVj2NVQeG3qFxmG9I4y9UUM=; h=DKIM-Signature:DKIM-Signature:Message-ID:Date:Subject:To:From: MIME-Version; b=qJSJuhjjXtQtHXwFVNQxs/1LlUUHL66uOnXSaD73X2Xv5bzny24VR0cRJmSU7PukWdKNIyXzo3oqlIrDIv/he2gJpV//YNRTs1HEAwGC1GytWWVqmoCbCpLny7IiFAMQX4cQmqJm5x5rNzzPzZVpBUGReXqiR4l7QxSzmBEX/gs= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=NKbacka8hJIx+Gtc/LEVAs6lZFNq/izvClAXk134rsMV4AMasgYnTuX2E+PQ5pl70LPFGoOm+qzd+bJF9aCvU4MAeAfX5iOYoT0g08ibSmGUQryWLCaDukaH9tagL9nDOucxuwqsJVwep69mTbQcOk9zw432WHvKgRQRj7SeiwXE20e9tastNO4yRHoarwhEcxONZtldFHfZJgaYh3fEZJNJQjCq+F05fUIj2tO5lvcyRm6JYZdLmoyY9yXod/g7lGwtdE3JHxUp3BSC0kYFTJ9ugQ6jvmi750JqGzUEnl6Ta7ZnB0lO2MU97U0AafFtLtfD6KaZmw71s+/yaS1ZEA== ARC-Message-Signature: i=2; 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=2Wyoq/s3Q6LHsN5sVspLcHqHwCtzaK2bMY7eqkynxgM=; b=k+wZtQ5kLgAaIalxEePmRqP2lTQ9ur4XqVajertLPgrHM093FGPXtJVoYNYmL1o44tLHNAFsrsz4Cx+98sjvT1XrQj+76OCV4iuS+fRL7Oil4zVM4upmVh3pvqe9QwRUna3BCGi5iEdYR5it+//aC3WlZp04IN8NEnU+4NVb2SKGbVE0MCwWKDpU6WkOo4i7aG7BAjdRXqG90VZRgvLNXJCqqu9LhOUnWU33nhfVJP4UFeWIG1CpU/vB5omxJUNLc5jQiyqSyUY5d65t3CP5dDoCnW8jmrT8vuJQ5eBcEQxt3EJdIFvudPIL9QlWkoz2sbGNEmx2xfEivRD+JjsSEA== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=sourceware.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2Wyoq/s3Q6LHsN5sVspLcHqHwCtzaK2bMY7eqkynxgM=; b=dNRlgKPg3ucsVhBA2wsDUEMuPX3tY4jAPmTkchdG6fyPX0ypVJVN3m6tG4C3jx2dzrIGSnotvQgyQzMXFDQS+odsn1fSlZNEyZSD4EOjJYd5x+UiPdLbQM6scykQzBWP9Mynsx6KbQR3NYvCfNXein1/aDzlAcclQapWEklGkW8= Received: from AM0PR06CA0080.eurprd06.prod.outlook.com (2603:10a6:208:fa::21) by PA4PR08MB6128.eurprd08.prod.outlook.com (2603:10a6:102:f2::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.49; Fri, 10 May 2024 13:09:05 +0000 Received: from AM4PEPF00027A5F.eurprd04.prod.outlook.com (2603:10a6:208:fa:cafe::6f) by AM0PR06CA0080.outlook.office365.com (2603:10a6:208:fa::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.49 via Frontend Transport; Fri, 10 May 2024 13:09:05 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM4PEPF00027A5F.mail.protection.outlook.com (10.167.16.74) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.7544.18 via Frontend Transport; Fri, 10 May 2024 13:09:03 +0000 Received: ("Tessian outbound e46bb127ed3d:v315"); Fri, 10 May 2024 13:09:03 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 585dce84c1c95961 X-CR-MTA-TID: 64aa7808 Received: from 4039b5376dcc.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 3D4FA9CB-770D-45D2-80CF-326AC956AFAA.1; Fri, 10 May 2024 13:08:57 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 4039b5376dcc.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 10 May 2024 13:08:57 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d3yGBe0lBCcpBUm/HU4dxtkpFWsV6VoC5+SoabkHRF2ERx7r5KQw82v7zVaVcJq7+BO772NZJrp5pSXGGxnUhTENmDSH8AIWkehU3BtVyzsjdvlH2fQ8baiTn5gV1+HHU1lgF8rpeDsRCrRAqm/8hw8s9MFdljLfJJ9VKS1z682BBfT6nJbEz1KAAeeoE0pEUlmqd3I007UOtmvAkEBO6tySto2XQ/fY2hOljiStMU/TETOwvBgY1vxSrZ9jmttPhEz1qg40nnMotiAxO7hzMp6CLSfZ61LkxlzctMtP2cDDK+LbmFmh9R0cn2I16G7qHbdu8NAKm5Hg27jsy1ijbw== 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=2Wyoq/s3Q6LHsN5sVspLcHqHwCtzaK2bMY7eqkynxgM=; b=ARWW4WmRXv3hYAo2thY/SxzlFtaoh0jWlLYyezG37NUX4VqYepx6ATohsqiSqGjQdJGdq0Q18Ky5wvqIlEytP/tB5+cai9hJMwfTHA65zk+Idc6k/CjRvR5G2wbwy0kxWocHQ9H5ODoK8Wol/IUm6tb4evwfN3QGR+BwWH+4dSubGn5S7rCOmkGP/7wfAkXUcDdWFAviAadAus2Ys4zT2RBt6luk3t4EUEnQGtV6IwHt808RZ4YEUkuyb1t11o6sdRAjQPCigLj0TNSc82OX1TBgdqrdH8nr3TszaIiVJNcT6BVP7Xa6FPXuoiIg7m+mPiUAcIcr3ypOttjhWr2/ew== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2Wyoq/s3Q6LHsN5sVspLcHqHwCtzaK2bMY7eqkynxgM=; b=dNRlgKPg3ucsVhBA2wsDUEMuPX3tY4jAPmTkchdG6fyPX0ypVJVN3m6tG4C3jx2dzrIGSnotvQgyQzMXFDQS+odsn1fSlZNEyZSD4EOjJYd5x+UiPdLbQM6scykQzBWP9Mynsx6KbQR3NYvCfNXein1/aDzlAcclQapWEklGkW8= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from VI1PR08MB3919.eurprd08.prod.outlook.com (2603:10a6:803:c4::31) by AS4PR08MB7478.eurprd08.prod.outlook.com (2603:10a6:20b:4e5::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.49; Fri, 10 May 2024 13:08:55 +0000 Received: from VI1PR08MB3919.eurprd08.prod.outlook.com ([fe80::77d4:d040:b19d:6472]) by VI1PR08MB3919.eurprd08.prod.outlook.com ([fe80::77d4:d040:b19d:6472%4]) with mapi id 15.20.7544.046; Fri, 10 May 2024 13:08:55 +0000 Message-ID: <7c801423-87e1-4f96-b9d6-f754740aab26@arm.com> Date: Fri, 10 May 2024 14:08:52 +0100 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v3 5/5] gdb/testsuite: Add gdb.reverse/aarch64-mops.exp Content-Language: en-US To: Thiago Jung Bauermann , gdb-patches@sourceware.org Cc: Christophe Lyon References: <20240510052408.2173579-1-thiago.bauermann@linaro.org> <20240510052408.2173579-6-thiago.bauermann@linaro.org> From: Luis Machado In-Reply-To: <20240510052408.2173579-6-thiago.bauermann@linaro.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P265CA0065.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2af::19) To VI1PR08MB3919.eurprd08.prod.outlook.com (2603:10a6:803:c4::31) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: VI1PR08MB3919:EE_|AS4PR08MB7478:EE_|AM4PEPF00027A5F:EE_|PA4PR08MB6128:EE_ X-MS-Office365-Filtering-Correlation-Id: 31907117-7ac8-4e57-6434-08dc70f25df6 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230031|366007|1800799015|376005; X-Microsoft-Antispam-Message-Info-Original: =?utf-8?B?TFVTeC9INGY0aUpQYWtMcDVQVHN0YUdoSjRPM2h0Z1JFWlhGbzlWY0pKWVhK?= =?utf-8?B?T1FxMFRMVDQzdW9SZ2s4UWNiTjhVRGVHRVgwL2xsR1Vlem9NcnFPUkY4YzY4?= =?utf-8?B?VmF4a3M5eFpTZ0FTWE5LL2hHcVFYUDJyZjhMWElRcDNNZS93czVhMzlQak1m?= =?utf-8?B?RVU3ek1zT01OS1NxM2dSMEtoQloyUmEyNzdRYkY5OWVqRlVRYlVlMCtFWGVJ?= =?utf-8?B?dkxNRm1Od05ja1NUY2hWNDlGa1d2dUlqUnkxWVBBZjc2eXlRNkpuUnBLVWd4?= =?utf-8?B?eVNzWCtkcURQVVZCVjZLWm1TMXlqeEdic1hha3ZQakdwbDkzeTZYbitFalll?= =?utf-8?B?dXZRY1BZdGgwVmptdTFHUVRTYkZMa1psczJ2UUpDRFNQa21wVzByQkdYNWQ2?= =?utf-8?B?NG15dmlGTVdpZnJPTENvTFZHQVMwSjBIeW5CeTVjMzNLYWg1SE04VFh4QktE?= =?utf-8?B?cW9RaG1RdGtmS3NNMUYxYmlHQmIvbDNXTzYvSTF3amxvakQ1K2xtR3EwcEQ4?= =?utf-8?B?VDNoL2RScCtsejhHZHN1S0pSUkxGWkg1Uk5STDQ2Zlh4UlU0amEyekJwMER2?= =?utf-8?B?c0RRUVpRbEw2UFZ3ZDZPV0h1WjhwN1RIYUtBWTRwM3ErL2RnU3NudERJOTVu?= =?utf-8?B?UHF6bFFMRnZ0Ty9pOWlkSnROYUk5TG8rRnU2Sm9pelhPOG9RR3diWnEzR1lR?= =?utf-8?B?N25mWDMwbGN0QUYvZTRoVndZZitCMVNFWEZtczMva0ZoclhrMFhmTkxzYitG?= =?utf-8?B?aHNtZE5kR1NpZkxSdmFEUlJuQklEV1gwQ0hDUGdYOGtPbmxWVGtLaEVEeFUy?= =?utf-8?B?OFJvNERVNVlqWkdzR241elhmZXRCZmZRa3doZURDb0N0WTRVS3pYMW1zODBh?= =?utf-8?B?a2UxVDBER04zQnUvbGtyR0ZuMWR3VURyOGNvL3R1azV6TzY3M1BnRGVnaDR2?= =?utf-8?B?bVpQY01vaWpGVXZkVElzcjJ1VkNTeWo5QlhzS2ZSbkUvdHN1VS83aGJGWkZP?= =?utf-8?B?cnA5bys4R2dDSVg4MWJrTXN2ck1yajV5QXRYQ0hjYW1KUVhMQlJScm5GOWRS?= =?utf-8?B?TzdtTjN5cFRjOUZFK2trMisyYm1pVC9XaTlmenRvcGFZNDIwZU1DYVBoOTNT?= =?utf-8?B?N2UrS2Urdi9Rc3RPY0twdG8yTDUzRUs4c1EzZFRkcUN6bDRxYnd6SFptbHYr?= =?utf-8?B?Q0I5L1VkSVRsODM3YUlIRmNkem51UzhKRy9qVERYNjY2REVzVng2bkNJYlBV?= =?utf-8?B?djhMYitvSG5CenJQME93SDVreW5pRE00a0tKL1RsMUJMRXVtTnIxb3V3RDhW?= =?utf-8?B?cHd4VlEycU5xUlc0MCthNHVYSlNHaG5FUndsVkxHTnpHa1JNR2YzUEYwSlRl?= =?utf-8?B?TUlCQ1RUTnkvMDBRdFVtYUZpazRyQnNRSHVpelRMNHFaRlVrVUlLWmRuQUx5?= =?utf-8?B?ZThZQisyaXRTYjlSZE9MbUxrOHh5U1JlRTQ1dUtlbkVCZHZ0V3VNc0RoNEY4?= =?utf-8?B?aU52RXV6TVpSYUR6RDVnNC93T1J4S2dnOGJRTDVtNXRIdFNBck8vYUY3bVJv?= =?utf-8?B?TGpFbWowZVg4aFR2V0hRandnSzZ2UG9qZ2RsSUE5SjdnVDBGTnBUZ2VZVUh3?= =?utf-8?Q?BYCtEvyZmV9RrmP55hXpFIzKNddcdiMaw2nXhyMGL6vQ=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3919.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(1800799015)(376005);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7478 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM4PEPF00027A5F.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: f288d0f6-25dd-4cf8-921f-08dc70f25890 X-Microsoft-Antispam: BCL:0;ARA:13230031|35042699013|82310400017|36860700004|376005|1800799015; X-Microsoft-Antispam-Message-Info: =?utf-8?B?TE04OERXRzVBWWx2Q2xpbVMvTno2eEZSV0VjWEV5bit3SG5KOTdNMjFCSmd5?= =?utf-8?B?MS9mM0xlSlRXNjluTWpqa01RUEt1aXcwV0U3OFBCYlZzb21GNTlaODhLK0ha?= =?utf-8?B?eW15aU5KeExmUUVlL2g2dHZMYUtCSGJJSEhLY1gvWmI1V0FzK2dmb3FIWmY1?= =?utf-8?B?Vy9CbGhDMlFEV09mYlZDNjRubUMyOUt0b2UwS2pJUHgwZTJpbnhHTU5GN3Fi?= =?utf-8?B?L2MzY0M0N2NDSzBoZldVWDNVSzdleEpDb0pmRUh5dE9PcGZOMGVXQUMvY2Mr?= =?utf-8?B?TjdYUUVTZGk1ZC9FL0ZaZ1h4WkRacG54bjVvOEpLZzdwUlNoazhIRktrR0Ex?= =?utf-8?B?amlndWRIQTE2Q3h5M0MyRE1kQXJVajRyUHh1dkZ6R0k0bzB5Q0NlZ0w4TVBz?= =?utf-8?B?RWhSQ0ZsRU56OC9SaERkSmFSTEsxb2piVUdoblFtZEo4OFMvdnVhR0wyMG5Q?= =?utf-8?B?QjlrVkt4V25hTEpiWWRBWmpCSHE2R1N2a3ZBdkNVSVNldEF1bjluN2M4ckVy?= =?utf-8?B?NlRmcGRIcCs2a3d3aitSRHFhamU2cjg3bUVyM1N2dC9ab0FFTmdreVp2VThQ?= =?utf-8?B?a1IydjllQUx4aGo4VlRRa0djYnJ3OTY2Y3ByRXBNM1JLcWpIS2EySWRNY2Nq?= =?utf-8?B?Y3hSQzZ4ZlJWZzFjcWFza3pFb3NZMm9POVZiNFgyRW9KTmMzTStsUTBEVDFH?= =?utf-8?B?c2hNSENFcTRjL3EraDcxOS9SajFVbnZvbmxTSEhpQ2Z4NjJLN2ttdGxkcjNr?= =?utf-8?B?YnBudlBtcFFpbkR2b1F5RjBURkxBVWd6ZzVLUkVsTUh1S0dsbUg1R0E0T2ZX?= =?utf-8?B?S2thNWFJZE1pZ28wb3ZENnFXbmNZaGZxd0xYM0o5d205UUVrRm5IbGZWdzNm?= =?utf-8?B?dVcyWXRzUHRRb1paMTByQitONTRDN1VOTXRxTGVYMWVCbkxlYWlwbzFnTC8r?= =?utf-8?B?UVk3RCtHSUp1S2hEaC95SjRLNjd0VjJYU3BVeUwvekN5MjRzRklUL200d2ZE?= =?utf-8?B?dVRFbDlvV2U4dStHSGpPbC8yNFVHeG1yMDIyb0xZV0ZXYzNKTFUyajRCVjlw?= =?utf-8?B?djNoVUZtM0VhNUU0L0ZabFFBN1d3TFZIbVI0OUtCNGV3clhYbklYZWt4OE9h?= =?utf-8?B?RWZHU3lOLytReGtSOHNzNXZLajhSMGVrcHAzV1BFT2kyaTNxZkZyRWVHRGtK?= =?utf-8?B?MHplOFRXNnRhZlNCM0JmMHM1WmJnTmNtYzVaZHJDeVNwTVh2ei81aXA3bDlU?= =?utf-8?B?bG5NNmo1R0l2MnRBZWZ6cFp1VHU5MXJTbzhHUlg1SEVUVVcyZEJyREE2Nk54?= =?utf-8?B?VUF6QzFpclIvYVBVWmtUbHFob1FZY2JsRlNwTVF4TkNoU3BhMytGYm01YUsy?= =?utf-8?B?djUxUDgza2NxZ1EyMTFiRFlVOGNpSHA3Q0d4YndBOGtKT25qMnF4SThOaVJH?= =?utf-8?B?c1lqemhqTktQdDJkd213V2pVVFJuK0hyVEdXeG1NNm82QU1XWkFlZEtPNDlV?= =?utf-8?B?ZGZpVjM4RkN1NnJzeFdsaHU3b20vUXBqUnZtbWZpTHdaaDdkOFRGQ3IzRTNh?= =?utf-8?B?VXFLWjhHbUVnN2x4ZUdlR3htbHU5WEVxaEhPTi91aFdVVFR0alB6R1NObTZi?= =?utf-8?B?bGJmZDlYU3g4d1BjRDZYTWtkNWo5b1JPQk9tOEdGeWZVaWpXdFJCMHcrUU9q?= =?utf-8?B?VVJTQ0czdmVxb3NvMkNIV2hWOGpqRjJVaERDUVBSOTgrbHpqS0NPUmJ5KzFR?= =?utf-8?Q?gugWQISCWHdzeyDI8EpYyWXpcJrL03+zSVLg9Xx?= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(35042699013)(82310400017)(36860700004)(376005)(1800799015);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 May 2024 13:09:03.9811 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 31907117-7ac8-4e57-6434-08dc70f25df6 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM4PEPF00027A5F.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6128 X-Spam-Status: No, score=-11.3 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FORGED_SPF_HELO,GIT_PATCH_0,KAM_SHORT,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Thanks. Looks OK to me. On 5/10/24 06:24, Thiago Jung Bauermann wrote: > The testcase verifies that MOPS instructions are recorded and correctly > reversed. Not all variants of the copy and set instructions are tested, > since there are many and the record and replay target processes them in > the same way. > --- > gdb/testsuite/gdb.reverse/aarch64-mops.c | 71 +++++++++ > gdb/testsuite/gdb.reverse/aarch64-mops.exp | 171 +++++++++++++++++++++ > 2 files changed, 242 insertions(+) > create mode 100644 gdb/testsuite/gdb.reverse/aarch64-mops.c > create mode 100644 gdb/testsuite/gdb.reverse/aarch64-mops.exp > > No change since v1. > > diff --git a/gdb/testsuite/gdb.reverse/aarch64-mops.c b/gdb/testsuite/gdb.reverse/aarch64-mops.c > new file mode 100644 > index 000000000000..513f324b9dd6 > --- /dev/null > +++ b/gdb/testsuite/gdb.reverse/aarch64-mops.c > @@ -0,0 +1,71 @@ > +/* This test program is part of GDB, the GNU debugger. > + > + Copyright 2024 Free Software Foundation, Inc. > + > + This program is free software; you can redistribute it and/or modify > + it under the terms of the GNU General Public License as published by > + the Free Software Foundation; either version 3 of the License, or > + (at your option) any later version. > + > + This program is distributed in the hope that it will be useful, > + but WITHOUT ANY WARRANTY; without even the implied warranty of > + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + GNU General Public License for more details. > + > + You should have received a copy of the GNU General Public License > + along with this program. If not, see . */ > + > +#define TEST_STRING "Just a test string." > +#define BUF_SIZE sizeof(TEST_STRING) > + > +int > +main (void) > +{ > + char dest[BUF_SIZE]; > + char source[BUF_SIZE] = TEST_STRING; > + register char *p asm ("x19"); > + register char *q asm ("x20"); > + register long size asm ("x21"); > + register long zero asm ("x22"); > + > + p = dest; > + size = BUF_SIZE; > + zero = 0; > + /* Before setp. */ > + /* memset implemented in MOPS instructions. */ > + __asm__ volatile ("setp [%0]!, %1!, %2\n\t" > + "setm [%0]!, %1!, %2\n\t" > + "sete [%0]!, %1!, %2\n\t" > + : "+&r"(p), "+&r"(size) > + : "r"(zero) > + : "memory"); > + > + /* After sete. */ > + p = dest; > + q = source; > + size = BUF_SIZE; > + /* Before cpyp. */ > + /* memmove implemented in MOPS instructions. */ > + __asm__ volatile ("cpyp [%0]!, [%1]!, %2!\n\t" > + "cpym [%0]!, [%1]!, %2!\n\t" > + "cpye [%0]!, [%1]!, %2!\n\t" > + : "+&r" (p), "+&r" (q), "+&r" (size) > + : > + : "memory"); > + /* After cpye. */ > + p = dest; > + q = source; > + size = BUF_SIZE; > + /* Before cpyfp. */ > + /* memcpy implemented in MOPS instructions. */ > + __asm__ volatile ("cpyfp [%0]!, [%1]!, %2!\n\t" > + "cpyfm [%0]!, [%1]!, %2!\n\t" > + "cpyfe [%0]!, [%1]!, %2!\n\t" > + : "+&r" (p), "+&r" (q), "+&r" (size) > + : > + : "memory"); > + /* After cpyfe. */ > + p = dest; > + > + return 0; > +} > diff --git a/gdb/testsuite/gdb.reverse/aarch64-mops.exp b/gdb/testsuite/gdb.reverse/aarch64-mops.exp > new file mode 100644 > index 000000000000..f9c1257e0b11 > --- /dev/null > +++ b/gdb/testsuite/gdb.reverse/aarch64-mops.exp > @@ -0,0 +1,171 @@ > +# Copyright 2024 Free Software Foundation, Inc. > + > +# This program is free software; you can redistribute it and/or modify > +# it under the terms of the GNU General Public License as published by > +# the Free Software Foundation; either version 3 of the License, or > +# (at your option) any later version. > +# > +# This program is distributed in the hope that it will be useful, > +# but WITHOUT ANY WARRANTY; without even the implied warranty of > +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > +# GNU General Public License for more details. > +# > +# You should have received a copy of the GNU General Public License > +# along with this program. If not, see . > + > +# Test instruction record for AArch64 FEAT_MOPS instructions. > +# Based on gdb.reverse/ppc_record_test_isa_3_1.exp > +# > +# The basic flow of the record tests are: > +# 1) Stop before executing the instructions of interest. Record > +# the initial value of the registers that the instruction will > +# change, i.e. the destination register. > +# 2) Execute the instructions. Record the new value of the > +# registers that changed. > +# 3) Reverse the direction of the execution and execute back to > +# just before the instructions of interest. Record the final > +# value of the registers of interest. > +# 4) Check that the initial and new values of the registers are > +# different, i.e. the instruction changed the registers as expected. > +# 5) Check that the initial and final values of the registers are > +# the same, i.e. GDB record restored the registers to their > +# original values. > + > +require allow_aarch64_mops_tests > + > +standard_testfile > + > +if { [prepare_for_testing "failed to prepare" ${testfile} ${srcfile} \ > + [list debug additional_flags=-march=armv9.3-a]] } { > + return -1 > +} > + > +if ![runto_main] { > + return -1 > +} > + > +gdb_test_no_output "record full" > + > +proc do_test { insn_prefix } { > + global decimal hex > + > + set before_seq [gdb_get_line_number "Before ${insn_prefix}p"] > + set after_seq [gdb_get_line_number "After ${insn_prefix}e"] > + > + with_test_prefix $insn_prefix { > + gdb_test "break $before_seq" \ > + "Breakpoint $decimal at $hex: file .*/aarch64-mops.c, line $decimal\\." \ > + "break before instruction sequence" > + gdb_test "continue" \ > + [multi_line \ > + "Continuing\\." \ > + "" \ > + "Breakpoint $decimal, main \\(\\) at .*/aarch64-mops.c:$decimal" \ > + "$decimal\[ \t\]+__asm__ volatile \\(\"${insn_prefix}p \[^\r\n\]+\""] \ > + "about to execute instruction sequence" > + > + # Record the initial register values. > + set x19_initial [capture_command_output "info register x19" ""] > + set x21_initial [capture_command_output "info register x21" ""] > + > + # The set instructions use the ZERO variable, but not Q, and the other > + # instructions are the opposite. > + if {[string compare $insn_prefix "set"] == 0} { > + set x22_initial [capture_command_output "info register x22" ""] > + } else { > + set x20_initial [capture_command_output "info register x20" ""] > + } > + > + gdb_test "break $after_seq" \ > + "Breakpoint $decimal at $hex: file .*/aarch64-mops.c, line $decimal\\." \ > + "break after instruction sequence" > + gdb_test "continue" \ > + [multi_line \ > + "Continuing\\." \ > + "" \ > + "Breakpoint $decimal, main \\(\\) at .*/aarch64-mops.c:$decimal" \ > + "$decimal\[ \t\]+p = dest;"] \ > + "executed instruction sequence" > + > + # Record the new register values. > + set x19_new [capture_command_output "info register x19" ""] > + set x21_new [capture_command_output "info register x21" ""] > + > + if {[string compare $insn_prefix "set"] == 0} { > + set x22_new [capture_command_output "info register x22" ""] > + } else { > + set x20_new [capture_command_output "info register x20" ""] > + } > + > + # Execute in reverse to before the instruction sequence. > + gdb_test_no_output "set exec-direction reverse" > + > + gdb_test "continue" \ > + [multi_line \ > + "Continuing\\." \ > + "" \ > + "Breakpoint $decimal, main \\(\\) at .*/aarch64-mops.c:$decimal" \ > + "$decimal\[ \t\]+__asm__ volatile \\(\"${insn_prefix}p \[^\r\n\]+\""] \ > + "reversed execution of instruction sequence" > + > + # Record the final register values. > + set x19_final [capture_command_output "info register x19" ""] > + set x21_final [capture_command_output "info register x21" ""] > + > + if {[string compare $insn_prefix "set"] == 0} { > + set x22_final [capture_command_output "info register x22" ""] > + } else { > + set x20_final [capture_command_output "info register x20" ""] > + } > + > + # Check initial and new values of x19 are different. > + gdb_assert [string compare $x19_initial $x19_new] \ > + "check x19 initial value versus x19 new value" > + > + # Check initial and new values of x21 are different. > + gdb_assert [string compare $x21_initial $x21_new] \ > + "check x21 initial value versus x21 new value" > + > + if {[string compare $insn_prefix "set"] == 0} { > + # Check initial and new values of x22 are the same. > + # The register with the value to set shouldn't change. > + gdb_assert ![string compare $x22_initial $x22_new] \ > + "check x22 initial value versus x22 new value" > + } else { > + # Check initial and new values of x20 are different. > + gdb_assert [string compare $x20_initial $x20_new] \ > + "check x20 initial value versus x20 new value" > + } > + > + # Check initial and final values of x19 are the same. > + gdb_assert ![string compare $x19_initial $x19_final] \ > + "check x19 initial value versus x19 final value" > + > + # Check initial and final values of x21 are the same. > + gdb_assert ![string compare $x21_initial $x21_final] \ > + "check x21 initial value versus x21 final value" > + > + if {[string compare $insn_prefix "set"] == 0} { > + # Check initial and final values of x22 are the same. > + # The register with the value to set shouldn't change. > + gdb_assert ![string compare $x22_initial $x22_final] \ > + "check x22 initial value versus x22 final value" > + } else { > + # Check initial and final values of x20 are the same. > + gdb_assert ![string compare $x20_initial $x20_final] \ > + "check x20 initial value versus x20 final value" > + } > + > + # Restore forward execution and go to end of recording. > + gdb_test_no_output "set exec-direction forward" > + gdb_test "record goto end" \ > + [multi_line \ > + "Go forward to insn number $decimal" \ > + "#0 main \\(\\) at .*/aarch64-mops.c:$decimal" \ > + "$decimal\[ \t\]+p = dest;"] > + } > +} > + > +do_test "set" > +do_test "cpy" > +do_test "cpyf"