From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 61702 invoked by alias); 10 Jul 2019 13:52:17 -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 61694 invoked by uid 89); 10 Jul 2019 13:52:17 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-24.0 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,KAM_SHORT,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.1 spammy=yao, Yao X-HELO: EUR03-AM5-obe.outbound.protection.outlook.com Received: from mail-eopbgr30077.outbound.protection.outlook.com (HELO EUR03-AM5-obe.outbound.protection.outlook.com) (40.107.3.77) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 10 Jul 2019 13:52:14 +0000 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=df0T3sfj5niXdUH1XPEI6yi0uuj2S38+B9aOGwX5avM=; b=9tTPcQg1FyZ2nmRSimaTOckAcjJ25KyHM23uT3zLGsHpkOwiWw38BEemop0YtaQ3B0IVht8wydPMSvRzXuUejQVCOXtr941RuupyxNaxB+jZPw7H/daax6fvG2ZMfQ/J0chK6WtEk6IxIaXjUaCr9UZ2xz2qHzPtD4na4zwHMRM= Received: from VI1PR08CA0178.eurprd08.prod.outlook.com (2603:10a6:800:d1::32) by AM5PR0802MB2596.eurprd08.prod.outlook.com (2603:10a6:203:98::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2052.20; Wed, 10 Jul 2019 13:52:10 +0000 Received: from VE1EUR03FT056.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e09::202) by VI1PR08CA0178.outlook.office365.com (2603:10a6:800:d1::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2052.18 via Frontend Transport; Wed, 10 Jul 2019 13:52:10 +0000 Authentication-Results: spf=temperror (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; sourceware.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;sourceware.org; dmarc=temperror action=none header.from=arm.com; Received-SPF: TempError (protection.outlook.com: error in processing during lookup of arm.com: DNS Timeout) Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VE1EUR03FT056.mail.protection.outlook.com (10.152.19.28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2052.18 via Frontend Transport; Wed, 10 Jul 2019 13:52:07 +0000 Received: ("Tessian outbound 96ba4cc141ab:v24"); Wed, 10 Jul 2019 13:52:07 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: a61b24c339b1db2c X-CR-MTA-TID: 64aa7808 Received: from 0c6abc368407.1 (ip-172-16-0-2.eu-west-1.compute.internal [104.47.8.54]) by 64aa7808-outbound-1.mta.getcheckrecipient.com id BE45BDB6-6102-42DD-9AC7-F8D231A2BC3D.1; Wed, 10 Jul 2019 13:52:02 +0000 Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-am5eur03lp2054.outbound.protection.outlook.com [104.47.8.54]) by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0c6abc368407.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384); Wed, 10 Jul 2019 13:52:02 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Bw06QEyLHxspT8n0fpR3KoPjpW8lRcSR7Hz16kD/fUXq+D4xCFHwoCDq7mDol5+3uaiVI4tmBPeqEnQDnd8uWgl23bNhqu+uN0OdQo5mnZIMSbJIOiMYhxP28SF0+kQvcFshZanXw/iCI6L+wkSPv/vSErQ4iYyt8IIK/lnXLbCK6GiRsOklCwBAuL45aLTivw9QIbx66KK0FMDczRPipsjb4NiVEEpTB0alsbfgIUFLAQ02uOitVGQhVr7Q/srZ1cVv6CBeggu8Y+IG0ns7O4KzJS26HiR2x9V1wl/EQ9Qrfd9XCyMhWqwewa7SPURMAzxCvo8f1UzOLdQ0q5ci1g== 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-SenderADCheck; bh=df0T3sfj5niXdUH1XPEI6yi0uuj2S38+B9aOGwX5avM=; b=AELvFeJcJOoMWYl+uNkeBOO3qcC856nHfnrRzMcmY74QSAzLt3fZYzSpV7pWdrtbYGVhKQM+a25gaypWYS6SOc0zuCGQu2cy3xwtaxu9RLXAoirwCbRTzWOIh9qf86PZoGUSU4EeAuG7t34HC7QdGUpdrWVdgnUA8/vEb1elnjQEz4FpJyajxKFUvri6XPfzSy41xOViDx3H/zlyHi9/7vG+ZGLprmsu3aHGxE0+UCSfAI2/2bx27P2hHaKnnwyf9Y6u3vzUdPySEd+uOFTn9wCQGHqP/BCp7/+Bzv97iRylHP8E9HkBU68i4hU7twKD4WGHulerbCFR2utBSFRd3w== 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=df0T3sfj5niXdUH1XPEI6yi0uuj2S38+B9aOGwX5avM=; b=9tTPcQg1FyZ2nmRSimaTOckAcjJ25KyHM23uT3zLGsHpkOwiWw38BEemop0YtaQ3B0IVht8wydPMSvRzXuUejQVCOXtr941RuupyxNaxB+jZPw7H/daax6fvG2ZMfQ/J0chK6WtEk6IxIaXjUaCr9UZ2xz2qHzPtD4na4zwHMRM= Received: from DB6PR0802MB2133.eurprd08.prod.outlook.com (10.172.227.22) by DB6PR0802MB2549.eurprd08.prod.outlook.com (10.172.251.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2073.10; Wed, 10 Jul 2019 13:52:00 +0000 Received: from DB6PR0802MB2133.eurprd08.prod.outlook.com ([fe80::259b:8edf:fb65:2760]) by DB6PR0802MB2133.eurprd08.prod.outlook.com ([fe80::259b:8edf:fb65:2760%8]) with mapi id 15.20.2052.020; Wed, 10 Jul 2019 13:52:00 +0000 From: Alan Hayward To: Simon Marchi CC: "gdb-patches@sourceware.org" , nd Subject: Re: [PATCH 3/7] Arm: Add read_description read funcs and use in GDB Date: Wed, 10 Jul 2019 13:52:00 -0000 Message-ID: <6071A4B3-3D8F-4C63-88FA-0DA2AB506F1C@arm.com> References: <20190705094525.51536-1-alan.hayward@arm.com> <20190705094525.51536-4-alan.hayward@arm.com> <2a5d9c40-e3d9-8827-9301-df4ae4212183@simark.ca> In-Reply-To: <2a5d9c40-e3d9-8827-9301-df4ae4212183@simark.ca> Authentication-Results-Original: spf=none (sender IP is ) smtp.mailfrom=Alan.Hayward@arm.com; X-Microsoft-Antispam-Untrusted: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(4618075)(2017052603328)(7193020);SRVR:DB6PR0802MB2549; X-MS-Exchange-PUrlCount: 1 x-checkrecipientrouted: true x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000; X-Forefront-Antispam-Report-Untrusted: SFV:NSPM;SFS:(10009020)(4636009)(346002)(396003)(39860400002)(136003)(376002)(366004)(189003)(199004)(6306002)(6512007)(14444005)(50226002)(81156014)(36756003)(81166006)(57306001)(7736002)(5660300002)(6246003)(8676002)(305945005)(76176011)(68736007)(486006)(476003)(11346002)(316002)(4326008)(54906003)(8936002)(86362001)(446003)(186003)(256004)(2616005)(6916009)(478600001)(53546011)(6506007)(102836004)(26005)(33656002)(14454004)(66476007)(6486002)(76116006)(66946007)(91956017)(66446008)(71200400001)(71190400001)(64756008)(66556008)(66066001)(99286004)(53936002)(25786009)(3846002)(6116002)(229853002)(2906002)(6436002)(2004002);DIR:OUT;SFP:1101;SCL:1;SRVR:DB6PR0802MB2549;H:DB6PR0802MB2133.eurprd08.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info-Original: VMrYI0Loo2uMoxDIT3J1Z9P+ToHoq2xAr/xKZ1YtRI4A9fXDj0JP9EjlYPS7hs1PzbyDtOvyMPFqHLK1e9l3X004YatN8T7WZkwcGyhiVKiTybVJIZoRlKUr5J+m/fzBe/xzyWBRdm+L0F3Y44UoYtvOs+NO5Kt59l2AGsDVFGguPRBdihX5ROQMr0sAgzHJmDbwrHG7uZbEBqJqGx8vsxmh+Y/kmFKLXFRun+WVjb418FVdypTMIY4T3wS7Xppm70lEYr4fLvCI58R+sh6MNs9o5Oc9sVU4j2URDJ63xGnHhiO+yhJmPRfujrG9Cu97Hv0U6atDSvyWpD1VOUF49vEHpJ85nsvngR4jkgW2yyHD9amjfwt91TTe2aleKiTNvQMzOdzqO1+h3Fgk5phieYvON6HbltryzgKL7ph1ihA= Content-Type: text/plain; charset="utf-8" Content-ID: <8350611FABCC2846B503431AA41036DD@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 Original-Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Alan.Hayward@arm.com; Return-Path: Alan.Hayward@arm.com X-MS-Exchange-Transport-CrossTenantHeadersStripped: VE1EUR03FT056.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: aa5a2e16-5c58-4143-acbf-08d7053dc84e X-IsSubscribed: yes X-SW-Source: 2019-07/txt/msg00240.txt.bz2 DQoNCj4gT24gMTAgSnVsIDIwMTksIGF0IDA0OjQ1LCBTaW1vbiBNYXJjaGkg PHNpbWFya0BzaW1hcmsuY2E+IHdyb3RlOg0KPiANCj4gT24gMjAxOS0wNy0w NSA1OjQ1IGEubS4sIEFsYW4gSGF5d2FyZCB3cm90ZToNCj4+IFN3aXRjaCB0 aGUgQXJtIHRhcmdldCB0byBnZXQgdGFyZ2V0IGRlc2NyaXB0aW9ucyB2aWEg YXJtX3JlYWRfZGVzY3JpcHRpb24NCj4+IGFuZCBhYXJjaDMyX3JlYWRfZGVz Y3JpcHRpb24sIGluIHRoZSBzYW1lIHN0eWxlIGFzIG90aGVyIGZlYXR1cmUg dGFyZ2V0cy4NCj4+IEFkZCBhbiBlbnVtIHRvIHNwZWNpZnkgdGhlIGRpZmZl cmVudCB0eXBlcyAtIHRoaXMgd2lsbCBhbHNvIGJlIG9mIHVzZSB0bw0KPj4g Z2Ric2VydmVyIGluIGEgbGF0ZXIgcGF0Y2guDQo+PiANCj4+IENhbGwgYXJt X2NyZWF0ZV9tcHJvZmlsZV90YXJnZXRfZGVzY3JpcHRpb24gZGlyZWN0bHkg YXMgdGhlc2Ugd2lsbCBvbmx5IGJlDQo+PiBjYWxsZWQgdGhlIG9uY2UsIHRo ZXJlZm9yZSB0aGV5IGRvIG5vdCBuZWVkIGNhY2hpbmcuDQo+IA0KPiBJIHdh cyBnb2luZyB0byBwb2ludCBvdXQgImNhbGxlZCB0aGUgb25jZSIsIGJlY2F1 c2UgaXQgc291bmRzIHN0cmFuZ2UgdG8gbWUsDQo+IGJ1dCB0aGVyZSBpcyBh bm90aGVyIGluc3RhbmNlIG9mIGl0IGluIGZ1bmN0aW9uIGFybV9yZWdpc3Rl cl9nX3BhY2tldF9ndWVzc2VzLA0KPiBzbyBtYXliZSBpdCdzIG9rPw0KDQpT aG91bGQgcHJvYmFibHkgcmVhZCDigJxjYWxsZWQgdGhlIG9uY2UgZm9yIGVh Y2ggdGFyZ2V0IGRlc2NyaXB0aW9uIHR5cGXigJ0uIEJ1dCwNCnJlbW92ZWQg ZHVlIHRvIGNvbW1lbnRzIGJlbG93Lg0KDQo+IA0KPj4gZGlmZiAtLWdpdCBh L2dkYi9NYWtlZmlsZS5pbiBiL2dkYi9NYWtlZmlsZS5pbg0KPj4gaW5kZXgg NzMwOGVhNTc2Ny4uOTM1MmRkOTJmZiAxMDA2NDQNCj4+IC0tLSBhL2dkYi9N YWtlZmlsZS5pbg0KPj4gKysrIGIvZ2RiL01ha2VmaWxlLmluDQo+PiBAQCAt NjY1LDcgKzY2NSw5IEBAIEFMTF82NF9UQVJHRVRfT0JTID0gXA0KPj4gDQo+ PiAjIEFsbCBvdGhlciB0YXJnZXQtZGVwZW5kZW50IG9iamVjdHMgZmlsZXMg KHVzZWQgd2l0aCAtLWVuYWJsZS10YXJnZXRzPWFsbCkuDQo+PiBBTExfVEFS R0VUX09CUyA9IFwNCj4+ICsJYWFyY2gzMi10ZGVwLm8gXA0KPj4gCWFyYy10 ZGVwLm8gXA0KPj4gKwlhcmNoL2FhcmNoMzIubyBcDQo+PiAJYXJjaC9hcm0u byBcDQo+PiAJYXJjaC9hcm0tZ2V0LW5leHQtcGNzLm8gXA0KPj4gCWFyY2gv YXJtLWxpbnV4Lm8gXA0KPj4gQEAgLTExODQsNiArMTE4Niw3IEBAIFNGSUxF UyA9IFwNCj4+ICMgcmlnaHQsIGl0IGlzIHByb2JhYmx5IGVhc2llc3QganVz dCB0byBsaXN0IC5oIGZpbGVzIGhlcmUgZGlyZWN0bHkuDQo+PiANCj4+IEhG SUxFU19OT19TUkNESVIgPSBcDQo+PiArCWFhcmNoMzItdGRlcC5oIFwNCj4+ IAlhYXJjaDY0LXJhdmVuc2Nhci10aHJlYWQuaCBcDQo+PiAJYWFyY2g2NC10 ZGVwLmggXA0KPj4gCWFkYS1sYW5nLmggXA0KPj4gQEAgLTE0MzEsNiArMTQz NCw3IEBAIEhGSUxFU19OT19TUkNESVIgPSBcDQo+PiAJeHRlbnNhLXRkZXAu aCBcDQo+PiAJYXJjaC9hYXJjaDY0LmggXA0KPj4gCWFyY2gvYWFyY2g2NC1p bnNuLmggXA0KPj4gKwlhcmNoL2FhcmNoMzIuaCBcDQo+IA0KPiBUaGlzIGxp bmUgc2hvdWxkIGdvIGFib3ZlIHRoZSBhYXJjaDY0IG9uZXMuDQoNCkRvbmUu DQoNCj4gDQo+PiBkaWZmIC0tZ2l0IGEvZ2RiL2FhcmNoMzItdGRlcC5jIGIv Z2RiL2FhcmNoMzItdGRlcC5jDQo+PiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0K Pj4gaW5kZXggMDAwMDAwMDAwMC4uZDkzNTVkMDY2NQ0KPj4gLS0tIC9kZXYv bnVsbA0KPj4gKysrIGIvZ2RiL2FhcmNoMzItdGRlcC5jDQo+PiBAQCAtMCww ICsxLDMzIEBADQo+PiArLyogQ29weXJpZ2h0IChDKSAyMDE5IEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbiwgSW5jLg0KPj4gKw0KPj4gKyAgIFRoaXMgZmls ZSBpcyBwYXJ0IG9mIEdEQi4NCj4+ICsNCj4+ICsgICBUaGlzIHByb2dyYW0g aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k L29yIG1vZGlmeQ0KPj4gKyAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQo+ PiArICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZl cnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3INCj4+ICsgICAoYXQgeW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KPj4gKw0KPj4gKyAgIFRoaXMg cHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp bGwgYmUgdXNlZnVsLA0KPj4gKyAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5U WTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQo+PiAr ICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB UiBQVVJQT1NFLiAgU2VlIHRoZQ0KPj4gKyAgIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQo+PiArDQo+PiArICAgWW91 IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVy YWwgUHVibGljIExpY2Vuc2UNCj4+ICsgICBhbG9uZyB3aXRoIHRoaXMgcHJv Z3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5z ZXMvPi4gICovDQo+PiArDQo+PiArI2luY2x1ZGUgImNvbW1vbi9jb21tb24t ZGVmcy5oIg0KPj4gKyNpbmNsdWRlICJjb21tb24vY29tbW9uLXJlZ2NhY2hl LmgiDQo+PiArI2luY2x1ZGUgImFyY2gvYWFyY2gzMi5oIg0KPj4gKw0KPj4g K3N0cnVjdCB0YXJnZXRfZGVzYyAqdGRlc2NfYWFyY2gzMjsNCj4gDQo+IHN0 YXRpYw0KDQpEb25lLg0KDQo+IA0KPj4gKw0KPj4gKy8qIFNlZSBsaW51eC1h YXJjaDMyLXRkZXAuaC4gICovDQo+IA0KPiAvKiBTZWUgYWFyY2gzMi10ZGVw LmguICAqLw0KDQpHYWghIERvbmUuDQoNCj4gDQo+PiBkaWZmIC0tZ2l0IGEv Z2RiL2FyY2gvYWFyY2gzMi5jIGIvZ2RiL2FyY2gvYWFyY2gzMi5jDQo+PiBu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KPj4gaW5kZXggMDAwMDAwMDAwMC4uZjNj YjhjNzg1NQ0KPj4gLS0tIC9kZXYvbnVsbA0KPj4gKysrIGIvZ2RiL2FyY2gv YWFyY2gzMi5jDQo+PiBAQCAtMCwwICsxLDI5IEBADQo+PiArLyogQ29weXJp Z2h0IChDKSAyMDE5IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLg0K Pj4gKw0KPj4gKyAgIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdEQi4NCj4+ICsN Cj4+ICsgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNh biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KPj4gKyAgIGl0IHVu ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UgYXMgcHVibGlzaGVkIGJ5DQo+PiArICAgdGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3INCj4+ICsgICAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9u Lg0KPj4gKw0KPj4gKyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBp biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KPj4gKyAgIGJ1 dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBs aWVkIHdhcnJhbnR5IG9mDQo+PiArICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJ VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KPj4g KyAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFp bHMuDQo+PiArDQo+PiArICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEg Y29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCj4+ICsg ICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRw Oi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovDQo+PiArDQo+PiArI2lu Y2x1ZGUgImNvbW1vbi9jb21tb24tZGVmcy5oIg0KPj4gKyNpbmNsdWRlICJh YXJjaDMyLmgiDQo+PiArDQo+PiArZXh0ZXJuIHN0cnVjdCB0YXJnZXRfZGVz YyAqdGRlc2NfYXJtX3dpdGhfbmVvbjsNCj4+ICsNCj4+ICsvKiBTZWUgYWFy Y2gzMi5oLiAgKi8NCj4+ICsNCj4+ICt0YXJnZXRfZGVzYyAqDQo+PiArYWFy Y2gzMl9jcmVhdGVfdGFyZ2V0X2Rlc2NyaXB0aW9uICgpDQo+PiArew0KPj4g KyAgcmV0dXJuIHRkZXNjX2FybV93aXRoX25lb247DQo+PiArfQ0KPiANCj4g Q2FuIHlvdSBicmllZmx5IGV4cGxhaW4gdGhlIGRpZmZlcmVuY2UgKGZyb20g dGhlIHBvaW50IG9mIHZpZXcgb2YgR0RCKSBiZXR3ZWVuIHRoZQ0KPiBBUk0g YW5kIEFBcmNoMzIgYXJjaGl0ZWN0dXJlPyAgTXkgY3VycmVudCB1bmRlcnN0 YW5kaW5nIGlzIHRoYXQgQUFyY2gzMiBpcyBBcm0odjc/KQ0KPiBlbXVsYXRp b24gb24gQUFyY2g2NCwgc28gdGhleSBhcmUgdmVyeSBjbG9zZS4gIEJ1dCB0 aGVyZSBtaWdodCBiZSBzb21lIHN1YnRsZQ0KPiBkaWZmZXJlbmNlcywgcmVx dWlyaW5nIEdEQiB0byBjb25zaWRlciB0aGVtIGFzIGRpZmZlcmVudCBhcmNo aXRlY3R1cmVzLg0KPiANCg0KQUFyY2gzMiBpcyB0aGUgMzJiaXQgbW9kZSBp biBBcm0gdjguIENvbXBhdGlibGUgd2l0aCBBcm0gdjcsIGJ1dCBuZXcgZmVh dHVyZXMgY29udGludWUNCnRvIGdvIGludG8gaXQgdmlhIHY4LU0gYW5kIHY4 LVIuICBFbXVsYXRpb24gaXMgcHJvYmFibHkgbm90IHF1aXRlIHRoZSBjb3Jy ZWN0IHdvcmQsIGFzDQppdOKAmXMgYWxsIGRvd24gaW4gaGFyZHdhcmUuDQoN Cg0KPiBFZGl0OiBJIG5vdyB3ZW50IHRocm91Z2ggdGhlIHBhdGNoIGFuZCBz YXcgdGhlIGNvbmZpZ3VyZS5pbiBjaGFuZ2UuICBNeSBndWVzcyB3b3VsZA0K PiBub3cgYmUgdGhhdCBpdCBhbGxvd3MgdG8gaW5jbHVkZSBpbiBhbiBBQXJj aDY0IGJ1aWxkIGp1c3Qgd2hhdCdzIGFjdHVhbGx5IHN1cHBvcnRlZA0KPiBi eSB0aGUgQUFyY2gzMiBtb2RlLCB3aGljaCBpcyBhcm0td2l0aC1uZW9uLCB3 aXRob3V0IGhhdmluZyB0byBwdWxsIHRoZSBlbnRpcmUgQXJtDQo+IHN1cHBv cnQuICBEb2VzIHRoYXQgc291bmQgcmlnaHQ/DQoNClllcy4gWWFvIHNwbGl0 IHRoZSBBQXJjaDMyIHBhcnRzIG91dCBmcm9tIEFybSBpbiBvcmRlciB0byBz dXBwb3J0IG11bHRpLWFyY2ggZGVidWdnaW5nDQpvbiBBQXJjaDY0LiBJ4oCZ bSBub3Qgc3VyZSBleGFjdGx5IHdoYXQgd29ya3Mgb24gaXQuDQoNCj4gDQo+ PiBkaWZmIC0tZ2l0IGEvZ2RiL2FyY2gvYXJtLmMgYi9nZGIvYXJjaC9hcm0u Yw0KPj4gaW5kZXggOTM3MzhmMGEwZi4uMzc4MDY3NTNjYiAxMDA2NDQNCj4+ IC0tLSBhL2dkYi9hcmNoL2FybS5jDQo+PiArKysgYi9nZGIvYXJjaC9hcm0u Yw0KPj4gQEAgLTIxLDYgKzIxLDE1IEBADQo+PiAjaW5jbHVkZSAiY29tbW9u L2NvbW1vbi1yZWdjYWNoZS5oIg0KPj4gI2luY2x1ZGUgImFybS5oIg0KPj4g DQo+PiArZXh0ZXJuIHN0cnVjdCB0YXJnZXRfZGVzYyAqdGRlc2NfYXJtX3dp dGhfdmZwdjI7DQo+PiArZXh0ZXJuIHN0cnVjdCB0YXJnZXRfZGVzYyAqdGRl c2NfYXJtX3dpdGhfdmZwdjM7DQo+PiArZXh0ZXJuIHN0cnVjdCB0YXJnZXRf ZGVzYyAqdGRlc2NfYXJtX3dpdGhfaXdtbXh0Ow0KPj4gKyNpZm5kZWYgR0RC U0VSVkVSDQo+PiArZXh0ZXJuIHN0cnVjdCB0YXJnZXRfZGVzYyAqdGRlc2Nf YXJtX3dpdGhfbTsNCj4+ICtleHRlcm4gc3RydWN0IHRhcmdldF9kZXNjICp0 ZGVzY19hcm1fd2l0aF9tX3ZmcF9kMTY7DQo+PiArZXh0ZXJuIHN0cnVjdCB0 YXJnZXRfZGVzYyAqdGRlc2NfYXJtX3dpdGhfbV9mcGFfbGF5b3V0Ow0KPj4g KyNlbmRpZg0KPj4gKw0KPj4gLyogU2VlIGFybS5oLiAgKi8NCj4+IA0KPj4g aW50DQo+PiBAQCAtMzcyLDMgKzM4MSw0OSBAQCBzaGlmdGVkX3JlZ192YWwg KHN0cnVjdCByZWdjYWNoZSAqcmVnY2FjaGUsIHVuc2lnbmVkIGxvbmcgaW5z dCwNCj4+IA0KPj4gICByZXR1cm4gcmVzICYgMHhmZmZmZmZmZjsNCj4+IH0N Cj4+ICsNCj4+ICsvKiBTZWUgYXJjaC9hcm0uaC4gICovDQo+PiArDQo+PiAr dGFyZ2V0X2Rlc2MgKg0KPj4gK2FybV9jcmVhdGVfdGFyZ2V0X2Rlc2NyaXB0 aW9uIChhcm1fZnBfdHlwZSBmcF90eXBlKQ0KPj4gK3sNCj4+ICsgIHN3aXRj aCAoZnBfdHlwZSkNCj4+ICsgICAgew0KPj4gKyAgICBjYXNlIEFSTV9GUF9U WVBFX05PTkU6DQo+PiArICAgICAgcmV0dXJuIG51bGxwdHI7DQo+PiArDQo+ PiArICAgIGNhc2UgQVJNX0ZQX1RZUEVfVkZQVjI6DQo+PiArICAgICAgcmV0 dXJuIHRkZXNjX2FybV93aXRoX3ZmcHYyOw0KPj4gKw0KPj4gKyAgICBjYXNl IEFSTV9GUF9UWVBFX1ZGUFYzOg0KPj4gKyAgICAgIHJldHVybiB0ZGVzY19h cm1fd2l0aF92ZnB2MzsNCj4+ICsNCj4+ICsgICAgY2FzZSBBUk1fRlBfVFlQ RV9JV01NWFQ6DQo+PiArICAgICAgcmV0dXJuIHRkZXNjX2FybV93aXRoX2l3 bW14dDsNCj4+ICsNCj4+ICsgICAgZGVmYXVsdDoNCj4+ICsgICAgICBlcnJv ciAoXygiSW52YWxpZCBBcm0gRlAgdHlwZTogJWQiKSwgZnBfdHlwZSk7DQo+ PiArICAgIH0NCj4+ICt9DQo+PiArDQo+PiArLyogU2VlIGFyY2gvYXJtLmgu ICAqLw0KPj4gKw0KPj4gK3RhcmdldF9kZXNjICoNCj4+ICthcm1fY3JlYXRl X21wcm9maWxlX3RhcmdldF9kZXNjcmlwdGlvbiAoYXJtX21fcHJvZmlsZV90 eXBlIG1fdHlwZSkNCj4+ICt7DQo+PiArICBzd2l0Y2ggKG1fdHlwZSkNCj4+ ICsgICAgew0KPj4gKyNpZm5kZWYgR0RCU0VSVkVSDQo+PiArICAgIGNhc2Ug QVJNX01fVFlQRV9NX1BST0ZJTEU6DQo+PiArICAgICAgcmV0dXJuIHRkZXNj X2FybV93aXRoX207DQo+PiArDQo+PiArICAgIGNhc2UgQVJNX01fVFlQRV9W RlBfRDE2Og0KPj4gKyAgICAgIHJldHVybiB0ZGVzY19hcm1fd2l0aF9tX2Zw YV9sYXlvdXQ7DQo+PiArDQo+PiArICAgIGNhc2UgQVJNX01fVFlQRV9XSVRI X0ZQQToNCj4+ICsgICAgICByZXR1cm4gdGRlc2NfYXJtX3dpdGhfbV92ZnBf ZDE2Ow0KPj4gKyNlbmRpZg0KPj4gKyAgICBkZWZhdWx0Og0KPj4gKyAgICAg IGVycm9yIChfKCJJbnZhbGlkIEFybSBNIHR5cGU6ICVkIiksIG1fdHlwZSk7 DQo+PiArICAgIH0NCj4+ICt9DQo+IA0KPiBJZiBpdCBkb2Vzbid0IG1ha2Ug c2Vuc2UgdG8gaGF2ZSB0aGlzIGZ1bmN0aW9uIHNoYXJlZCB3aXRoIEdEQnNl cnZlciAoZ2l2ZW4NCj4gdGhhdCBHREJzZXJ2ZXIgZG9lc24ndCBydW4gb24g Q29ydGV4LU1zKSwgaXQgc2hvdWxkIHByb2JhYmx5IGdvIGluIGdkYi9hcm0t dGRlcC5jLg0KDQpSaWdodC4gSSB3YXNu4oCZdCB0aGlua2luZyBvZiBhcmNo IGFzIOKAnGFyY2hpdGVjdHVyZSBjb2RlIHNoYXJlZCB3aXRoIGdkYnNlcnZl cuKAnSwNCmJ1dCBpdCBtYWtlcyBzZW5zZS4NCg0KVGhlIEdEQlNFUlZFUiBk ZWZpbmVzIGRvIHZhbmlzaCBsYXRlciBpbiB0aGUgc2VyaWVzLg0KDQpJIHRo aW5rIEkgcHJlZmVycmVkIGhhdmluZyB0aGUgdHdvIGZ1bmN0aW9ucyB0b2dl dGhlciBpbiBhcmNoLCBidXQgSeKAmXZlIG1vdmVkIGl0Lg0KDQoNCj4gDQo+ PiBkaWZmIC0tZ2l0IGEvZ2RiL2FybS10ZGVwLmMgYi9nZGIvYXJtLXRkZXAu Yw0KPj4gaW5kZXggOGUzNjA3Y2RlYS4uZjNmNjQ1OGEyNyAxMDA2NDQNCj4+ IC0tLSBhL2dkYi9hcm0tdGRlcC5jDQo+PiArKysgYi9nZGIvYXJtLXRkZXAu Yw0KPj4gQEAgLTI0MCw2ICsyNDAsOSBAQCBzdGF0aWMgY29uc3QgY2hhciAq KnZhbGlkX2Rpc2Fzc2VtYmx5X3N0eWxlczsNCj4+IC8qIERpc2Fzc2VtYmx5 IHN0eWxlIHRvIHVzZS4gRGVmYXVsdCB0byAic3RkIiByZWdpc3RlciBuYW1l cy4gICovDQo+PiBzdGF0aWMgY29uc3QgY2hhciAqZGlzYXNzZW1ibHlfc3R5 bGU7DQo+PiANCj4+ICsvKiBBbGwgcG9zc2libGUgYXJtIHRhcmdldCBkZXNj cmlwdG9ycy4gICovDQo+PiArc3RydWN0IHRhcmdldF9kZXNjICp0ZGVzY19h cm1fbGlzdFtBUk1fRlBfVFlQRV9JTlZBTElEXTsNCj4gDQo+IHN0YXRpYw0K DQpEb25lLg0KDQo+IA0KPj4gKw0KPj4gLyogVGhpcyBpcyB1c2VkIHRvIGtl ZXAgdGhlIGJmZCBhcmNoX2luZm8gaW4gc3luYyB3aXRoIHRoZSBkaXNhc3Nl bWJseQ0KPj4gICAgc3R5bGUuICAqLw0KPj4gc3RhdGljIHZvaWQgc2V0X2Rp c2Fzc2VtYmx5X3N0eWxlX3NmdW5jIChjb25zdCBjaGFyICosIGludCwNCj4+ IEBAIC04NzYzLDcgKzg3NjYsNiBAQCBhcm1fcmVnaXN0ZXJfcmVnZ3JvdXBf cCAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsIGludCByZWdudW0sDQo+PiAg ICAgcmV0dXJuIGRlZmF1bHRfcmVnaXN0ZXJfcmVnZ3JvdXBfcCAoZ2RiYXJj aCwgcmVnbnVtLCBncm91cCk7DQo+PiB9DQo+PiANCj4+IC0MDQo+PiAvKiBG b3IgYmFja3dhcmQtY29tcGF0aWJpbGl0eSB3ZSBhbGxvdyB0d28gJ2cnIHBh Y2tldCBsZW5ndGhzIHdpdGgNCj4+ICAgIHRoZSByZW1vdGUgcHJvdG9jb2wg ZGVwZW5kaW5nIG9uIHdoZXRoZXIgRlBBIHJlZ2lzdGVycyBhcmUNCj4+ICAg IHN1cHBsaWVkLiAgTS1wcm9maWxlIHRhcmdldHMgZG8gbm90IGhhdmUgRlBB IHJlZ2lzdGVycywgYnV0IHNvbWUNCj4+IEBAIC04Nzc3LDIxICs4Nzc5LDI5 IEBAIGFybV9yZWdpc3Rlcl9nX3BhY2tldF9ndWVzc2VzIChzdHJ1Y3QgZ2Ri YXJjaCAqZ2RiYXJjaCkNCj4+IHsNCj4+ICAgaWYgKGdkYmFyY2hfdGRlcCAo Z2RiYXJjaCktPmlzX20pDQo+PiAgICAgew0KPj4gKyAgICAgIGNvbnN0IHRh cmdldF9kZXNjICp0ZGVzYzsNCj4+ICsNCj4+ICsgICAgICAvKiBUaGlzIGZ1 bmN0aW9uIGlzIG9ubHkgY2FsbGVkIHRoZSBvbmNlLCB0aGVyZWZvcmUgaXQn cyBzYWZlIHRvIGNhbGwgdGhlDQo+PiArCSB0ZGVzYyBjcmVhdGlvbiBmdW5j dGlvbiBkaXJlY3RseS4gICovDQo+IA0KPiBUaGUgb3RoZXIgaW5zdGFuY2Ug b2YgImNhbGxlZCB0aGUgb25jZSIuDQo+IA0KPiBXb3VsZCBpdCBiZSAidW5z YWZlIiB0byBjYWxsIHRkZXNjIGNyZWF0aW9uIGZ1bmN0aW9ucyBtdWx0aXBs ZSB0aW1lcyBpbiBnZW5lcmFsPyAgSQ0KPiB0aG91Z2h0IGl0IHdhcyBqdXN0 IGEgcXVlc3Rpb24gb2YgZWZmaWNpZW5jeS9jYWNoaW5nLiAgSWYgc28sIEkn ZCBzYXkgInRoZXJlZm9yZQ0KPiBpdCdzIG5vdCB3b3J0aCBjYWNoaW5nIHRo ZSBkZXNjcmlwdGlvbnPigJ0uDQoNClllcywgaXTigJlzIGp1c3QgZWZmaWNp ZW5jeS9jYWNoaW5nLg0KDQo+IA0KPiBJdCBtaWdodCBiZSB0cnVlIHRoYXQg dGhleSBhcmUgY2FsbGVkIG9ubHkgb25jZSB0b2RheSAoSSBndWVzcyBiZWNh dXNlIHRoZSBvbmx5IHdheSB0bw0KPiBkZWJ1ZyB0aGVtIGluIHByYWN0aWNl IGlzIHRocm91Z2ggc29tZSBzZXJ2ZXIgdGhhdCBvbmx5IHN1cHBvcnQgZGVi dWdnaW5nIG9uZSBhdCB0aGUNCj4gdGltZSksIGJ1dCBpdCBjb3VsZCBjaGFu Z2UgZXZlbnR1YWxseS4gIEZvciBleGFtcGxlLCB3aXRoIG11bHRpLXRhcmdl dCwgeW91IGNvdWxkDQo+IGNvbm5lY3QgdG8gdHdvIG9mIHRoZW0uICBTaW5j ZSBpdCdzIG5vdCByZWFsbHkgZGlmZmljdWx0LCBJJ2QgdXNlIHRoZSBzYW1l IGNhY2hpbmcgcGF0dGVybg0KPiBhcyBmb3IgdGhlIG90aGVyIG9uZXMuDQo+ IA0KDQpBZ3JlZWQgYW5kIGRvbmUuDQoNClRoZSBhYm92ZSBjaGFuZ2VzIGFy ZSBnb2luZyB0byByZXF1aXJlIHJlYmFzaW5nIHRoZSBvdGhlciBwYXRjaGVz IHRvby4gSeKAmWxsIHJlcG9zdCB0aGUNCnNldCBhcyBhIFYyLg0KDQoNCkFs YW4uDQoNCg==