From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22521 invoked by alias); 12 Jun 2017 09:09:35 -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 22508 invoked by uid 89); 12 Jun 2017 09:09:35 -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,MIME_BASE64_BLANKS,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy=HAccept-Language:en-GB X-HELO: EUR03-AM5-obe.outbound.protection.outlook.com Received: from mail-eopbgr30086.outbound.protection.outlook.com (HELO EUR03-AM5-obe.outbound.protection.outlook.com) (40.107.3.86) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 12 Jun 2017 09:09:32 +0000 Received: from AM3PR08MB0101.eurprd08.prod.outlook.com (10.160.211.19) by AM3PR08MB0101.eurprd08.prod.outlook.com (10.160.211.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1157.12; Mon, 12 Jun 2017 09:09:33 +0000 Received: from AM3PR08MB0101.eurprd08.prod.outlook.com ([fe80::f0a8:fd0f:69e1:e280]) by AM3PR08MB0101.eurprd08.prod.outlook.com ([fe80::f0a8:fd0f:69e1:e280%17]) with mapi id 15.01.1157.017; Mon, 12 Jun 2017 09:09:33 +0000 From: Alan Hayward To: Pedro Alves CC: "Maciej W. Rozycki" , Yao Qi , "gdb-patches@sourceware.org" , nd Subject: Re: [PATCH 3/11] Add MIPS_MAX_REGISTER_SIZE (4/4) Date: Mon, 12 Jun 2017 09:09:00 -0000 Message-ID: References: <3C00280E-37C9-4C0A-9DA6-F3B9DB1A6E8F@arm.com> <86y3v7uf9j.fsf@gmail.com> <0150DDF9-6204-4F4F-99E9-D757C1DBD512@arm.com> <434A7317-C19A-4B53-8CB1-C7B4ACEC7D17@arm.com> In-Reply-To: authentication-results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=arm.com; x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;AM3PR08MB0101;7:8u0+wiiebjwVnl+b+8u8yES/nAu1wZ36UfR1zmzyOYLrAjqTOZ/CNh8IPQlcM1md63lBiS1vmzWTzJKwQMXILYj2NIumIYa+9z8vXcQoi/8l1hJYAYiji09FrBeoIDBvwO+ens5H3pkmjYoShCllI6YnYyyORHNPUTICfvMfzP2HzBOcFxKu7cSNgEMA5UcCq9+7MhR5JTY/Q01YnaGRPqAa3zdAhP/hxHZT8VemJS5mTZsfFE9KRWkK4U+rpknJMfZcOOdp4KIXtPmyJMDKfxIbmjfHdD6VPrU64JRD8kCC45rINcmvuO/CEE1Weqnc3xAN+Lzx8tN4MPUCRWD2TA== x-ms-traffictypediagnostic: AM3PR08MB0101: x-ms-office365-filtering-correlation-id: e96ae52e-5a96-4df3-85c7-08d4b172bdcc x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(2017030254075)(48565401081)(201703131423075)(201703031133081);SRVR:AM3PR08MB0101; nodisclaimer: True x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:; x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(100000703101)(100105400095)(93006095)(93001095)(6055026)(6041248)(20161123555025)(20161123562025)(20161123558100)(20161123564025)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:AM3PR08MB0101;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:AM3PR08MB0101; x-forefront-prvs: 03361FCC43 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(6009001)(39840400002)(39850400002)(39410400002)(39400400002)(39450400003)(39860400002)(377454003)(24454002)(8936002)(3846002)(229853002)(6486002)(8676002)(81166006)(6512007)(5660300001)(39060400002)(7736002)(5250100002)(6436002)(72206003)(2906002)(305945005)(2900100001)(86362001)(6506006)(6116002)(2950100002)(53936002)(4326008)(478600001)(6916009)(102836003)(82746002)(99286003)(36756003)(189998001)(83716003)(50986999)(54356999)(76176999)(25786009)(53546009)(54906002)(93886004)(6246003)(38730400002)(110136004)(33656002)(14454004)(3280700002)(3660700001)(66066001);DIR:OUT;SFP:1101;SCL:1;SRVR:AM3PR08MB0101;H:AM3PR08MB0101.eurprd08.prod.outlook.com;FPR:;SPF:None;MLV:ovrnspm;PTR:InfoNoRecords;LANG:en; spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Jun 2017 09:09:32.8361 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM3PR08MB0101 X-SW-Source: 2017-06/txt/msg00297.txt.bz2 DQo+IE9uIDkgSnVuIDIwMTcsIGF0IDE1OjI5LCBQZWRybyBBbHZlcyA8cGFs dmVzQHJlZGhhdC5jb20+IHdyb3RlOg0KPiANCj4gT24gMDYvMDkvMjAxNyAw MjoyMyBQTSwgTWFjaWVqIFcuIFJvenlja2kgd3JvdGU6DQo+IA0KPj4gSGFy ZGNvZGluZyB0aGluZ3MsIGFuZCBlc3BlY2lhbGx5IHdpdGggbGl0ZXJhbHMs IGNhdXNlcyBhIG1haW50ZW5hbmNlIA0KPj4gcGFpbiB3aGVuIHRoaW5ncyBj aGFuZ2UuICBCYWQgY29kZSBlbHNld2hlcmUgaXMgbm90IGFuIGV4Y3VzZTsg YmVzaWRlcywgDQo+PiB0aGUgb3RoZXIgcGxhY2VzIHdoZXJlIGA4JyBpcyBo YXJkY29kZWQgYXJlIG5vdCAoYnVmZmVyKSBsaW1pdHMsIGJ1dCBqdXN0IA0K Pj4gaGFuZGxlIHNwZWNpZmljIHJlZ2lzdGVyIHNpemVzLCB3aGljaCBhcmUg bm90IGdvaW5nIHRvIGNoYW5nZSwgYW5kIHdoaWNoIA0KPj4gYXJlIGEgY29t cGxldGVseSBkaWZmZXJlbnQgbWF0dGVyLiANCj4gDQo+IFBlcmhhcHMgeW91 IHdvbid0IGJlIHN1cnByaXNlZCB0byBsZWFybiB0aGF0IEkgc3Vic2NyaWJl IHRvIHRoZSBzYW1lIGdlbmVyYWwNCj4gcHJpbmNpcGxlcy4gIEhvd2V2ZXIs IEkgYmVsaWV2ZSB0aGF0IHRoaXMgaXNuJ3QsIGluIGZhY3QsIGEgY29tcGxl dGVseQ0KPiBkaWZmZXJlbnQgbWF0dGVyLCBiZWNhdXNlIHRoZSBidWZmZXIg aW4gcXVlc3Rpb24gaXMgdXNlZCB0byBob2xkIHRoZQ0KPiBjb250ZW50cyBv ZiBhIHN0cnVjdHVyZSdzIGFkZHJlc3MsIHRvIGVpdGhlciBwdXQgaW4gYSBn ZW5lcmFsIHJlZ2lzdGVyLA0KPiBvciBpbiBhIHN0YWNrIHNsb3QsIGFuZCB0 aG9zZSAoYWRkcmVzc2VzIGFuZCBnZW5lcmFsIHJlZ2lzdGVycyksIHVubGlr ZSBGUFJzLA0KPiBhcmVuJ3QgZXhwZWN0ZWQgdG8gZ3JvdyBmb3IgYSBnaXZl biBhcmNoaXRlY3R1cmUuDQo+IA0KPj4gU28gaWYgeW91IGZpbmQgYGFsbG9j YScgdW5hY2NlcHRhYmxlLCANCj4+IHRoZW4gdGhlIGxpbWl0IGhhcyB0byBi ZSBhIG1hY3JvLCBhbmQgYW4gYXNzZXJ0aW9uIGNoZWNrIGlzIGFsc28gZHVl IChhcyANCj4+IGFscmVhZHkgcHJvcG9zZWQpLCBwcmVmZXJhYmx5IHVzaW5n IGBzaXplb2YnLCBzbyB0aGF0IGEgZnV0dXJlIGNoYW5nZSBkb2VzIA0KPj4g bm90IGJyZWFrIGl0IGJ5IGFjY2lkZW50Lg0KPiANCj4gSSB0aGluayBhIHBh dGNoIGxpa2UgdGhlIGJlbG93IGlzIGxpa2VseSB0byBjbGFyaWZ5IHRoaW5n cy4NCj4gKEJ1aWxkcywgYnV0IGlzIG90aGVyd2lzZSB1bnRlc3RlZCkuDQo+ IA0KDQpJ4oCZZCBiZSBoYXBweSB3aXRoIHRoaXMgcGF0Y2guIEkgbGlrZSBo b3cgdGhlIGRlZmluZSByZWZlcnMganVzdCB0byB0aGUgdXNhZ2UNCm9mIHRo ZSByZWdpc3Rlci4NCg0KV2l0aCB0aGUgdHdvIG1pbm9yIGNoYW5nZXMgYmVs b3csIGl0IHBhc3NlcyBhbGwgbXkgdGVzdHMuDQoNCg0KPiBGcm9tIDViZGYx YzkzOWQ3MmJmMjcxOGE1NDIxNjRkOTliYjM5NmYwNTI2ZTMgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxDQo+IEZyb206IFBlZHJvIEFsdmVzIDxwYWx2ZXNA cmVkaGF0LmNvbT4NCj4gRGF0ZTogRnJpLCA5IEp1biAyMDE3IDE1OjEwOjUw ICswMTAwDQo+IFN1YmplY3Q6IFtQQVRDSF0gbWlwcw0KPiANCj4gLS0tDQo+ IGdkYi9taXBzLXRkZXAuYyB8IDM4ICsrKysrKysrKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLS0tDQo+IDEgZmlsZSBjaGFuZ2VkLCAyMiBpbnNlcnRp b25zKCspLCAxNiBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS9n ZGIvbWlwcy10ZGVwLmMgYi9nZGIvbWlwcy10ZGVwLmMNCj4gaW5kZXggODJm OTFiYS4uNzg0NGM3MyAxMDA2NDQNCj4gLS0tIGEvZ2RiL21pcHMtdGRlcC5j DQo+ICsrKyBiL2dkYi9taXBzLXRkZXAuYw0KPiBAQCAtMjcxLDYgKzI3MSw5 IEBAIG1pcHNfaXNhX3JlZ3NpemUgKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNo KQ0KPiAJICAvIGdkYmFyY2hfYmZkX2FyY2hfaW5mbyAoZ2RiYXJjaCktPmJp dHNfcGVyX2J5dGUpOw0KPiB9DQo+IA0KPiArLyogTWF4IHNhdmVkIHJlZ2lz dGVyIHNpemUuICAqLw0KPiArI2RlZmluZSBNQVhfTUlQU19BQklfUkVHU0la RSA4DQo+ICsNCj4gLyogUmV0dXJuIHRoZSBjdXJyZW50bHkgY29uZmlndXJl ZCAob3Igc2V0KSBzYXZlZCByZWdpc3RlciBzaXplLiAgKi8NCj4gDQo+IHVu c2lnbmVkIGludA0KPiBAQCAtNDQ3Niw3ICs0NDc5LDcgQEAgbWlwc19lYWJp X3B1c2hfZHVtbXlfY2FsbCAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsIHN0 cnVjdCB2YWx1ZSAqZnVuY3Rpb24sDQo+ICAgaW50IHN0YWNrX29mZnNldCA9 IDA7DQo+ICAgZW51bSBiZmRfZW5kaWFuIGJ5dGVfb3JkZXIgPSBnZGJhcmNo X2J5dGVfb3JkZXIgKGdkYmFyY2gpOw0KPiAgIENPUkVfQUREUiBmdW5jX2Fk ZHIgPSBmaW5kX2Z1bmN0aW9uX2FkZHIgKGZ1bmN0aW9uLCBOVUxMKTsNCj4g LSAgaW50IHJlZ3NpemUgPSBtaXBzX2FiaV9yZWdzaXplIChnZGJhcmNoKTsN Cj4gKyAgaW50IGFiaV9yZWdzaXplID0gbWlwc19hYmlfcmVnc2l6ZSAoZ2Ri YXJjaCk7DQo+IA0KPiAgIC8qIEZvciBzaGFyZWQgbGlicmFyaWVzLCAidDki IG5lZWRzIHRvIHBvaW50IGF0IHRoZSBmdW5jdGlvbg0KPiAgICAgIGFkZHJl c3MuICAqLw0KPiBAQCAtNDQ5OSw3ICs0NTAyLDcgQEAgbWlwc19lYWJpX3B1 c2hfZHVtbXlfY2FsbCAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsIHN0cnVj dCB2YWx1ZSAqZnVuY3Rpb24sDQo+ICAgICAgdGhhbiBuZWNlc3NhcnkgZm9y IEVBQkksIGJlY2F1c2UgdGhlIGZpcnN0IGZldyBhcmd1bWVudHMgYXJlDQo+ ICAgICAgcGFzc2VkIGluIHJlZ2lzdGVycywgYnV0IHRoYXQncyBPSy4gICov DQo+ICAgZm9yIChhcmdudW0gPSAwOyBhcmdudW0gPCBuYXJnczsgYXJnbnVt KyspDQo+IC0gICAgbGVuICs9IGFsaWduX3VwIChUWVBFX0xFTkdUSCAodmFs dWVfdHlwZSAoYXJnc1thcmdudW1dKSksIHJlZ3NpemUpOw0KPiArICAgIGxl biArPSBhbGlnbl91cCAoVFlQRV9MRU5HVEggKHZhbHVlX3R5cGUgKGFyZ3Nb YXJnbnVtXSkpLCBhYmlfcmVnc2l6ZSk7DQo+ICAgc3AgLT0gYWxpZ25fdXAg KGxlbiwgMTYpOw0KPiANCj4gICBpZiAobWlwc19kZWJ1ZykNCj4gQEAgLTQ1 MjgsNyArNDUzMSw5IEBAIG1pcHNfZWFiaV9wdXNoX2R1bW15X2NhbGwgKHN0 cnVjdCBnZGJhcmNoICpnZGJhcmNoLCBzdHJ1Y3QgdmFsdWUgKmZ1bmN0aW9u LA0KPiAgIGZvciAoYXJnbnVtID0gMDsgYXJnbnVtIDwgbmFyZ3M7IGFyZ251 bSsrKQ0KPiAgICAgew0KPiAgICAgICBjb25zdCBnZGJfYnl0ZSAqdmFsOw0K PiAtICAgICAgZ2RiX2J5dGUgdmFsYnVmW01BWF9SRUdJU1RFUl9TSVpFXTsN Cj4gKyAgICAgIC8qIFRoaXMgaG9sZHMgdGhlIGFkZHJlc3Mgb2Ygc3RydWN0 dXJlcyB0aGF0IGFyZSBwYXNzZWQgYnkNCj4gKwkgcmVmZXJlbmNlLiAgKi8N Cj4gKyAgICAgIGdkYl9ieXRlIHJlZl92YWxidWZbTUFYX01JUFNfQUJJX1JF R0lTVEVSX1NJWkVdOw0KDQpOYW1lIG9mIHRoZSBkZWZpbmUgaXMgTUFYX01J UFNfQUJJX1JFR1NJWkUsIG5vdCBNQVhfTUlQU19BQklfUkVHSVNURVJfU0la RS4NCg0KDQo+ICAgICAgIHN0cnVjdCB2YWx1ZSAqYXJnID0gYXJnc1thcmdu dW1dOw0KPiAgICAgICBzdHJ1Y3QgdHlwZSAqYXJnX3R5cGUgPSBjaGVja190 eXBlZGVmICh2YWx1ZV90eXBlIChhcmcpKTsNCj4gICAgICAgaW50IGxlbiA9 IFRZUEVfTEVOR1RIIChhcmdfdHlwZSk7DQo+IEBAIC00NTQxLDEzICs0NTQ2 LDE0IEBAIG1pcHNfZWFiaV9wdXNoX2R1bW15X2NhbGwgKHN0cnVjdCBnZGJh cmNoICpnZGJhcmNoLCBzdHJ1Y3QgdmFsdWUgKmZ1bmN0aW9uLA0KPiANCj4g ICAgICAgLyogVGhlIEVBQkkgcGFzc2VzIHN0cnVjdHVyZXMgdGhhdCBkbyBu b3QgZml0IGluIGEgcmVnaXN0ZXIgYnkNCj4gICAgICAgICAgcmVmZXJlbmNl LiAgKi8NCj4gLSAgICAgIGlmIChsZW4gPiByZWdzaXplDQo+ICsgICAgICBp ZiAobGVuID4gYWJpX3JlZ3NpemUNCj4gCSAgJiYgKHR5cGVjb2RlID09IFRZ UEVfQ09ERV9TVFJVQ1QgfHwgdHlwZWNvZGUgPT0gVFlQRV9DT0RFX1VOSU9O KSkNCj4gCXsNCj4gLQkgIHN0b3JlX3Vuc2lnbmVkX2ludGVnZXIgKHZhbGJ1 ZiwgcmVnc2l6ZSwgYnl0ZV9vcmRlciwNCj4gKwkgIGdkYl9hc3NlcnQgKEFS UkFZX1NJWkUgKHJlZl92YWxidWYpID49IGFiaV9yZWdzaXplKTsNCj4gKwkg IHN0b3JlX3Vuc2lnbmVkX2ludGVnZXIgKHJlZl92YWxidWYsIGFiaV9yZWdz aXplLCBieXRlX29yZGVyLA0KPiAJCQkJICB2YWx1ZV9hZGRyZXNzIChhcmcp KTsNCj4gCSAgdHlwZWNvZGUgPSBUWVBFX0NPREVfUFRSOw0KPiAtCSAgbGVu ID0gcmVnc2l6ZTsNCj4gKwkgIGxlbiA9IGFiaV9yZWdzaXplOw0KPiAJICB2 YWwgPSB2YWxidWY7DQoNClRoaXMgbGluZSBuZWVkcyBjaGFuZ2luZyBmcm9t IHZhbGJ1ZiB0byByZWZfdmFsYnVmLg0KDQoNCj4gCSAgaWYgKG1pcHNfZGVi dWcpDQo+IAkgICAgZnByaW50Zl91bmZpbHRlcmVkIChnZGJfc3RkbG9nLCAi IHB1c2giKTsNCj4gQEAgLTQ1NjAsNyArNDU2Niw3IEBAIG1pcHNfZWFiaV9w dXNoX2R1bW15X2NhbGwgKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLCBzdHJ1 Y3QgdmFsdWUgKmZ1bmN0aW9uLA0KPiAgICAgICAgICB1cCBiZWZvcmUgdGhl IGNoZWNrIHRvIHNlZSBpZiB0aGVyZSBhcmUgYW55IEZQIHJlZ2lzdGVycw0K PiAgICAgICAgICBsZWZ0LiAgTm9uIE1JUFNfRUFCSSB0YXJnZXRzIGFsc28g cGFzcyB0aGUgRlAgaW4gdGhlIGludGVnZXINCj4gICAgICAgICAgcmVnaXN0 ZXJzIHNvIGFsc28gcm91bmQgdXAgbm9ybWFsIHJlZ2lzdGVycy4gICovDQo+ IC0gICAgICBpZiAocmVnc2l6ZSA8IDggJiYgZnBfcmVnaXN0ZXJfYXJnX3Ag KGdkYmFyY2gsIHR5cGVjb2RlLCBhcmdfdHlwZSkpDQo+ICsgICAgICBpZiAo YWJpX3JlZ3NpemUgPCA4ICYmIGZwX3JlZ2lzdGVyX2FyZ19wIChnZGJhcmNo LCB0eXBlY29kZSwgYXJnX3R5cGUpKQ0KPiAJew0KPiAJICBpZiAoKGZsb2F0 X2FyZ3JlZyAmIDEpKQ0KPiAJICAgIGZsb2F0X2FyZ3JlZysrOw0KPiBAQCAt NDYyNiwxMiArNDYzMiwxMiBAQCBtaXBzX2VhYmlfcHVzaF9kdW1teV9jYWxs IChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgc3RydWN0IHZhbHVlICpmdW5j dGlvbiwNCj4gCSAgLyogQ29weSB0aGUgYXJndW1lbnQgdG8gZ2VuZXJhbCBy ZWdpc3RlcnMgb3IgdGhlIHN0YWNrIGluDQo+IAkgICAgIHJlZ2lzdGVyLXNp emVkIHBpZWNlcy4gIExhcmdlIGFyZ3VtZW50cyBhcmUgc3BsaXQgYmV0d2Vl bg0KPiAJICAgICByZWdpc3RlcnMgYW5kIHN0YWNrLiAgKi8NCj4gLQkgIC8q IE5vdGU6IHN0cnVjdHMgd2hvc2Ugc2l6ZSBpcyBub3QgYSBtdWx0aXBsZSBv ZiByZWdzaXplDQo+ICsJICAvKiBOb3RlOiBzdHJ1Y3RzIHdob3NlIHNpemUg aXMgbm90IGEgbXVsdGlwbGUgb2YgYWJpX3JlZ3NpemUNCj4gCSAgICAgYXJl IHRyZWF0ZWQgc3BlY2lhbGx5OiBJcml4IGNjIHBhc3Nlcw0KPiAJICAgICB0 aGVtIGluIHJlZ2lzdGVycyB3aGVyZSBnY2Mgc29tZXRpbWVzIHB1dHMgdGhl bSBvbiB0aGUNCj4gCSAgICAgc3RhY2suICBGb3IgbWF4aW11bSBjb21wYXRp YmlsaXR5LCB3ZSB3aWxsIHB1dCB0aGVtIGluDQo+IAkgICAgIGJvdGggcGxh Y2VzLiAgKi8NCj4gLQkgIGludCBvZGRfc2l6ZWRfc3RydWN0ID0gKGxlbiA+ IHJlZ3NpemUgJiYgbGVuICUgcmVnc2l6ZSAhPSAwKTsNCj4gKwkgIGludCBv ZGRfc2l6ZWRfc3RydWN0ID0gKGxlbiA+IGFiaV9yZWdzaXplICYmIGxlbiAl IGFiaV9yZWdzaXplICE9IDApOw0KPiANCj4gCSAgLyogTm90ZTogRmxvYXRp bmctcG9pbnQgdmFsdWVzIHRoYXQgZGlkbid0IGZpdCBpbnRvIGFuIEZQDQo+ IAkgICAgIHJlZ2lzdGVyIGFyZSBvbmx5IHdyaXR0ZW4gdG8gbWVtb3J5LiAg Ki8NCj4gQEAgLTQ2MzksNyArNDY0NSw3IEBAIG1pcHNfZWFiaV9wdXNoX2R1 bW15X2NhbGwgKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLCBzdHJ1Y3QgdmFs dWUgKmZ1bmN0aW9uLA0KPiAJICAgIHsNCj4gCSAgICAgIC8qIFJlbWVtYmVy IGlmIHRoZSBhcmd1bWVudCB3YXMgd3JpdHRlbiB0byB0aGUgc3RhY2suICAq Lw0KPiAJICAgICAgaW50IHN0YWNrX3VzZWRfcCA9IDA7DQo+IC0JICAgICAg aW50IHBhcnRpYWxfbGVuID0gKGxlbiA8IHJlZ3NpemUgPyBsZW4gOiByZWdz aXplKTsNCj4gKwkgICAgICBpbnQgcGFydGlhbF9sZW4gPSAobGVuIDwgYWJp X3JlZ3NpemUgPyBsZW4gOiBhYmlfcmVnc2l6ZSk7DQo+IA0KPiAJICAgICAg aWYgKG1pcHNfZGVidWcpDQo+IAkJZnByaW50Zl91bmZpbHRlcmVkIChnZGJf c3RkbG9nLCAiIC0tIHBhcnRpYWw9JWQiLA0KPiBAQCAtNDY1NywxNSArNDY2 MywxNSBAQCBtaXBzX2VhYmlfcHVzaF9kdW1teV9jYWxsIChzdHJ1Y3QgZ2Ri YXJjaCAqZ2RiYXJjaCwgc3RydWN0IHZhbHVlICpmdW5jdGlvbiwNCj4gCQkg IHN0YWNrX3VzZWRfcCA9IDE7DQo+IAkJICBpZiAoZ2RiYXJjaF9ieXRlX29y ZGVyIChnZGJhcmNoKSA9PSBCRkRfRU5ESUFOX0JJRykNCj4gCQkgICAgew0K PiAtCQkgICAgICBpZiAocmVnc2l6ZSA9PSA4DQo+ICsJCSAgICAgIGlmIChh YmlfcmVnc2l6ZSA9PSA4DQo+IAkJCSAgJiYgKHR5cGVjb2RlID09IFRZUEVf Q09ERV9JTlQNCj4gCQkJICAgICAgfHwgdHlwZWNvZGUgPT0gVFlQRV9DT0RF X1BUUg0KPiAJCQkgICAgICB8fCB0eXBlY29kZSA9PSBUWVBFX0NPREVfRkxU KSAmJiBsZW4gPD0gNCkNCj4gLQkJCWxvbmd3b3JkX29mZnNldCA9IHJlZ3Np emUgLSBsZW47DQo+ICsJCQlsb25nd29yZF9vZmZzZXQgPSBhYmlfcmVnc2l6 ZSAtIGxlbjsNCj4gCQkgICAgICBlbHNlIGlmICgodHlwZWNvZGUgPT0gVFlQ RV9DT0RFX1NUUlVDVA0KPiAJCQkJfHwgdHlwZWNvZGUgPT0gVFlQRV9DT0RF X1VOSU9OKQ0KPiAtCQkJICAgICAgICYmIFRZUEVfTEVOR1RIIChhcmdfdHlw ZSkgPCByZWdzaXplKQ0KPiAtCQkJbG9uZ3dvcmRfb2Zmc2V0ID0gcmVnc2l6 ZSAtIGxlbjsNCj4gKwkJCSAgICAgICAmJiBUWVBFX0xFTkdUSCAoYXJnX3R5 cGUpIDwgYWJpX3JlZ3NpemUpDQo+ICsJCQlsb25nd29yZF9vZmZzZXQgPSBh YmlfcmVnc2l6ZSAtIGxlbjsNCj4gCQkgICAgfQ0KPiANCj4gCQkgIGlmICht aXBzX2RlYnVnKQ0KPiBAQCAtNDcwNiw3ICs0NzEyLDcgQEAgbWlwc19lYWJp X3B1c2hfZHVtbXlfY2FsbCAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsIHN0 cnVjdCB2YWx1ZSAqZnVuY3Rpb24sDQo+IAkJICBpZiAobWlwc19kZWJ1ZykN Cj4gCQkgICAgZnByaW50Zl9maWx0ZXJlZCAoZ2RiX3N0ZGxvZywgIiAtIHJl Zz0lZCB2YWw9JXMiLA0KPiAJCQkJICAgICAgYXJncmVnLA0KPiAtCQkJCSAg ICAgIHBoZXggKHJlZ3ZhbCwgcmVnc2l6ZSkpOw0KPiArCQkJCSAgICAgIHBo ZXggKHJlZ3ZhbCwgYWJpX3JlZ3NpemUpKTsNCj4gCQkgIHJlZ2NhY2hlX2Nv b2tlZF93cml0ZV9zaWduZWQgKHJlZ2NhY2hlLCBhcmdyZWcsIHJlZ3ZhbCk7 DQo+IAkJICBhcmdyZWcrKzsNCj4gCQl9DQo+IEBAIC00NzIxLDcgKzQ3Mjcs NyBAQCBtaXBzX2VhYmlfcHVzaF9kdW1teV9jYWxsIChzdHJ1Y3QgZ2RiYXJj aCAqZ2RiYXJjaCwgc3RydWN0IHZhbHVlICpmdW5jdGlvbiwNCj4gCSAgICAg ICAgIG9ubHkgbmVlZHMgdG8gYmUgYWRqdXN0ZWQgd2hlbiBpdCBoYXMgYmVl biB1c2VkLiAgKi8NCj4gDQo+IAkgICAgICBpZiAoc3RhY2tfdXNlZF9wKQ0K PiAtCQlzdGFja19vZmZzZXQgKz0gYWxpZ25fdXAgKHBhcnRpYWxfbGVuLCBy ZWdzaXplKTsNCj4gKwkJc3RhY2tfb2Zmc2V0ICs9IGFsaWduX3VwIChwYXJ0 aWFsX2xlbiwgYWJpX3JlZ3NpemUpOw0KPiAJICAgIH0NCj4gCX0NCj4gICAg ICAgaWYgKG1pcHNfZGVidWcpDQo+IC0tIA0KPiAyLjUuNQ0KPiANCj4gDQoN Cg== >From gdb-patches-return-139678-listarch-gdb-patches=sources.redhat.com@sourceware.org Mon Jun 12 09:28:34 2017 Return-Path: Delivered-To: listarch-gdb-patches@sources.redhat.com Received: (qmail 78818 invoked by alias); 12 Jun 2017 09:28:33 -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 Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 78797 invoked by uid 89); 12 Jun 2017 09:28:32 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.7 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,KAM_LOTSOFHASH,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy=2346 X-HELO: EUR01-HE1-obe.outbound.protection.outlook.com Received: from mail-he1eur01on0059.outbound.protection.outlook.com (HELO EUR01-HE1-obe.outbound.protection.outlook.com) (104.47.0.59) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 12 Jun 2017 09:28:28 +0000 Received: from AM3PR08MB0101.eurprd08.prod.outlook.com (10.160.211.19) by AM3PR08MB0102.eurprd08.prod.outlook.com (10.160.211.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1157.12; Mon, 12 Jun 2017 09:28:29 +0000 Received: from AM3PR08MB0101.eurprd08.prod.outlook.com ([fe80::f0a8:fd0f:69e1:e280]) by AM3PR08MB0101.eurprd08.prod.outlook.com ([fe80::f0a8:fd0f:69e1:e280%17]) with mapi id 15.01.1157.017; Mon, 12 Jun 2017 09:28:29 +0000 From: Alan Hayward To: "gdb-patches@sourceware.org" CC: nd Subject: [PATCH] Remove MAX_REGISTER_SIZE from py-unwind.c Date: Mon, 12 Jun 2017 09:28:00 -0000 Message-ID: authentication-results: sourceware.org; dkim=none (message not signed) header.d=none;sourceware.org; dmarc=none action=none header.from=arm.com; x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;AM3PR08MB0102;7:Sbv3mD2Biav+oy/UAidYiiSNnCw8yQooEAWFSMvkCjAz8fG7ppJCDP7Mu4L9hBJwwdNogG48NZ9DnqwWP1aR69DZv5PRVmwhVRt6bTB/M+DMGBnT4vAUSu1mxBlWdXVjGd3siW/JaDbPVxv+M28YTERoIZjd1wD9uMM6xmTkAiWjJJFgQTFUZ9eTD7/fY3ltJAXmoasHoNSptO0gJkcbhzFkf0bULervJE2Kf9aswrVj9IrMXH4PzbzYiqNseH0HN/GjGdrW7iYuT+rfMhCdZUsxjdYoGoI9cDwQKp5Gw9Psvs0xJFqifua+guRrhNdJjiYE+5D9RzOMwgjUcH9wow== x-ms-traffictypediagnostic: AM3PR08MB0102: x-ms-office365-filtering-correlation-id: ac132b9a-f4a6-43c8-6680-08d4b175631f x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(2017030254075)(48565401081)(201703131423075)(201703031133081);SRVR:AM3PR08MB0102; nodisclaimer: True x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(180628864354917); x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(100000703101)(100105400095)(93006095)(93001095)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123562025)(20161123560025)(20161123564025)(20161123558100)(6072148)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:AM3PR08MB0102;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:AM3PR08MB0102; x-forefront-prvs: 03361FCC43 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(6009001)(39400400002)(39840400002)(39450400003)(39860400002)(39850400002)(39410400002)(377424004)(2906002)(8676002)(14454004)(478600001)(33656002)(72206003)(575784001)(86362001)(189998001)(3280700002)(81166006)(305945005)(3660700001)(2900100001)(6512007)(53936002)(7736002)(5660300001)(102836003)(3846002)(38730400002)(110136004)(99286003)(66066001)(54356999)(25786009)(2351001)(5250100002)(4326008)(8936002)(36756003)(82746002)(6486002)(6916009)(5640700003)(2501003)(83716003)(50986999)(6506006)(6436002);DIR:OUT;SFP:1101;SCL:1;SRVR:AM3PR08MB0102;H:AM3PR08MB0101.eurprd08.prod.outlook.com;FPR:;SPF:None;MLV:sfv;LANG:en; spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="us-ascii" Content-ID: <960D12FFFF19234199044D1D21AE1AEC@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Jun 2017 09:28:29.4781 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM3PR08MB0102 X-SW-Source: 2017-06/txt/msg00298.txt.bz2 Content-length: 4727 I've moved cached_reg_t from remote.c to regcache.h, then updated py-unwind.c to use cached_reg_t instead of reg_info. Had to make sure registers are individually allocated/deallocated (in the same way as remote.c). Tested on a --enable-targets=3Dall build. All tests in gdb.python/python.exp pass. Also tested with board files unix and native-gdbserver. Ok to commit? Alan. 2017-06-12 Alan Hayward * gdb/remote.c (cached_reg): Move from here... * gdb/regcache.h (cached_reg): ...to here. * gdb/python/py-unwind.c (struct reg_info): Remove. (cached_frame_info): Use cached_reg_t. (pyuw_prev_register): Likewise. (pyuw_sniffer): Use cached_reg_t and allocate registers. (pyuw_dealloc_cache): Free all registers. diff --git a/gdb/python/py-unwind.c b/gdb/python/py-unwind.c index a5c2873697944c1293fdd9f8265dde078378e6c2..91bd02ead7a56325b391a8f307e= 628d2293d57a2 100644 --- a/gdb/python/py-unwind.c +++ b/gdb/python/py-unwind.c @@ -73,15 +73,6 @@ typedef struct /* The data we keep for a frame we can unwind: frame ID and an array of (register_number, register_value) pairs. */ -struct reg_info -{ - /* Register number. */ - int number; - - /* Register data bytes pointer. */ - gdb_byte data[MAX_REGISTER_SIZE]; -}; - typedef struct { /* Frame ID. */ @@ -93,7 +84,7 @@ typedef struct /* Length of the `reg' array below. */ int reg_count; - struct reg_info reg[]; + cached_reg_t reg[]; } cached_frame_info; extern PyTypeObject pending_frame_object_type @@ -483,14 +474,14 @@ pyuw_prev_register (struct frame_info *this_frame, vo= id **cache_ptr, int regnum) { cached_frame_info *cached_frame =3D (cached_frame_info *) *cache_ptr; - struct reg_info *reg_info =3D cached_frame->reg; - struct reg_info *reg_info_end =3D reg_info + cached_frame->reg_count; + cached_reg_t *reg_info =3D cached_frame->reg; + cached_reg_t *reg_info_end =3D reg_info + cached_frame->reg_count; TRACE_PY_UNWIND (1, "%s (frame=3D%p,...,reg=3D%d)\n", __FUNCTION__, this= _frame, regnum); for (; reg_info < reg_info_end; ++reg_info) { - if (regnum =3D=3D reg_info->number) + if (regnum =3D=3D reg_info->num) return frame_unwind_got_bytes (this_frame, regnum, reg_info->data); } @@ -567,9 +558,7 @@ pyuw_sniffer (const struct frame_unwind *self, struct f= rame_info *this_frame, int i; cached_frame - =3D ((cached_frame_info *) - xmalloc (sizeof (*cached_frame) - + reg_count * sizeof (cached_frame->reg[0]))); + =3D ((cached_frame_info *) xmalloc (sizeof (*cached_frame))); cached_frame->gdbarch =3D gdbarch; cached_frame->frame_id =3D unwind_info->frame_id; cached_frame->reg_count =3D reg_count; @@ -580,13 +569,14 @@ pyuw_sniffer (const struct frame_unwind *self, struct= frame_info *this_frame, struct value *value =3D value_object_to_value (reg->value); size_t data_size =3D register_size (gdbarch, reg->number); - cached_frame->reg[i].number =3D reg->number; + cached_frame->reg[i].num =3D reg->number; /* `value' validation was done before, just assert. */ gdb_assert (value !=3D NULL); gdb_assert (data_size =3D=3D TYPE_LENGTH (value_type (value))); gdb_assert (data_size <=3D MAX_REGISTER_SIZE); + cached_frame->reg[i].data =3D (gdb_byte *) xmalloc (data_size); memcpy (cached_frame->reg[i].data, value_contents (value), data_si= ze); } } @@ -601,6 +591,13 @@ static void pyuw_dealloc_cache (struct frame_info *this_frame, void *cache) { TRACE_PY_UNWIND (3, "%s: enter", __FUNCTION__); + cached_frame_info *cached_frame =3D (cached_frame_info *) cache; + + for (int i =3D 0; cached_frame->reg_count; i++) + { + xfree (cached_frame->reg[i].data); + } + xfree (cache); } diff --git a/gdb/regcache.h b/gdb/regcache.h index 24521e40ec0bb221d3fd37418d2aa485c08403b7..82026b49a57d64b9688dbce82bb= f5c6529fdc651 100644 --- a/gdb/regcache.h +++ b/gdb/regcache.h @@ -234,6 +234,14 @@ enum regcache_dump_what regcache_dump_remote }; +/* A (register_number, register_value) pair. */ + +typedef struct cached_reg +{ + int num; + gdb_byte *data; +} cached_reg_t; + /* The register cache for storing raw register values. */ class regcache diff --git a/gdb/remote.c b/gdb/remote.c index 1f8607988444fb0221b87e9ef3e93fbec04c42ea..4a0660f7d91574b84ff2e3978e1= 795f7cb69ad93 100644 --- a/gdb/remote.c +++ b/gdb/remote.c @@ -6308,12 +6308,6 @@ remote_console_output (char *msg) gdb_flush (gdb_stdtarg); } -typedef struct cached_reg -{ - int num; - gdb_byte *data; -} cached_reg_t; - DEF_VEC_O(cached_reg_t); typedef struct stop_reply