From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id ua47AwkPiGl4ry8AWB0awg (envelope-from ) for ; Sat, 07 Feb 2026 23:20:25 -0500 Authentication-Results: simark.ca; dkim=pass (1024-bit key; unprotected) header.d=amd.com header.i=@amd.com header.a=rsa-sha256 header.s=selector1 header.b=GilBowSI; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 05AB01E0BA; Sat, 07 Feb 2026 23:20:25 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,RCVD_IN_VALIDITY_CERTIFIED_BLOCKED, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED autolearn=ham autolearn_force=no version=4.0.1 Received: from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 6CA821E089 for ; Sat, 07 Feb 2026 23:20:23 -0500 (EST) Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id EDA8648F36AF for ; Sun, 8 Feb 2026 04:20:22 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EDA8648F36AF Authentication-Results: sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=amd.com header.i=@amd.com header.a=rsa-sha256 header.s=selector1 header.b=GilBowSI Received: from CY3PR05CU001.outbound.protection.outlook.com (mail-westcentralusazlp170130007.outbound.protection.outlook.com [IPv6:2a01:111:f403:c112::7]) by sourceware.org (Postfix) with ESMTPS id 8211B48F3EB5 for ; Sun, 8 Feb 2026 04:19:51 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8211B48F3EB5 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=amd.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8211B48F3EB5 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:c112::7 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1770524391; cv=pass; b=i3aW+jwbLFau32ibrdFFbBYsqPQQXRum0sPm8wHMLgiLIU2BaZG6AM4DWY644rB7MQDO5nEv77teEqSvhDJWWBvqbK4IknpSPwY4rxxLUzoIG5k4EsAPwVbpKAIqv0ZCRDpHHNwLlRTzIke8c93AHkngfCyPO2gSbuf/sxtOeEw= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1770524391; c=relaxed/simple; bh=yzXxz9OCCJzMxBuAawl5U72Bm289oIDC2bb6tsT2vUI=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=YDMB55c+5bd4BJHv/ityMvB5aGL4Ww8h0NxfmwKazj7qxGVqkb18WC+nd+zKxRh2w0cuvzzWouidHXhRysSZP5OzR/s6Gug0I4icX6FoMzno1OZ1nYY3+1vL2IJk53oBkIqg3NYDn3UOVnQIfxeMSswK3u1GEQw6MZHjc8++HqA= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8211B48F3EB5 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=A6cFcpMyrk351BniNb5VBS8n750ZrOOcZdXD4r1fskC7N35EUmrjtVB2OqmN2rpJ8cWyTdkra2jVUUofud58/QUj5OLQVbJcbkq9+/y5CJi5AZD+Sfw+avAqdfJdtnnVd7ydItNxiwk2UfOulb6mXlsY+mAMW5NkJ7eMmdA9iuPJqLWTIHVG3vbkytS/P6RjT71tn8U0P6z2Ll1+PIM3QlRMADxgJ6D9eH7Qr+/66p2xCOcVynrtZWgDeEsRbwY7UeV1kQ/iqM52fPHM1Txcnidhf/lM+Ezj4GHc601wKgzkV4m7IiVACdgxKZdXfzAbaaax6H3hATKgwE0EUcIHqg== 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=CcCEhsTIIIjS/n+xgHfzST+G14AnJZpzXxXbJs4ABws=; b=O5Vr/v6Woup5qUInqOrE+dSpCwY5EgfDt/iNnCl+jG1Scrj1BxK04V0F/Pf+h/+fyjccGqOozqoPrjQEdBp+IR/XZaJgVWm7fWADNOf610FBGRSV+dB+3A8D8dZCOcDoODSE+IDj3HVCAXpAXuXMIr6MfH6c1TPIjd0hAlkkL7cTIIov5N6NmczFlXK4tndV6qxrLdulNT8tJmLhMhRwcUHHMTPBNvMQm9Yr6hZvs+E1jwKYd8sRb3rWri2GH5GhOoCcKsjYWwLMU0sYtUZ8m4e+BLJHlbgIv/Sxl/oqkoAooJL1XwvpK9QZRmYW+TMbF8ik8Rr+qEKItiA2Bd8zjg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=sourceware.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CcCEhsTIIIjS/n+xgHfzST+G14AnJZpzXxXbJs4ABws=; b=GilBowSIvUl5UF1M7SqJM3G+YM0xHhmxxicS7IEtRM/fSJhqwxeLQ1syNzGoD13vw5RNQAoQJ2yl6r/nnqkeGsE7U1CDdy7gi++qwBC7whs1vKCZ27IVE7Tlb+g5i2LddkKPy+nHf87FrFoQBls5Efc8uynsiCbuCUb+jQNwous= Received: from CH3P220CA0007.NAMP220.PROD.OUTLOOK.COM (2603:10b6:610:1e8::35) by DM6PR12MB4186.namprd12.prod.outlook.com (2603:10b6:5:21b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9587.15; Sun, 8 Feb 2026 04:19:42 +0000 Received: from DS3PEPF000099D8.namprd04.prod.outlook.com (2603:10b6:610:1e8:cafe::e3) by CH3P220CA0007.outlook.office365.com (2603:10b6:610:1e8::35) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9587.18 via Frontend Transport; Sun, 8 Feb 2026 04:19:40 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=satlexmb07.amd.com; pr=C Received: from satlexmb07.amd.com (165.204.84.17) by DS3PEPF000099D8.mail.protection.outlook.com (10.167.17.9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9587.10 via Frontend Transport; Sun, 8 Feb 2026 04:19:42 +0000 Received: from vignesh-genoa.amd.com (10.180.168.240) by satlexmb07.amd.com (10.181.42.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Sat, 7 Feb 2026 22:19:39 -0600 From: Vignesh Balasubramanian To: , , , , , Subject: Date: Sun, 8 Feb 2026 09:48:14 +0530 Message-ID: <20260208041850.750817-1-vigbalas@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: satlexmb08.amd.com (10.181.42.217) To satlexmb07.amd.com (10.181.42.216) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS3PEPF000099D8:EE_|DM6PR12MB4186:EE_ X-MS-Office365-Filtering-Correlation-Id: 31958522-a97b-45a2-e03c-08de66c9485e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|36860700013|82310400026|376014|1800799024|13003099007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?w7u7JqXEnse3jtWZXlpO5chivpTBbGlJHrPHnBCA+x3CgI7fSrWpCgE2bQtK?= =?us-ascii?Q?l8plVdt/2StEtGwavzzjl4+GfAjN/uaMY6/ejyImZpqwouvhpQVyOiG8u45s?= =?us-ascii?Q?EeY4XPxI1BVg+CrEOBXvkofSbCEuSnefbRdjp2rS/XqQue+pf+IV8fIXLROh?= =?us-ascii?Q?KWqKuVaw/ZvXRiu4+2hLiZwGcTRYxCFY0iu6qEmF7Br9UrMeXOhbSa2PuNAU?= =?us-ascii?Q?9YC9G3I7moi4dixMhQ0PMOOobOXLW5VHs4cz+Mmph4yIqV2LA/il7S3gkStg?= =?us-ascii?Q?ES6UCBOrqQtLXfEm/x2YuYE+CdUVJEcRB+Q8pRBKwKOuLPjTPeOuCf4upWY4?= =?us-ascii?Q?yxNoNAUuUrXulxQvD4E+0f1A7KHkE8C0+NSi9iPfzxP2E+8oXdsGNhLmDcCM?= =?us-ascii?Q?DujMKqJgWCoGU/q4SoDqdGqH/+oPyVC80iE+XcYIor8/3bnXp+Vi5/UJ7+tB?= =?us-ascii?Q?jb3DFG3KlHqrUbri5azTOPUAhY70qWOg88QwgEPS4+i5O9n3RVTfS89hqMU/?= =?us-ascii?Q?sIX9x/tAYNceqORk9mJYBr6DnXMEJfO2GFuJ12dBSOuCcp0XoKOQA7U0dRGe?= =?us-ascii?Q?X7dmiYA1n5brWkh2fUoLwFpSYknXl1tePoxVY+ZMIDMTMvWPR7TlnOzd7/O0?= =?us-ascii?Q?PkJuV7AZMFnXjrrwwBjuTL2CgW4OLV825MFJvWv1G5BiXRR5WvgZYagw40Hy?= =?us-ascii?Q?rtG/YpLtF/t2GU8Ce49dsu1w11J+YX00mzKKFKPbeWZkoiN7S9L+rJwINxck?= =?us-ascii?Q?4N/eKFGqsNd9sOZtbz4zqgbaXCvyJMkXV/stng7515zjGrBSgZsqKVPj3XYi?= =?us-ascii?Q?3qijnG4LtiQReS7MC/voDNLZugDYl51qHmYEy8Y3QnsWg2mMi132PzD/Wcfz?= =?us-ascii?Q?mryzuMO/6I1n5pB+LoG3+wzK3cdRAZ1QyBFqz2G/SxvNH9rWEEvTNWkV9MLK?= =?us-ascii?Q?ywA7mkkLV/+KxN7BfpJ35BunRomjf6G8LCMnm0lffL4HVAYUHiawxeqarqQ3?= =?us-ascii?Q?W9YbybmJ1v79vhKcKwKu9YpwnD51WnuuRdZdIauKtd0jE0LQ9c8utIpbVLm2?= =?us-ascii?Q?Vz3zmzmOYykznfbDEZ3fLw4RIRXKC45tEGdC11Ny3JU9LKslco3HUouvqzU2?= =?us-ascii?Q?udTU7K1UmndU3IXHQW1a8zCm9L0x7i95HMvmzxHYi2MFvWJutSju+uSCfzpR?= =?us-ascii?Q?UN2vqP2aHUSN29nHYq/+OKCbJ+cE7bkwGJYL7iENtaF/z0zor5Vm3vFCgK+h?= =?us-ascii?Q?ZBtMjKBL6Znj+Vh+a2O+VTAspoqQ1+syOr6UziULY2XcGWh2Rz0L2ha7IjD6?= =?us-ascii?Q?YhZOK+iTGoJV6jY1QMdK4oh7AwxVWO/OBWRYdqXLUaJXjhGTPqGCjPGFK5kS?= =?us-ascii?Q?a5fqPTKqHC9u5gKwcVmpAEjPqgtXT7LNjKBaXyckiFOmrHHc2H7W4FJhr4Q2?= =?us-ascii?Q?9ZNjTPQ8MGFpgs7SGCogz2qByISCLQnLYOhHTQT3VNLeaSaSTb49FXxltRlQ?= =?us-ascii?Q?T0xBp8wZZXXyJlt2R0eF5/zaZEKLh7PNajWyKOttfhgf19QHFkfe68VTFRb/?= =?us-ascii?Q?y0kqtoCDWGaPOvRiSV02HaPMXdUdbgH63v4iWThcZ6n1l5do70EyXCjC089f?= =?us-ascii?Q?MG2N3e58Psg5jl6BhU+BslX/P81/3O8+pHnmJbOr9MDkZt6TbF+qWobo7Pb4?= =?us-ascii?Q?RXyoDA=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:satlexmb07.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230040)(36860700013)(82310400026)(376014)(1800799024)(13003099007); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: asj+xdyFCfQTf2M6UU3bvlIePBF2x/mlr53L6Y7T844o1H6J/dNPj0MZOL5DSJbJAR103pgi1rOFWmtkikrH3OTiVlBF1W1xywyG4B1GsuRKqiZka67OTPX7hU2srZxoTpsqAjTuzjOyeKhpwB9z0FWq3KB2k215w1p1c75hrGfOaQ25ccln9FgKmNZFbaYjrBR8gJICkvdcmvh7HGzCmEZG0pqwMDfiNYIcjEwtO/QofVEnWFgu3tnfCB+QfMnYnfhL0ZgvxbYbrwumXhiSlnV2wAYZ1etJJG6rxVIkfAchEho9E8fz/4auwZz9581Yt4pwnTDGBcaysxPh48Ffs3z7uragrAo94Kt1cDbXNjck6fz3lvOlu4bJ+7Lrw7J2kcM5pku5Fk1kk/mZddYPiaYo3Y54EwKTUlAALmTVfkUwtd4NP8hbCVTfSMUheINW X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Feb 2026 04:19:42.1345 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 31958522-a97b-45a2-e03c-08de66c9485e X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[satlexmb07.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DS3PEPF000099D8.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4186 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org The test validates two things: (1) the gcore component that generates a kernel-like core note using the gcore command, and (2) the gdb component that internalizes that note via "maint info sections". The test does not depend on the OS version. The test is currently unsupported under gdbserver because support for target-specific core notes for remote targets is not yet implemented. Updated the patch with distinct functions and to improve error handling. Please share your comments, i will send v4 with this test case. >From 2d7bde97ed90f43bfb18e83beb9ebec2ce22b7d2 Mon Sep 17 00:00:00 2001 From: Vignesh Balasubramanian Date: Sun, 8 Feb 2026 09:03:43 +0530 Subject: [PATCH] Test case to validate the new .note section NT_X86_XSAVE_LAYOUT This test case is divided into 3 parts. First, it calls gdb on a small program and dumps a core file through the 'gcore' command. Second, load the generated core file into gdb and invoke "maint info sect .reg-xsave-layout" to learn the offsets of xsave features from the new .note section in the core file and size of the note. Third, invoke another program, with core file and its information, which validates the value of xsave feature records inside the .note section using cpuid instruction. So it validates both the core consumption(Patch-1) and generation through gcore(Patch-2). Co-Authored-By: Jini Susan George --- gdb/testsuite/gdb.arch/x86-xsave-layout.c | 120 ++++++++++++++++++ gdb/testsuite/gdb.arch/x86-xsave-layout.exp | 131 ++++++++++++++++++++ 2 files changed, 251 insertions(+) create mode 100644 gdb/testsuite/gdb.arch/x86-xsave-layout.c create mode 100644 gdb/testsuite/gdb.arch/x86-xsave-layout.exp diff --git a/gdb/testsuite/gdb.arch/x86-xsave-layout.c b/gdb/testsuite/gdb.arch/x86-xsave-layout.c new file mode 100644 index 00000000000..6d127af151b --- /dev/null +++ b/gdb/testsuite/gdb.arch/x86-xsave-layout.c @@ -0,0 +1,120 @@ +/* Test program for .note section that contains XSAVE layout description + in core files. + + Copyright 2021-2025 Free Software Foundation, Inc. + + This file is part of GDB. + + 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 . */ + +#include +#include +#include +#include "nat/x86-cpuid.h" + +#define XSAVE_LEAF 0xD + +struct x86_xfeat_component +{ + uint32_t type; + uint32_t size; + uint32_t offset; + uint32_t flags; +}; + +#define FAIL_IF(x) if (x) { \ + printf("Record Mismatch."); \ + exit (1); } + +/* This function read xsave feature records present in the .note of core + file and compare it with value of cpuid instruction. */ + +void +read_and_test_cpuid_records (const char *core_path, unsigned file_off, + unsigned note_size) +{ + FILE *fp = fopen (core_path, "rb"); + + fseek(fp, file_off, SEEK_SET); + + struct x86_xfeat_component *xsave_layout_desc = (struct x86_xfeat_component *) + malloc (note_size); + if (fread(xsave_layout_desc, 1, note_size, fp) != note_size) + { + printf ("Couldn't read records from core file\n"); + free (xsave_layout_desc); + fclose(fp); + exit(1); + } + + int num_records = (note_size / sizeof(struct x86_xfeat_component)); + + unsigned int eax=0,ebx=0,ecx=0,edx=0; + for (int i=0; i. + +# Program x86-xsave-layout.c is compiled and invoked with args +# gcore file "x86-xsave-layout.gcore", offset at which cpuid record starts +# and size of cpuid records to validate the .note section. + +require {is_any_target "x86_64-*-linux*"} + +# target-specific core note functionality has not yet been implemented for remote +# targets, so gdbserver doesn't dump this note. +require !gdb_protocol_is_remote + +standard_testfile + +set options [list c++ debug \ + additional_flags=-I$srcdir/../ \ + additional_flags=-I$srcdir/../../ ] + +if { [build_executable "failed to prepare" $testfile $srcfile $options] } { + return +} + +# Dump a core file throug gcore. +proc test_dump_native_core { corefile } { + + if {![gcore_cmd_available]} { + unsupported "gcore command not available" + return 0 + } + + clean_restart $::testfile + if {![runto_main]} { + return 0 + } + + if {![gdb_gcore_cmd $corefile "dump core"]} { + return 0 + } + + gdb_exit + + return 1 +} + +# Use "maint info section" command to find the new note section and +# offset at which stored in file as well as size of it. +proc get_note_offset_size {corefile} { + clean_restart + + if { $corefile eq "" } { + unsupported "unable to generate core file" + return + } + gdb_core_cmd $corefile "load corefile" + + set xsave_record [capture_command_output "maint info sect .reg-xsave-layout" ""] + + set info_line [lindex [split $xsave_record "\n"] 2] + set info_line_substr [regexp -all -inline {\S+} $info_line] + set offset [regsub ":" [lindex $info_line_substr 3] ""] + set size [lindex [split [lindex $info_line_substr 1] "->"] 2] + + return [list $offset $size] +} + +# Compare the the data in core file with the output of CPUID instruction. +proc compare_gcore_cpuid {corefile offset size} { + clean_restart $::testfile + + gdb_test "set args $corefile $offset $size " + + if {![runto_main]} { + return + } + + # Look for "Records matches with CPUID" + set test "Compare CPUID Records" + gdb_test_multiple "continue" $test { + -re "Records matches with CPUID" { + pass $test + } + } +} + +# Dump core file through gcore command. +# Find the offset and size of the note section and compare it +# with the output of CPUID instruction. +proc test_gcore_xsave_layout_note {} { + + set corefile [standard_output_file ${::testfile}.gcore] + + #Dump a gcore file + if {![test_dump_native_core $corefile]} { + unsupported "Core dump failed" + return + } + + set offset 0 + set size 0 + + if { $corefile eq "" } { + unsupported "unable to generate core file" + return + } + + #Find offset and size of a xsave layout note in the corefile + lassign [get_note_offset_size $corefile] offset size + + if { $offset eq "" || $size eq "" } { + fail "No xsave layout note section present in core file." + return + } + + compare_gcore_cpuid $corefile $offset $size +} + +#test +test_gcore_xsave_layout_note -- 2.34.1