From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 45054 invoked by alias); 1 Mar 2018 11:39:19 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 45015 invoked by uid 89); 1 Mar 2018 11:39:17 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-26.0 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy= X-HELO: EUR03-AM5-obe.outbound.protection.outlook.com Received: from mail-eopbgr30047.outbound.protection.outlook.com (HELO EUR03-AM5-obe.outbound.protection.outlook.com) (40.107.3.47) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 01 Mar 2018 11:39:16 +0000 Received: from AM3PR08MB0101.eurprd08.prod.outlook.com (10.160.211.19) by AM3PR08MB0689.eurprd08.prod.outlook.com (10.163.189.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.527.15; Thu, 1 Mar 2018 11:39:13 +0000 Received: from AM3PR08MB0101.eurprd08.prod.outlook.com ([fe80::fc60:4b4d:7de8:f8b7]) by AM3PR08MB0101.eurprd08.prod.outlook.com ([fe80::fc60:4b4d:7de8:f8b7%16]) with mapi id 15.20.0527.022; Thu, 1 Mar 2018 11:39:13 +0000 From: Alan Hayward To: "gdb-patches@sourceware.org" CC: nd Subject: [PATCH V3 1/8] Move tdesc header funcs to c file Date: Thu, 01 Mar 2018 11:39:00 -0000 Message-ID: <40C6E308-3401-49D3-B47C-EE5F597F84C5@arm.com> References: <757A8B89-2EF0-46BD-BAA6-6E668538B17F@arm.com> In-Reply-To: <757A8B89-2EF0-46BD-BAA6-6E668538B17F@arm.com> authentication-results: spf=none (sender IP is ) smtp.mailfrom=Alan.Hayward@arm.com; x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;AM3PR08MB0689;6:Df6Xn8UWbYPEe4WOo6tx90R8HcaygAWQ/bOtrQNuo55wrL4eiLadsikI3UxpHWi0E3aO0/BDC1FfrxCTAGAB1b3DARTgwkZsBh0sqNhbMeQRAFuxmAETuT4AwFdBjIbk80hQttNfNW+Dh97WLd9RSWDZhhfjVbj+UQ7uWdmjT18UJaUaKhsci32gMnUbLtnMqD06FY72GP/BCBZemdm1dR1nMzf2JCdP5Ww9I3fcnRHJXfs12eBKxzEHrTP7jEDQDtt4Uik1PUT8blK4cVMMaSCbxZ7j6syk6f1oy7Xs06MFTkmov1F/d3/zEXCzVvWwibHveFrExdv5mQgsLYKr8yxvarBpletrUEx0CLvlzKFAlE08oegYM2lku+LJquQD;5:xsO20ROPTqgj6c5gwcI0IjY+DGlOb7Iafnwj22O78Bobd9cSCMYFvjijTHvXF/tZfYkIoWtHA/MHsBibvEcRK57UdRBDfzK5KmKbkciaPlZeBe3RZBRdrFLcOFQvX0dwTROaVT4qrVkeikPJ1YRUu/QU2FLzMyMiRT+fR9JPA+s=;24:TWgcISPDEa78/pyllzqNpS8IVO+UXP6zC8GH5VZgMIB9Pgt0LRKgQw/zZzIH6dUvzMq2ShHwMXHc3XXRJ72BHyywwedDkxrfWixmRB4S8Bg=;7:zkGjTtPHjfgagUVUhxbkK+mXgJ8XHbPISiOjIfjMbKdtOfbBEAjE46X/1aKmMFg0HlHzDcpY/IzMp6Suf1UHsILmH3lUlwqLOHC610B0zLfD1tUHYbIQuFQTBiYk2teMHflZn+7wUmo3Ju5cPXlWj6lkrIYI/Tnh458t05gR/m/SXsjMQ8YO7Fk3UYXZ1xqJqFk13OXKrxtpcbIvoVREL9deJiNK6ZjmOL9IiL0ABT6yfx1l+CZ3SqOrWh2n2SYh x-ms-exchange-antispam-srfa-diagnostics: SSOS; x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: d9aef2a5-eaa0-4299-4e67-08d57f690e85 x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(48565401081)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4604075)(3008032)(2017052603307)(7153060)(7193020);SRVR:AM3PR08MB0689; x-ms-traffictypediagnostic: AM3PR08MB0689: nodisclaimer: True x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(180628864354917); x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(8211001083)(6040501)(2401047)(5005006)(8121501046)(3231220)(944501227)(52105095)(93006095)(93001095)(10201501046)(3002001)(6055026)(6041288)(20161123558120)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(6072148)(201708071742011);SRVR:AM3PR08MB0689;BCL:0;PCL:0;RULEID:;SRVR:AM3PR08MB0689; x-forefront-prvs: 05986C03E0 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(346002)(396003)(39860400002)(366004)(376002)(39380400002)(377424004)(189003)(199004)(5640700003)(6512007)(14454004)(86362001)(575784001)(25786009)(26005)(4743002)(66066001)(2950100002)(5250100002)(2900100001)(2501003)(305945005)(97736004)(3660700001)(4326008)(83716003)(7736002)(6506007)(106356001)(76176011)(99286004)(2906002)(68736007)(53936002)(82746002)(102836004)(5660300001)(3280700002)(72206003)(316002)(478600001)(6436002)(8676002)(186003)(6486002)(81156014)(2351001)(81166006)(8936002)(33656002)(6916009)(105586002)(36756003)(6116002)(3846002);DIR:OUT;SFP:1101;SCL:1;SRVR:AM3PR08MB0689;H:AM3PR08MB0101.eurprd08.prod.outlook.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: 4xss1jHHK8EZP32bMuNwMxmzgICMJnZhdTIegyZo/4gM4v3/knKKr5RZPR+s5g+CQJT6JZ5XoFSKN4uhrnv4oUIPRd31s4tiZ0vdd3SvvkJVAQA0mYWKhr5nTAj1rYoKfg7xtHFimlkC38DFMdqdr0B2qRAHjGmr6DoXbEAiamo= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="us-ascii" Content-ID: <76B120ADF9C7F94FBBAEC7EC950E9C85@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-Network-Message-Id: d9aef2a5-eaa0-4299-4e67-08d57f690e85 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Mar 2018 11:39:13.3297 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM3PR08MB0689 X-IsSubscribed: yes X-SW-Source: 2018-03/txt/msg00010.txt.bz2 Move the destructor and equals operator for gdbserver tdesc from the .h to the .c file. Both functions are too long to be inlined and make the header look messy. Patch does not change any functionality. 2018-03-01 Alan Hayward gdbserver/ * tdesc.c (target_desc::~target_desc): Move to here. (target_desc::operator=3D=3D): Likewise. * tdesc.h (target_desc::~target_desc): Move from here. (target_desc::operator=3D=3D): Likewise. diff --git a/gdb/gdbserver/tdesc.h b/gdb/gdbserver/tdesc.h index d21574ca73e5042d560adad0e3839e89ee2c67ab..4513ea74232a456cc86eb9a6559= 04012ff117373 100644 --- a/gdb/gdbserver/tdesc.h +++ b/gdb/gdbserver/tdesc.h @@ -67,49 +67,9 @@ public: : registers_size (0) {} - ~target_desc () - { - int i; - - for (reg *reg : reg_defs) - xfree (reg); - - xfree ((char *) arch); - xfree ((char *) osabi); - - char *f; + ~target_desc (); - for (i =3D 0; VEC_iterate (char_ptr, features, i, f); i++) - xfree (f); - VEC_free (char_ptr, features); - } - - bool operator=3D=3D (const target_desc &other) const - { - if (reg_defs.size () !=3D other.reg_defs.size ()) - return false; - - for (int i =3D 0; i < reg_defs.size (); ++i) - { - struct reg *reg =3D reg_defs[i]; - struct reg *reg2 =3D other.reg_defs[i]; - - if (reg !=3D reg2 && *reg !=3D *reg2) - return false; - } - - /* Compare expedite_regs. */ - int i =3D 0; - for (; expedite_regs[i] !=3D NULL; i++) - { - if (strcmp (expedite_regs[i], other.expedite_regs[i]) !=3D 0) - return false; - } - if (other.expedite_regs[i] !=3D NULL) - return false; - - return true; - } + bool operator=3D=3D (const target_desc &other) const; bool operator!=3D (const target_desc &other) const { diff --git a/gdb/gdbserver/tdesc.c b/gdb/gdbserver/tdesc.c index 00a5e8dc4d6fe3c0809194c04902f96056622c82..e50a848e2f9f280a84ab139cfce= 4d1f17bd05884 100644 --- a/gdb/gdbserver/tdesc.c +++ b/gdb/gdbserver/tdesc.c @@ -19,6 +19,54 @@ #include "tdesc.h" #include "regdef.h" +#ifndef IN_PROCESS_AGENT + +target_desc::~target_desc () +{ + int i; + + for (reg *reg : reg_defs) + xfree (reg); + + xfree ((char *) arch); + xfree ((char *) osabi); + + char *f; + + for (i =3D 0; VEC_iterate (char_ptr, features, i, f); i++) + xfree (f); + VEC_free (char_ptr, features); +} + +bool target_desc::operator=3D=3D (const target_desc &other) const +{ + if (reg_defs.size () !=3D other.reg_defs.size ()) + return false; + + for (int i =3D 0; i < reg_defs.size (); ++i) + { + struct reg *reg =3D reg_defs[i]; + struct reg *reg2 =3D other.reg_defs[i]; + + if (reg !=3D reg2 && *reg !=3D *reg2) + return false; + } + + /* Compare expedite_regs. */ + int i =3D 0; + for (; expedite_regs[i] !=3D NULL; i++) + { + if (strcmp (expedite_regs[i], other.expedite_regs[i]) !=3D 0) + return false; + } + if (other.expedite_regs[i] !=3D NULL) + return false; + + return true; +} + +#endif + void init_target_desc (struct target_desc *tdesc) {