From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2063.outbound.protection.outlook.com [40.107.105.63]) by sourceware.org (Postfix) with ESMTPS id E7BE83858D3C for ; Fri, 24 Nov 2023 11:22:07 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E7BE83858D3C 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 E7BE83858D3C Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.105.63 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1700824929; cv=pass; b=lzVytFUItwWC5dmuAU0hIkOJIr59Q49b8jWg0tjhpDgvKmEYsavE/7eDDQQ/vLGmuOYB4xsjXBf5UkIZzL4NcLW2CbcK/uhTPYx8TsvQgV5cvdk9A/pA33SpEnys2rNUlxIrVddADXm5vFzHi0bKHCQUoVbogw0tW7m551cV5r0= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1700824929; c=relaxed/simple; bh=5Bz4GCCawceH1+mOXAURbhfgO0b5426T9SYcZqCAoZU=; h=DKIM-Signature:DKIM-Signature:Message-ID:Date:Subject:To:From: MIME-Version; b=G2+UJrOXwJxqt+bDUR2Ncu6D2EwogxEoVsYrZ7E1zgF+qQA6Uv+FMQnkzAUQ75KYWyjWNXjJ6H2ZUDNdqhb5hgsQja7/h9VRAYKK15yK4PwhFYuSM5jbdhHtX+rUSvl8auWA123x+uWYGFdZSwPVId8OugLrTc6WIhkc0AEWThQ= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=nsUmzUMqitzSt3IQbmIfH4KS51OvKbmKV/H4cDN595/uZlQdQtMmJOO2ziUwVNxnX2Nye3lqH0+ER3kqb45tyTiiJPnnRUce/HqekPZ01by3LtMY16HFkCSLiNnOiy5sCFRdFym/p1UK6qEsvnJi2SQNQ76l1jnKVAyUfIe5wah9ZN2Nk9Wa6fiKBN2NioD+9vfbSWm31hq0Nv21lhzb9KApCn4TxK9v5XEkEcjjbDupWiEGMBA6LkY45HN7B3447+fpVSdxYImjQEettEFlIrkUmP8q55YlwBIcCDfV0bXhIyw0GWe7exukUkjX+w4O8oAMKjEORW/xfikc/7cyBg== 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=HtlqCgt9Crp478FKT9anH+96ic/jKZq9UhWMEhkBGGg=; b=Gx+wJoDv2IPAn7fLxFoEN/FM9rtwSIk1Kf7KKDmsEcSoRtQAOTEcKhoszG+VYFLyDBh4kjzkaF8BKE3B8nnN2NSlqJYGRdvovH3Ci/oYFUclIptZxu04kduuwhlFPXJ9g5Fo7T7WOsz0psge2LHm1XBNSqOCTtjihk8IuanusT+usJ9NZGP97iz8uJPVEY+76W8+8L0goF0fW43VwlLk/QBQRNckuKF7qgIapCRT3t+g1V8mpSS/GeSVfkAvM7bUbu9dzPURB9p4I8pqpT1PPbLo6NzGDa8rjXcjpbEI6QfJM3w5lxlcu5uCltfI7QS1LArE5MMd0tzxfm4ySH84hA== 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=armh.onmicrosoft.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=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HtlqCgt9Crp478FKT9anH+96ic/jKZq9UhWMEhkBGGg=; b=1xYY/cp0OEifg2qaNBPzv1YPcFyqIHNc+HnTsPUmt1u1kkTmIwXPYLDEF0khzHn7VZwLfQeEs1MC8MhUoxji0Zjb7jRSWAoj/kCEq/SQrnFOzDqkg3RqeL23Gj4OO9Ov2vPlnQ/v/CzrNzqWmb4iKAHU7MyfnZanSQeXMCHgTQQ= Received: from AS9PR06CA0618.eurprd06.prod.outlook.com (2603:10a6:20b:46e::29) by AM9PR08MB6705.eurprd08.prod.outlook.com (2603:10a6:20b:300::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.21; Fri, 24 Nov 2023 11:22:04 +0000 Received: from AMS1EPF00000041.eurprd04.prod.outlook.com (2603:10a6:20b:46e:cafe::7) by AS9PR06CA0618.outlook.office365.com (2603:10a6:20b:46e::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6977.31 via Frontend Transport; Fri, 24 Nov 2023 11:22:04 +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=armh.onmicrosoft.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 AMS1EPF00000041.mail.protection.outlook.com (10.167.16.38) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.14 via Frontend Transport; Fri, 24 Nov 2023 11:22:04 +0000 Received: ("Tessian outbound 7671e7ddc218:v228"); Fri, 24 Nov 2023 11:22:03 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 89654faaceef0254 X-CR-MTA-TID: 64aa7808 Received: from 42ccf8209ed4.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 85D6D68B-20A2-4316-9BDA-EC9F9E079031.1; Fri, 24 Nov 2023 11:21:58 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 42ccf8209ed4.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 24 Nov 2023 11:21:58 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Prv4VDljBUTFoWP5KHxkXTW7l1mX5xmiUQSg+wlFnmn/KeLFySQ7wYG8JAe0An7XNxCnBLXgLEz2/CUuEsQyieeZXxphJxW3QBKETeMdExurrLYnIsTdvMCCeCfUPxVJvghOlPE1BIV+NuV5M108oJB9jEpFDeUcA/G9+lUJHB1mFMeqqA2t+D5DBIL9xcmpBlHDWVasi0ZLMOZq+AlWkcFRGSbdJLC4TetjkdGcd6O/UDfSTBDOjPdPL/O6CE9fyMNpdYcN5OHjRtIYMkKsNiHgUozXKfdU/+iWneYocANglXYymB9H9Tal8LWftISa70Kj7y4eCk2oUP6ndyG1sA== 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=HtlqCgt9Crp478FKT9anH+96ic/jKZq9UhWMEhkBGGg=; b=NJ3RQiuWJ1JcZZfvUhTHyOonkWL1oW9xpHU5WO9ZuGzzh7znciB0d6118tj51w3BKQrSfydUz5BeK+XIJd7UBCSq4V1MR+OsKH2bpEZuItQCtMCe45bqjdukXjegb/6gTx3FcJwDPZqIOwNBKo/BbgLvIa6rZGrkHicLNlSwFKwdULJDQKTotJ3t61oRVnXuqu+yj0TvA4vbEYhaqupxwYs5AlLiL85dIgadH97nQqobF3uLPkXCYKRUF/bZgR1e9k/qrZDIa7fJxdUVYRr+eKkWoW9iVRzWIFMmlNDlh/cV7usckxcU5aH2SEYwnbic8ExaadVygdgpSIZEVmEqiw== 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=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HtlqCgt9Crp478FKT9anH+96ic/jKZq9UhWMEhkBGGg=; b=1xYY/cp0OEifg2qaNBPzv1YPcFyqIHNc+HnTsPUmt1u1kkTmIwXPYLDEF0khzHn7VZwLfQeEs1MC8MhUoxji0Zjb7jRSWAoj/kCEq/SQrnFOzDqkg3RqeL23Gj4OO9Ov2vPlnQ/v/CzrNzqWmb4iKAHU7MyfnZanSQeXMCHgTQQ= 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 GVXPR08MB10451.eurprd08.prod.outlook.com (2603:10a6:150:159::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.21; Fri, 24 Nov 2023 11:21:55 +0000 Received: from VI1PR08MB3919.eurprd08.prod.outlook.com ([fe80::e05e:c012:f1f9:eb51]) by VI1PR08MB3919.eurprd08.prod.outlook.com ([fe80::e05e:c012:f1f9:eb51%4]) with mapi id 15.20.7025.021; Fri, 24 Nov 2023 11:21:55 +0000 Message-ID: <75397afd-7517-4aab-8f27-6721dcc56b28@arm.com> Date: Fri, 24 Nov 2023 11:21:51 +0000 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2] gdbserver: dump 'xx...x' in collect_register_as_string for unavailable register Content-Language: en-US To: "Aktemur, Tankut Baris" , "gdb-patches@sourceware.org" Cc: "tom@tromey.com" References: <20230620155457.1023518-1-tankut.baris.aktemur@intel.com> From: Luis Machado In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0370.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18e::15) To VI1PR08MB3919.eurprd08.prod.outlook.com (2603:10a6:803:c4::31) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: VI1PR08MB3919:EE_|GVXPR08MB10451:EE_|AMS1EPF00000041:EE_|AM9PR08MB6705:EE_ X-MS-Office365-Filtering-Correlation-Id: 45b84613-655a-4938-70c6-08dbecdf95f0 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: jKaIc3NHbBPSbJDzJD1fLsO3U4gTQa/dA7AImWv8iELLeXbfH11e9JWmrNJJ9Mrxy9IcjTU+Ts6+jvQYfKIPNGadugl5Yuf2JyoOvyWxEnaI2lIAD9uFzzWSrUSGHFcPF+JGxtEBpZHUFjGJhP43Ch4jojn80E90201p0vD2XMOhIk069yc5wI/VIpX//mDDLXOG3nwAWFdXlrbc//rxCk/Q29/RF9/IkGZyTzsWd+Dn95yivtqcgvuyiO3Y5XfXJTv94iKaDuhBbE4IBnmv+hCY84uMOh5ebhodzkkONgEht/5DE3/MgeLs7UZLHsSzxWdckI12IUytVaNBh8ahoGmookV0IVlF6yZtNeX8YczgHgrAiH4T+rzNDrLRr1jBxP1xbHgliv/1NSx11lvDC2TdkifbJuj/EpuEjeRusewIxbBxd51UJpENpSKEngakkjCJEaOdfJGWVGVtkJio9P6K6NPBskXauiEYAxD1txsOxhbWDjN8SDQyoekSwAoLtF1emPx/N4oWFexzfw7oMsyen+hYtqd3d63xWGfMEyx5CuOOSqzjrLk4epfja2fKlKQV+abaFdIW+yU3+lZrj4SPmGT9RdHSq4mUyNcePLvr0Zt55a2HfuHLB3vR+Lm0EASqPnybdscVES6n0OcctQ== 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)(376002)(346002)(396003)(366004)(39860400002)(136003)(230922051799003)(1800799012)(451199024)(186009)(64100799003)(83380400001)(6506007)(26005)(31696002)(44832011)(41300700001)(6512007)(2616005)(53546011)(38100700002)(31686004)(36756003)(6486002)(478600001)(6666004)(110136005)(316002)(66946007)(66556008)(66476007)(2906002)(8936002)(8676002)(4326008)(5660300002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB10451 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: AMS1EPF00000041.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: ac9ec2b2-920c-4570-8061-08dbecdf9094 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Nlj9vydnDto0Qu7h2eZB2d19azU2Ug99X99S2f9Tb6amsyQ28i4DSa7cgOUmdb2wmYmXSgerrKQ7YYlcutx6mXlrUs7FZuLLBOgS72v5CNQEt/nenZaGvA+bU/BnolvYImuLTNGT5xjvucUwgjjuzIqPdgAZHzcQVPNJp5W23pErg5H+W+Qc/3xgpnJeXx/R5k1R0e44nby8ngbz80BWJtTPlx2kLXxdxaAnVnMOajQOEl6bldoxEcaIHfmSeMOmhnEDtIzErSyt+hP96/+yaARrt7pIqm0DkuEaALLSBaH+CCWsy2CGW49Dv6plr2bKN1GHetH/0QZgTa+XDOkZPlnmS4HM1KbRNUiGFPvMHt659Wu5ACk8hCfzVvgiofUQhnTAQSJqHgOlK6lsQgTUcVIPrRXVrbxQtpvlPfilJH/q3tAHDqpDUZzjbI97lXIbEzPJPElFq3WoqTe3PhyTNJ2wzLd3PdiD/5HGdmGyDDJX5i95r5egjOcqjI4IYgG0JJY37R7lTVjhfUOIdF7kVMFn1N8OBTPaRYv7H+W1QLv7IpVUAnjzxkyfs0k/+zjG/lDZXvInjtCCpjraVh3Efvf1WcHP0WSQ7tmQP+cB5n5aufiwLFU3RzXarzZ2diY1zgHuAXX6M1iY+H27O/BpulKd1LVsDwQmIzzm7OSwAD/jYddPvcoh/ED8Tfj2O3+EFlaqynRwjMMFMSuicjTp//nDwnTp71KikmIVnTLURJLAuGcab9aBnCiXcTT8mkA7l1v338AnO82ODFA2DFozAQ== 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)(4636009)(39860400002)(396003)(376002)(346002)(136003)(230922051799003)(1800799012)(64100799003)(82310400011)(186009)(451199024)(36840700001)(46966006)(40470700004)(53546011)(47076005)(31686004)(26005)(336012)(6486002)(83380400001)(36860700001)(2616005)(40480700001)(107886003)(6666004)(6512007)(6506007)(40460700003)(70206006)(356005)(110136005)(2906002)(8936002)(8676002)(86362001)(82740400003)(44832011)(4326008)(31696002)(5660300002)(41300700001)(478600001)(70586007)(316002)(36756003)(81166007)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Nov 2023 11:22:04.0013 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 45b84613-655a-4938-70c6-08dbecdf95f0 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: AMS1EPF00000041.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6705 X-Spam-Status: No, score=-11.8 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,GIT_PATCH_0,KAM_DMARC_NONE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE,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: Hi, On 11/21/23 19:53, Aktemur, Tankut Baris wrote: > Kindly pinging. > > Regards > -Baris > > On Tuesday, June 20, 2023 5:55 PM, Aktemur, Tankut Baris wrote: >> Fix 'collect_register_as_string' so that unavailable registers are >> dumped as 'xx...x' instead of arbitrary values. This gives the >> opportunity that we can reuse 'collect_register_as_string' in >> 'registers_to_string' for additional code simplification. >> --- >> gdbserver/regcache.cc | 26 +++++++++++--------------- >> 1 file changed, 11 insertions(+), 15 deletions(-) >> >> diff --git a/gdbserver/regcache.cc b/gdbserver/regcache.cc >> index 0b1141662ac..c0a6d6eb0a4 100644 >> --- a/gdbserver/regcache.cc >> +++ b/gdbserver/regcache.cc >> @@ -210,24 +210,13 @@ find_register_by_number (const struct target_desc *tdesc, int >> n) >> void >> registers_to_string (struct regcache *regcache, char *buf) >> { >> - unsigned char *registers = regcache->registers; >> const struct target_desc *tdesc = regcache->tdesc; >> >> for (int i = 0; i < tdesc->reg_defs.size (); ++i) >> { >> - if (regcache->register_status[i] == REG_VALID) >> - { >> - bin2hex (registers, buf, register_size (tdesc, i)); >> - buf += register_size (tdesc, i) * 2; >> - } >> - else >> - { >> - memset (buf, 'x', register_size (tdesc, i) * 2); >> - buf += register_size (tdesc, i) * 2; >> - } >> - registers += register_size (tdesc, i); >> + collect_register_as_string (regcache, i, buf); >> + buf += register_size (tdesc, i) * 2; >> } >> - *buf = '\0'; >> } >> >> void >> @@ -472,8 +461,15 @@ regcache_raw_get_unsigned_by_name (struct regcache *regcache, >> void >> collect_register_as_string (struct regcache *regcache, int n, char *buf) >> { >> - bin2hex (register_data (regcache, n), buf, >> - register_size (regcache->tdesc, n)); >> + int reg_size = register_size (regcache->tdesc, n); >> + >> + if (regcache->register_status[n] == REG_VALID) >> + bin2hex (register_data (regcache, n), buf, reg_size); >> + else >> + memset (buf, 'x', reg_size * 2); >> + >> + buf += reg_size * 2; >> + *buf = '\0'; >> } I don't mind this improvement, but I was wondering if using the std::string variant of bin2hex would allow further simplification of this code. You wouldn't have to handle the \0 explicitly. I guess the slightly confusing part is that collect_register_as_string finishes the string with \0, but registers_to_string ignores it and overwrites it. In any case, I think this is a nice improvement. Reviewed-By: Luis Machado >> >> void >> -- >> 2.25.1