From patchwork Wed Mar 8 16:41:36 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Marchi X-Patchwork-Id: 19484 Received: (qmail 118417 invoked by alias); 8 Mar 2017 16:42:06 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 117988 invoked by uid 89); 8 Mar 2017 16:42:05 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.6 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, SPF_PASS autolearn=ham version=3.3.2 spammy=2022, Supply X-HELO: sessmg22.ericsson.net Received: from sessmg22.ericsson.net (HELO sessmg22.ericsson.net) (193.180.251.58) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 08 Mar 2017 16:42:04 +0000 Received: from ESESSHC015.ericsson.se (Unknown_Domain [153.88.183.63]) by (Symantec Mail Security) with SMTP id 73.1D.18508.A5430C85; Wed, 8 Mar 2017 17:42:02 +0100 (CET) Received: from EUR03-AM5-obe.outbound.protection.outlook.com (153.88.183.145) by oa.msg.ericsson.com (153.88.183.63) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 8 Mar 2017 17:42:01 +0100 Authentication-Results: sourceware.org; dkim=none (message not signed) header.d=none; sourceware.org; dmarc=none action=none header.from=ericsson.com; Received: from elxcz23q12-y4.ca.am.ericsson.se (192.75.88.130) by DB5PR07MB1717.eurprd07.prod.outlook.com (2603:10a6:0:12::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.961.8; Wed, 8 Mar 2017 16:41:59 +0000 From: Simon Marchi To: CC: Simon Marchi Subject: [PATCH 3/7] Define and use typedefs for bsd_uthread_ops fields Date: Wed, 8 Mar 2017 11:41:36 -0500 Message-ID: <20170308164140.7281-4-simon.marchi@ericsson.com> In-Reply-To: <20170308164140.7281-1-simon.marchi@ericsson.com> References: <20170308164140.7281-1-simon.marchi@ericsson.com> MIME-Version: 1.0 X-ClientProxiedBy: MWHPR21CA0024.namprd21.prod.outlook.com (2603:10b6:300:6e::34) To DB5PR07MB1717.eurprd07.prod.outlook.com (2603:10a6:0:12::22) X-MS-Office365-Filtering-Correlation-Id: 171d645d-b5e7-4c75-a651-08d466420b01 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:DB5PR07MB1717; X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB1717; 3:gZOct+HKuOXH835Ff9wrVeGoX7l0bkMUcVTjLAmffCLFwi9ut7ygYY8agzmYEgQGpnaXVkQD3H0z4fbG9XhiklfyQyPGTtUPARVUCWQ/yLHYfDj2NISNM2cjuz0asofN4MY8s8YV9Q8Z12b09UAMJNI0cRS+ZSrH4jpt4z095tqiuCet38ikAYCohv2EIRDCBZnJtdbqilRC0+cGBpHtW8ILYo1+3xIZva791r6bhvLStUcmOS10MhHEVPa58IVxP8dhGhsvRtIXLA5cdpzhyA==; 25:/+4RK67MEDVwq30jB1G4BN+dJeua3njAelPrRWmL8EWBSIK2scQ2c77WtRg56U/EIl2hStcbdAoUHNaPa7uKyvbPVQ6fHPoIjZ8oSsySlFg0rIzaGPg7QL1TKZf96yE/pLQK1l5o+KjR35xwIWKauB6v8zsyNv+x6RSsG64lXugS45jgENrZ80uYHRH6m+HX5OKrDZHi8awKMT1X4pOiNcuP4GFE1ukcUZ9VqNjUAodc3xGQHa3GcCCrRwnu90+d7yEShNTbu8uTYzNJiLsq7x5J6kNZ/mTA4FE414d6rwk43JncgEJ1QeeXaerPr4OvY6vpKcvBA1WYHMNLrV6IDHg5z6h2n2U1GY7n2gUhFv5v3JDSIlWsS3m9BuM3WoR11GgBWCEE5nzyyG85zEpsIVxscrBZ3rpsHbnGCz87VcjgVn4WsjTam5UnVhxCPJUVBGUc717vFr6TLJjHIV3gNA== X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB1717; 31:ABtAv9OWMhfjVyxSoQvZJjNmYsE9BQ1Z/KiAkZP0WfCEui1NpphGXxolhVkxrqIVyDI5WQY/GsqCT3AlxW2c99Hv8xMIY5QIVi9r8a862uiUqy+s1ItNYwuZX4B7ZCZ9XUgzFPhbIQahflf3VelyRP4vGNf6ma+mgNIm4FioX8qLwUEjYblOXP3qFqG4l/kqbPP65dv6qzArl6WLdnRxU71/9l4SavzbmW2Y2WsyY8s=; 20:EzAU62jMBjUEfp+7JWuj7PTd1qHwBhUm1MYJfEgYvsnfQMX2W/3Dh+JnJfer9cl2nQ7ZESMy2ergQom8M10RfkhGbT6BEanKBIrEIHLXccOKuNABjA+TyYA/s8KlsRWTYOYCAeuTakL6nxEO3wtAJgDwLnF4vyQRt1hhzGwmzl+Dodk0mOMwCMuRc3QMWEX3S3fpR3HcSjGdWWr1ZdqwNfJYiE2W+iFFc9rgQ7kqneOnbop5IzJkaRzKX5lMUBNxiuzrZozxp8s/jJwqmr2nT7XrzVsnUud3LTBooOozb3yyf63dit+DSaxQtLrl7ys5jvwqBvNexXfHJgnV4ZEDvuylxJqEtzHDqKNV7Chmo825jJS6paNm1clP2tBClsHdq+JnT5lQJs031bbC+v5auQq2nVwQK8jMxd7Mf0dFNHOUo/Gm7wM4BLBEKa15TT9OIpsrAjhJSmDgRk7zoGm/CuDtnR4XkQtZUrt9V9ZFB58p0AyGlQOLtTcvnycxFJuY X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6041248)(20161123558025)(20161123560025)(20161123564025)(20161123555025)(20161123562025)(6072148); SRVR:DB5PR07MB1717; BCL:0; PCL:0; RULEID:; SRVR:DB5PR07MB1717; X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB1717; 4:ycqnEBKVvTJWw0zYxQ0AyCvLS552924m4mfaZ1kcGScGcNlwjnVl+bazF+cfwTVq2tcFovzuxQwAwzjKlRFA/liiIjRBY8SC6tLHqWfIJbfwXWIylQkSW0uEK5CnekOw+VELZWRnqLmnUq38vcp7DqKudgo8VgjbCkk9HJiP8R2ReQNtV4PGRMXgcd5GqpvjRhT8Hezh3Fv+zloz0PuX4/ocPMjLArw2ATmaw+EP2KCBdfmeDiYXsfGptJQh0LmC4SEqIg6k3LpK5GEFn7Tu9fN2VoCJNk98NBg7PgSbGSxcmHv0LeMxly/RCXXZ3Vr2CY/FdxkVEdKxYQwvz/R3XvuOQKdz6cX020ce2Ac/PS7/oriZ18Pff5C5ZXel0mgujrX3Ikefp6Ky/zvXinJgCPiQdZqBoE4bNKfBiKqbO4tZ9mW4En4k0gIYRbOyloom0p5/MRtVFUvU2bRubFyCNodi/QdIZ109ewXq16XRJjixC4r5bW7/P0Rz9Im/mrENlXnpHCnEhycioCwI1K42qkq8blNTQRPToixSfWSqtexEkYwX+a/WCzqbpuyx3NwrSlKQw6o17PrHaE1nZi/Olc+6avtUfIUSBeUFOik7QqY= X-Forefront-PRVS: 02408926C4 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39450400003)(6116002)(107886003)(38730400002)(53936002)(5003940100001)(110136004)(48376002)(81166006)(8676002)(189998001)(76176999)(50226002)(6512007)(4326008)(3846002)(5660300001)(47776003)(50986999)(6486002)(6506006)(66066001)(2950100002)(6666003)(305945005)(36756003)(2351001)(2906002)(86362001)(1076002)(33646002)(50466002)(7736002)(42186005); DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR07MB1717; H:elxcz23q12-y4.ca.am.ericsson.se; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB1717; 23:FGNfzZkFoWMUeFiXJXYQz4iI4QPIy/sX7AjQehYptO/fQpu+PKyE1tTHcTE4fcv3Yx6zOIUT+ZZtC8kMHBqzgdZCR1MAYnSe5oWSD+0wJff4dtINYD6E/BXGLrbws4e7kJP40eNQRRBcJtk+jQdKRucXAeFcw9StIdMNs226U2HsxM3+tOk6ArAZQ5Z7WOTu/5br44NsHQuwui5E5ZlyloDI5bHDYls24lCbtupwJ5t43mMgzqA1z4CRIkyw3pmrvai58J1hb11kMy905LVmsskfPik16BjroZfSxnAHdVR5sWYPfVF4mgw8dpvEvrXajPknfrvZrg7Q89syiLWUl+pcfR5fbaDU6sKoEXjRB1XDEHpND3JvC9iQBMQSNH07qkBFSg9TJsEWeIL6ZlzuZx0ilAYKkvOcMu/HF8YPKsw6Ypl0oQVLooE+X/aq5ezBhIbzZDauT4dZkBmdbJ1/n4aMBWdJshqNO01Siw/Oe+Frz4cJ4zgaHWeHs/An2gHnMj2k27qQ5sbycCBjgV6O/ObT1Lox4Vj1uk9dIJ30GlXCwP/Wqn6XiNg0xL9ZkrX4vDSASuRuHoMQottFHvBHLHvoXgWkPO5F/+xUqmYmM/TJA7l+jUI2Rp6V9w+5bvxwEys8QOvoHMEFstHCl6yHdj/vxqk9s90VNP8eHp4htYo4Yo93BreWf22jZlKvGDGunZgMr0Hswr6NYtNwzQ4ScF3OLOJ+beb0dSyy8Tg5seEBhu7tTqbQIPeEfQsecKUsHo9hRSYxAjSs8P67kjr+8Vzimso+JfL3vDyyv67qVu8Ut1Wrot52Fg1hVjVUZgEX8d9TwNF+0xKBjBDNB9Rk75Tj2bIxfla6jPaUsOzgwTPApzy9nYpvMxi03kI1UUnhepmqvmeXk65Drg2BuCqwRw== X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB1717; 6:HO0wKL2bB76+ADd9Yrw4tXO7bYqOEia+foq0TPkgi925HVjTakYMZ9X0ssJ94VPb1vS1kFEfAOTDsrH7nJGf8/tbZGCLIZKEwsJDmFUTDYVkr8vHPo5jPNfIsAFNuqOueoucBIzGO1nQRToP5L8vbZ73kP9ULq5TZ7Qz+0eLtJMHlYoEmyOExjye4SAI5G8gzMKRwn6vc6jdi5F4QZGtzCcHTdaC74FvofctzvOew2O6jgy1+INnAV+k5jvy3Kf88tHabpTL5pyNabcZLn4YqWj3Hk/UeqB6eHbdcwWKt2pn6jMD5mnNblWN5zFr5XvPQm1LTSJ/HTwI8iJjimmRUQVoVPoprnYCmmiP801R/mefY8ZjHe2vAY7Dx8zx/cKxF+nc/QVSukwt3HAfVgKcuA==; 5:pYdzmLZ+XaBGukxdboJ74zpIlPkIRjedEG24314dECMlP1jpewMCdsMcCzg84nHX39aNqJlSMkEAXs4pGCZmJeolhPWKDXKkXgsO3eqIaOKZaSeA6iW5QKDvMsD8BjsM9umNXUR17YJxMVnvE7TcAA==; 24:iF9jYqBokGwoTEfxyw6Ea1/7sI7cFb+nBp1vS7Shk8UX8eHZ7n2ZrTLKh8zx9OQvtvoVhyHyqdMuJY1pA7cC40hC2wy8gkkCuYl78owicKM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB1717; 7:s4pd8DYQn361C8VFiu4TyQ8+xn2wU/OrqO3c4BjX6L5JMkFfGJD3Riooh6+KPurt7umOpmac4iulK15KoQB8yi0twAskbcQRnGUT80UjtTjNM/ic4jqKxyBwKX+++OloKgh2Yq1bvTK/lVax+QVIaOlgKbv9oYgo2z1tibFYWQFqr45NxNiZWqx5NK9S41bivToRtRFb8njH4JNG1HeGhnEL9ceI+eeaXdNz8gSegV3M8a92hgCm3dL4JSerEaXFE00LGAQb7XEoetPrnrnooC4jYwmdxVmbBE8dDJrQLynihRjYCInSOPDC0mFAnxfYSr20A2nfO0jEIxoum4LH/g== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Mar 2017 16:41:59.5239 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR07MB1717 X-OriginatorOrg: ericsson.com X-IsSubscribed: yes The next patch modifies the type of the fields of bsd_uthread_ops, and as a result will require changing parameters of the corresponding types at different places. I thought it would be more readable and maintainable if typedefs were used. gdb/ChangeLog: * bsd-uthread.h (bsd_uthread_supply_register_ftype, bsd_uthread_collect_register_ftype): New typedefs. (bsd_uthread_set_supply_uthread, bsd_uthread_set_collect_uthread): Use typedefs. * bsd-uthread.c (struct bsd_uthread_ops) : Likewise. (bsd_uthread_set_supply_uthread, bsd_uthread_set_collect_uthread): Likewise. --- gdb/bsd-uthread.c | 20 ++++++++------------ gdb/bsd-uthread.h | 19 +++++++++++-------- 2 files changed, 19 insertions(+), 20 deletions(-) diff --git a/gdb/bsd-uthread.c b/gdb/bsd-uthread.c index 20eecd3879..09a9de28ae 100644 --- a/gdb/bsd-uthread.c +++ b/gdb/bsd-uthread.c @@ -45,10 +45,10 @@ static struct gdbarch_data *bsd_uthread_data; struct bsd_uthread_ops { /* Supply registers for an inactive thread to a register cache. */ - void (*supply_uthread)(struct regcache *, int, CORE_ADDR); + bsd_uthread_supply_register_ftype supply_uthread; /* Collect registers for an inactive thread from a register cache. */ - void (*collect_uthread)(const struct regcache *, int, CORE_ADDR); + bsd_uthread_collect_register_ftype collect_uthread; }; static void * @@ -60,32 +60,28 @@ bsd_uthread_init (struct obstack *obstack) return ops; } -/* Set the function that supplies registers from an inactive thread - for architecture GDBARCH to SUPPLY_UTHREAD. */ +/* See bsd-uthread.h. */ void bsd_uthread_set_supply_uthread (struct gdbarch *gdbarch, - void (*supply_uthread) (struct regcache *, - int, CORE_ADDR)) + bsd_uthread_supply_register_ftype func) { struct bsd_uthread_ops *ops = (struct bsd_uthread_ops *) gdbarch_data (gdbarch, bsd_uthread_data); - ops->supply_uthread = supply_uthread; + ops->supply_uthread = func; } -/* Set the function that collects registers for an inactive thread for - architecture GDBARCH to SUPPLY_UTHREAD. */ +/* See bsd-uthread.h. */ void bsd_uthread_set_collect_uthread (struct gdbarch *gdbarch, - void (*collect_uthread) (const struct regcache *, - int, CORE_ADDR)) + bsd_uthread_collect_register_ftype func) { struct bsd_uthread_ops *ops = (struct bsd_uthread_ops *) gdbarch_data (gdbarch, bsd_uthread_data); - ops->collect_uthread = collect_uthread; + ops->collect_uthread = func; } /* Magic number to help recognize a valid thread structure. */ diff --git a/gdb/bsd-uthread.h b/gdb/bsd-uthread.h index 7e55913a75..4802d019ae 100644 --- a/gdb/bsd-uthread.h +++ b/gdb/bsd-uthread.h @@ -20,19 +20,22 @@ #ifndef BSD_UTHREAD_H #define BSD_UTHREAD_H 1 +typedef void (*bsd_uthread_supply_register_ftype) (struct regcache *, int, + CORE_ADDR); +typedef void (*bsd_uthread_collect_register_ftype) (const struct regcache *, + int, CORE_ADDR); + /* Set the function that supplies registers for an inactive thread for - architecture GDBARCH to SUPPLY_UTHREAD. */ + architecture GDBARCH to FUNC. */ -extern void bsd_uthread_set_supply_uthread (struct gdbarch *gdbarch, - void (*supply_uthread) (struct regcache *, - int, CORE_ADDR)); +extern void bsd_uthread_set_supply_uthread + (struct gdbarch *gdbarch, bsd_uthread_supply_register_ftype func); /* Set the function that collects registers for an inactive thread for - architecture GDBARCH to SUPPLY_UTHREAD. */ + architecture GDBARCH to FUNC. */ -extern void bsd_uthread_set_collect_uthread (struct gdbarch *gdbarch, - void (*collect_uthread) (const struct regcache *, - int, CORE_ADDR)); +extern void bsd_uthread_set_collect_uthread + (struct gdbarch *gdbarch, bsd_uthread_collect_register_ftype func); #endif /* bsd-uthread.h */