From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by sourceware.org (Postfix) with ESMTPS id CB41A3858D3C for ; Tue, 7 Mar 2023 10:25:58 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org CB41A3858D3C Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=de.ibm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=de.ibm.com Received: from pps.filterd (m0098409.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3278cXgA028607; Tue, 7 Mar 2023 10:25:56 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=pp1; bh=e4Uq/ADnhduvxpOHkc6bnYyzfBkHXsgaKJt5z0OCXXc=; b=CydLcsKbA5+yneulkqFpveQik3E0XmItYSyNS9OoUgAstC6h5t6//KB7kOf2a/Ai7dko l3XOJwIgx7bjBIzhLWyZkBdLbvkjB4Pg9heA3IdMJ9ExU/rC1qgj+chgzABIkOP/cjxG 3YkhG6s0le5mqVU6r3M9y17ykf6b1TbEhVUGVNBFmmF7kwzUd4UndRZQmT3nzWr1YgI0 Oo9YCIgqFUN8E+3FVB+FVWUzkA8sx8L+U7mF3L+lw6ZRwvHr1Hu0RQ5EEub1/MvXAAqW /G45bu+VHD23qdLZoDV23D99Iqx+p4JlN6OygBd6+i0bqFf3kmlpqLxAcx9NQi3EsQsk eg== Received: from nam04-dm6-obe.outbound.protection.outlook.com (mail-dm6nam04lp2046.outbound.protection.outlook.com [104.47.73.46]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3p4ysekjfs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 07 Mar 2023 10:25:56 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hiy9U4XAOtKUbaE5bZqwxux5N+f9j+gJui8ECDS+rnaMH1/seedVuKImmDQ/mD6zSfuXV4SmdmLSJqQ02ABHXT9hsYCRKlVZ1K40u3BQhvX7oHqnFDC5hJbhV2e6nAuGnjfw9fh7gabBETDMkt8+TQC5I3eR44OQdXnzlWzRbmJ4daFXKISpDhB7uV3+R5KOiEKLYfDQie8g76Su0y5h9x/5qgLLtDcdkCbMXO3feq7IYEQuiFjpIu7rnlpH4E29AUPQTAYuBpGry2KdIlZpUiVyd2Xyxgk2lwt33QYUeqxb1plHCMdQVgUaKYcp9Cd2caHy1ZwuBznDsHSvsGiVKA== 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=e4Uq/ADnhduvxpOHkc6bnYyzfBkHXsgaKJt5z0OCXXc=; b=gi1xWt9t6ppWHB3mZ63ghg1haHib//bG90krc7ToPpbd8XTZabqCZP63Jio0T1gA1pvY1xrZVFcDEQp/JqPBTYYDUsPyqwnM/U8ZimHcGl1UPhRtMRcgDjuChuUQxuyDl1upkBdf09mBFNzXnbvqZp/lEiMgImfVjEFd5MJyqxdgD7dP/E51rU+KEm7LSRe/L93uPpxktz0L9MH9kxe3mpN1hyj7OrbvAIvV6tIaTKuNANzuT1EnS9nAEkB7YaI88RVHmGxotZ/a6K5bcSNWGDPtg/eZ8/GeVg95127vHL7PKkMGINZrCkjMigYPPK3gsyUpKJZdOtdYn27S7Z8NGA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=de.ibm.com; dmarc=pass action=none header.from=de.ibm.com; dkim=pass header.d=de.ibm.com; arc=none Received: from MN2PR15MB3149.namprd15.prod.outlook.com (2603:10b6:208:ea::29) by PH0PR15MB4462.namprd15.prod.outlook.com (2603:10b6:510:83::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6156.29; Tue, 7 Mar 2023 10:25:54 +0000 Received: from MN2PR15MB3149.namprd15.prod.outlook.com ([fe80::7ab3:f93b:66e3:904f]) by MN2PR15MB3149.namprd15.prod.outlook.com ([fe80::7ab3:f93b:66e3:904f%7]) with mapi id 15.20.6156.029; Tue, 7 Mar 2023 10:25:54 +0000 From: Ulrich Weigand To: "gdb-patches@sourceware.org" , Aditya Kamath1 , "simark@simark.ca" CC: Sangamesh Mallayya Subject: Re: [PATCH] Enable vector instruction debugging for AIX Thread-Topic: [PATCH] Enable vector instruction debugging for AIX Thread-Index: AQHY3u6lF+eu5MBiPkac4T2UQTTsTa4N1rEAgBXdOaaAACL2AIAa9qYHgAG+XYCAnK7VvIAB0CqAgAeraRCAA01QgIAEn//SgAFc7IA= Date: Tue, 7 Mar 2023 10:25:54 +0000 Message-ID: <300eb480053b4c27b868d23196058273758320b1.camel@de.ibm.com> References: <3914469e72960a5d0d659f9ea8ea84c4456d64e2.camel@de.ibm.com> <02d8d62d9980ea5ae8e30b3ee1e7ac46a1b9f412.camel@de.ibm.com> <17dcfeee50a782539d977be334836e5f2d232a2c.camel@de.ibm.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN2PR15MB3149:EE_|PH0PR15MB4462:EE_ x-ms-office365-filtering-correlation-id: 3450594b-de59-44ed-23fb-08db1ef6553e x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ZZoFT6bkJmpZC0PcCny4q/Owuxq+IG4D3Iyhq6ZW32Nkrvd6WvvwdI3lRUmSyBn6Gr4nf4W3yIQgrxs9IgutTBFWQhNMMP5c2+ZJTsLK5rgAldaWZ/2bAMEJS6BwVMxLqiiX4f1pw4bLMJsor4pFN5Lwj6/dQ7xNanyLZeiY24gXLkV0XF4eLZYpnfcC/yIUT2cMfb8P3Hj2SA2d4oZlsfG1HHOsM7Dc9rmv9q3/Gyp7XlZLmPlRK/rMVMFtfgFQd2Tectpp5/g+H9s6F3r9u608ddlZ41EJzh/3dx0aNZqakBJ0m4F4n0eb9jGeRtuOWi7bc2KGKCFo5mo4brtw8Xo+loQ/O6ZxyuU49JXu3TpzwtofIQIxr/xMLyG825KgKuLei7yL54yESySAHk019y5yYAg41Q7Sx79r3rwot6Ornv87ZKy5Nr3zkyZxXuTIF+zbn3oiFSBZFWkz1lY226Sjf/R3KnjgAqJ64zTN4zwpIdFxX+75zsbTlhWBK3s7sCczZz+jtuCjSRW54vPisRe/r6TgSeTSciX1AFDjv4zRwIndCrtsHtiOktFDd06UHUTC9TiP2eGDoV1HI2nt0V1RReRt/5Qu7VxzdXFAcR/i4nUApKO85SZJ2wphobP+k69y7MCWwOvSBdvYWIh/OOgQuo77+LaKpKm8KGmQNwoth1U9WdGmLsPZgrBLlCYUu0yrnqiLwQFohVkuqrxOYg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR15MB3149.namprd15.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(39860400002)(376002)(136003)(366004)(346002)(396003)(451199018)(6506007)(6512007)(316002)(2616005)(2906002)(38100700002)(86362001)(91956017)(76116006)(8676002)(4326008)(66476007)(66556008)(64756008)(66446008)(66946007)(8936002)(478600001)(122000001)(71200400001)(5660300002)(41300700001)(83380400001)(186003)(110136005)(6486002)(38070700005);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?bFBWdVJrUndvQ2JuTmcwYTc2UXNFeFc3dngxVUtJeDFMaWhzRlZrMVZGYmZV?= =?utf-8?B?bG16MkRISjdzNkdtWVl4RlpROXpmOW1pWkFBWDMreUpuZTlVSkpaNWRoWnNv?= =?utf-8?B?a0IyUmc0bVBWbW1qeFIzc29VNDJaNDNseXA1NTdNR3NRaWc0bkpVRG8rSUVo?= =?utf-8?B?a2RnbWpuWVV2WU5Uai9mdTA3NldBWTBEeHNjM05Td1p5VUNzdmRuZnlXdDVV?= =?utf-8?B?YW9nVEpuaGlidHliVkw2UUtaV0ZyOWFMS0NJTWljZ3FocDc1bU5IeWo1WlEy?= =?utf-8?B?QW01bklKMGdzU1dGdmphR09UdVdjVDY3RlF5alVqTHhnVzlvcWIvdEFOOXRz?= =?utf-8?B?RklvYWdBMWlWaXc2MlZDNzFYSDEwZm9ML280clhOb3FpVFBqVU1WaGZKNW5h?= =?utf-8?B?blcrRHczNHRFR2xtWGFlTEFBdHl5SzE2ZVJBc0lnY2piMUJwMTRkeFFGK3FW?= =?utf-8?B?elNqY1l1cTJyZFJKYlRtczBIRUd0UWFJd3owOE1Ob3gyeUhyVGVvOVhsQkVx?= =?utf-8?B?eG5yVXk3MHlsbWlTTHJWMU5HS0s4RmxHdWFPM0szV1ROczl6VDNtYktsNkZk?= =?utf-8?B?SnpqeWVTR3RtUnEra25lZ21yQmpmdVA1M3pHUkJZS0VXRXl5OUx0QUxldGFz?= =?utf-8?B?b3RjWTRoS1RQTTZFbFFmWWt3RXJ5TjZONFRydGVtMFYzSkdRaUp1VW10ejJn?= =?utf-8?B?MFhQOE90YVhUclcvY0RCYzlsT1pyWHNlWnJVZ3BrL0xXV1FrNENnZEdaTDU5?= =?utf-8?B?cHBNYm9vWXRUMG9nRHN2VTNIOVBXeklVOHoxbFlDVG1MMHArZjVucGtHQWc0?= =?utf-8?B?SlFMeGpRZU9SYXNIWktSNlptMyswNDI0QlZWODJ1bnRwblJUcjJGTDFwMHFY?= =?utf-8?B?VXNwNVJsKzg3ZDRCVkRoeStQaWM2eVpyTmcxRnArT0RocTlaRDFPSDI2UHhV?= =?utf-8?B?U2FTcUxoTVB6Y0NRUjRNYytDWUV0L3hHejRTU09tbVBveFFjbUdudHB4QW1H?= =?utf-8?B?bFZLMmllMGdidmtCcG9OZkVVdnJ1U0l2NkJpYWxLSFlDNEFQVnpJRUVzOFNR?= =?utf-8?B?L3Fqc3pUeDZsTlZmZ2hKc2t1WXhzbk03VHhkcXdVWTN4SXVTc3EwaWZxUmlo?= =?utf-8?B?NUZpVXQvMGs5Y1BHZ1M4ZFUwbGVnR3JueUp0M0Z0UTJZWllTcHp6UUtRZHZQ?= =?utf-8?B?RGxPUFY1OUEwN1hXS2RTVUkvckRVd2JuR1IyYnFVNUZJbFhlTVJhZXJvU0xX?= =?utf-8?B?WWNYWUdzdS9qMmFuWHpuVmhvU3BWNFdKT0t2WFlMcnFFUEdKdGFLZmR3WVpL?= =?utf-8?B?bE50RWY4ZjZuTmF5OXg3WXI0SVBNMnE0REN1OUhNelBYOW9idEQvWFBPU21Q?= =?utf-8?B?YnBqNkpuTlZjeDdkeFdTeG1OZVhnOHdqVnAwcERaa0pxK0Y4dnFFMnBRUThj?= =?utf-8?B?aHdXbmNsZkxNMENERVFGL0VrQ21wbmJiMjR2OXUxNGZQdTJSU2M2QldZNmRY?= =?utf-8?B?UU8yUFA4Tm1JVXl4d3MrMTFqU0xQN1BGSDJSOVhsZElyVWZqZXI4aWxCTzUv?= =?utf-8?B?VURMc0ZSRmhyQU1ZSi92NTVrUkVUR3NId0lqL1VpZE1lT01xb0JJTno2c002?= =?utf-8?B?cTdUL0FLQmthK2tvYWhxUmY1NStySjRQZzgvN0lyZVNYdklnTUZYcGNaKyta?= =?utf-8?B?Z1FuK0dwNVdpMWEyRldTdXdnbzV5S2IxNllQV3hlWWZEVG5KcWlrSlkzME03?= =?utf-8?B?QVFEbU5CWWR3YXNkR2hDa3N6eCtrN2ZQbEhGZmgwVmdTS0VjMnFPYmVaYTFD?= =?utf-8?B?R0wxVmdGVThwakI3YmM1bDlnZWhXam90anFZd24zQS9ZelpwTTJTWk1YcGVC?= =?utf-8?B?b21WV0g2eWMyWERmeUQvWUFqayt6dm5PQkF3Z21XWW52TDBWSzd3b1YwU2JO?= =?utf-8?B?NUJmRE95U1BFZmtKNDZicGRwMHBvTkI2ZEtUd2lJUWVRQjQvNjNHUXV3NmlW?= =?utf-8?B?N01YMVcrNjlyN2ZNdUwrMGx5QnUrOStXUXJGaTcwK0crQlBuNVVSN2l2U3px?= =?utf-8?B?UjZCYTNqT3VSVlBwUEM0VGsrS0ZqSFEvVEdRTTIxbVozWVYzbUgya3RhVkRr?= =?utf-8?B?RnljanZoNk50MUdMYklhZWUrY2tXMTBkN2JVNXk0VUNRdEZPajB5b2xJUmZk?= =?utf-8?B?cDNSaWlPa1ZTa0JhcGhybWhtUmlvd1VGNFp2M2VqQzhSZW5JeHBsc3ZjVWNW?= =?utf-8?B?bFZRRHV4a2JnRGJNd25UL09MRU9BPT0=?= Content-Type: text/plain; charset="utf-8" Content-ID: <134C154CC9D9A748923D69406878D26C@namprd15.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: de.ibm.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN2PR15MB3149.namprd15.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3450594b-de59-44ed-23fb-08db1ef6553e X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Mar 2023 10:25:54.3824 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fcf67057-50c9-4ad4-98f3-ffca64add9e9 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: jZQYOgMUd/bOc2RevxQhvNo8B/wZtB9VzsXLjiDT4IDOHSry1clD51kLbJkgOzzrtWTKYhjwMUoyu3tIFYK3As8Vz6eXo9ov8+hsUu5otII= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR15MB4462 X-Proofpoint-ORIG-GUID: p8xXVDY9pRy5sv0ZEC4RhADP1bqPUsJw X-Proofpoint-GUID: p8xXVDY9pRy5sv0ZEC4RhADP1bqPUsJw X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.219,Aquarius:18.0.942,Hydra:6.0.573,FMLib:17.11.170.22 definitions=2023-03-07_04,2023-03-07_01,2023-02-09_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 clxscore=1011 malwarescore=0 adultscore=0 spamscore=0 impostorscore=0 lowpriorityscore=0 mlxlogscore=886 suspectscore=0 bulkscore=0 priorityscore=1501 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2303070091 X-Spam-Status: No, score=-2.3 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS,TXREP 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: QWRpdHlhIEthbWF0aDEgPEFkaXR5YS5LYW1hdGgxQGlibS5jb20+IHdyb3RlOg0KDQo+U28gSSBj b25uZWN0ZWQgd2l0aCBteSBzZW5pb3JzIG9uIHRoaXMuIFNvIEFJWCBmb2xrcyBhcmUgdXNpbmcg Ny4xIG5vdy4gDQo+U28gSSBoYXZlIGNoYW5nZWQgdGhpcyB0byBtaW5pbXVtIDcueC4uIEtpbmRs eSBzZWUgaXQgaW4gdGhpcyBwYXRjaC4gDQo+Rm9yIHRob3NlIHdobyBhcmUgYmVsb3cgNy4xLCB3 ZSBhcmUgbm90IHN1cHBvcnRpbmcuIA0KDQpPSywgdGhpcyBtYWtlcyBzZW5zZSB0byBtZS4gIEJ1 dCBpdCBsb29rcyBsaWtlIHlvdSd2ZSBhZGRlZCB0aGlzDQp0byB0aGUgd3Jvbmcgc2VjdGlvbiBu b3csIHNlZSBiZWxvdy4NCg0KPj5GaXggY29kaW5nIHN0eWxlICh7IHNob3VsZCBiZSBpbmRlbnRl ZCkuDQo+VGhpcyBpcyBkb25lLiBJIGhhdmUgZWxpbWluYXRlZCBhbGwgUkhTIHNwYWNlIGFuZCBh bGlnbmVkIHRoZSBmbG93ZXIgYnJhY2tldHMgd2hlcmV2ZXIgSSBzYXcgaXQgd2FzIG5vdCBhbGln bmVkLg0KDQpVbmZvcnR1bmF0ZWx5IGl0IHNlZW1zIHlvdSBjaGFuZ2VkIG1hbnkgb2YgdGhlc2UN CmluIHRoZSB3cm9uZyBkaXJlY3Rpb24gbm93LiAgR05VIGNvZGluZyBzdHlsZSBpcw0KdG8gaW5k ZW50IHRoZSB7IGJ5IHR3byBzcGFjZXMsIGFuZCB0aGVuIGluZGVudCB0aGUNCmJsb2NrIGluc2lk ZSBieSAqYW5vdGhlciogdHdvIHNwYWNlczoNCg0KICBpZiAoY29uZGl0aW9uKQ0KICAgIHsNCiAg ICAgIC8qIGNvZGUgKi8NCiAgICB9DQoNCkFsc28sIHRoZSBwYXRjaCBzdGlsbCBpbnRyb2R1Y2Vz IHZhcmlvdXMgaW5zdGFuY2VzIG9mDQo4IHNwYWNlcyAodGhhdCBzaG91bGQgYmUgdGFicyksIGFu ZCB3aGl0ZXNwYWNlIGF0IHRoZQ0KZW5kIG9mIHRoZSBsaW5lICh3aGljaCBzaG91bGQgYmUgcmVt b3ZlZCkuDQoNCg0KPkBAIC05MzgsNiArOTM4LDkgQEAgaW5mbyBzb3VyY2VzDQo+IA0KPiBBUk0g U3ltYmlhbgkJCWFybSotKi1zeW1iaWFuZWxmKg0KPiANCj4rR0RCIG5vIGxvbmdlciBzdXBwb3J0 cyBBSVggNC54LCBBSVggNS54IGFuZCBBSVggNi54LiAgVGhlIG1pbmltdW0gc3VwcG9ydGVkDQo+ K0FJWCB2ZXJzaW9uIGlzIG5vdyBBSVggNy4xLg0KPisNCg0KWW91J3ZlIGFkZGVkIHRoaXMgdW5k ZXIgdGhlIEdEQiAxMSBuZXdzIHNlY3Rpb24sIHdoaWNoIGlzIHdyb25nLg0KDQpZb3Ugc2hvdWxk IGluc3RlYWQgYWRkIGEgbmV3IHNlY3Rpb24gDQogICogUmVtb3ZlZCB0YXJnZXRzIGFuZCBuYXRp dmUgY29uZmlndXJhdGlvbnMNCmluIHRoZSB0b3Btb3N0IA0KICAqKiogQ2hhbmdlcyBzaW5jZSBH REIgMTMNCnNlY3Rpb24uDQoNCj4rICBfX3ZteF9jb250ZXh0X3Qgdm14Ow0KPisgIGlmIChfX3Bv d2VyX3ZteCgpICYmIChmbGFncyAmIFBUSERCX0ZMQUdfUkVHUykpDQo+KyAgew0KDQpXcm9uZyBp bmRlbnRhdGlvbi4NCg0KPisgIC8qIHZzeCByZWdpc3RlcnMuICAqLw0KPisgIF9fdnN4X2NvbnRl eHRfdCB2c3g7DQo+KyAgaWYgKF9fcG93ZXJfdnN4KCkgJiYgKGZsYWdzICYgUFRIREJfRkxBR19S RUdTKSkNCj4rICB7DQoNCkxpa2V3aXNlLg0KDQo+KyAgLyogdmVjdG9yIHJlZ2lzdGVycy4gICov DQo+KyAgaWYgKF9fcG93ZXJfdm14KCkgJiYgKGZsYWdzICYgUFRIREJfRkxBR19SRUdTKSkNCj4r ICB7DQoNCkxpa2V3aXNlLg0KDQo+KyAgLyogdnN4IHJlZ2lzdGVycy4gICovDQo+KyAgaWYgKF9f cG93ZXJfdnN4KCkgJiYgKGZsYWdzICYgUFRIREJfRkxBR19SRUdTKSkNCj4rICB7DQoNCkxpa2V3 aXNlLg0KDQo+KyAgLyogRmlsbCBhbHRpdmVjLXJlZ2lzdGVycy4gICovDQo+Kw0KPisgIGlmIChf X3Bvd2VyX3ZteCgpKQ0KPisgIHsNCg0KTGlrZXdpc2UgdGhyb3VnaG91dCB0aGUgYmxvY2sNCg0K PisgICAgbWVtc2V0KCZ2bXgsIDAsIHNpemVvZihfX3ZteF9jb250ZXh0X3QpKTsNCj4rICAgIGlm IChkYXRhLT5hcmNoNjQpDQoNCldoeSBpcyB0aGlzIGNoZWNrIG5lY2Vzc2FyeSwgYW5kIHdoYXQg aGFwcGVucyBvbiAzMi1iaXQgdGFyZ2V0cz8NCg0KPisgIC8qIEZpbGwgdnN4IHJlZ2lzdGVycy4g Ki8NCj4rDQo+KyAgaWYgKF9fcG93ZXJfdnN4KCkpDQo+KyAgew0KPisgICAgbWVtc2V0KCZ2c3gs IDAsIHNpemVvZihfX3ZzeF9jb250ZXh0X3QpKTsNCj4rICAgIGlmIChkYXRhLT5hcmNoNjQpDQoN ClNhbWUgcXVlc3Rpb24sIGFsc28gc2FtZSBpbmRlbnRhdGlvbiBpc3N1ZXMuDQoNCj4rICAgIC8q IFZlY3RvciByZWdpc3RlcnMuICAqLw0KPisgICAgaWYgKHRkZXAtPnBwY192cjBfcmVnbnVtICE9 IC0xICYmIHRkZXAtPnBwY192cnNhdmVfcmVnbnVtICE9IC0xDQo+KwkmJiAocmVnbm8gPT0gLTEg fHwgKHJlZ25vID49IHRkZXAtPnBwY192cjBfcmVnbnVtDQo+KwkmJiByZWdubyA8PSB0ZGVwLT5w cGNfdnJzYXZlX3JlZ251bSkpKQ0KPisgICAgew0KDQpBbHNvIGluZGVudGF0aW9uIGlzc3VlcyB0 aHJvdWdob3V0IHRoZSBibG9jay4NCg0KPisgICAgLyogVlNYIHJlZ2lzdGVycy4gICovDQo+KyAg ICBpZiAodGRlcC0+cHBjX3ZzcjBfdXBwZXJfcmVnbnVtICE9IC0xICYmIChyZWdubyA9PSAtMQ0K PisJfHwgKHJlZ25vID49dGRlcC0+cHBjX3ZzcjBfdXBwZXJfcmVnbnVtKSkpDQoNCllvdSd2ZSBu b3cgcmVtb3ZlZCB0aGUgdXBwZXIgbGltaXQgY29tcGxldGVseS4gIEkgdGhpbmsgdGhpcyBuZWVk cyBhbiANCiAgJiYgcmVnbm8gPCB0ZGVwLT5wcGNfdnNyMF91cHBlcl9yZWdudW0gKyBwcGNfbnVt X3ZzaHJzDQoNCj4rICBtZW1zZXQoJnZzeCwgMCwgc2l6ZW9mKF9fdnN4X2NvbnRleHRfdCkpOw0K PisgIGlmIChfX3Bvd2VyX3ZzeCgpICYmIHRocmRfaSA+IDApDQo+KyAgew0KDQpJbmRlbnRhdGlv bi4NCg0KPisgIG1lbXNldCgmdm14LCAwLCBzaXplb2YoX192bXhfY29udGV4dF90KSk7DQo+KyAg aWYgKF9fcG93ZXJfdm14KCkgJiYgdGhyZF9pID4gMCkNCj4rICB7DQoNCkxpa2V3aXNlLg0KDQo+ KyAgbWVtc2V0KCZ2bXgsIDAsIHNpemVvZihfX3ZteF9jb250ZXh0X3QpKTsNCj4rICBpZiAoX19w b3dlcl92bXgoKSAmJiB0aHJkX2kgPiAwKQ0KPisgIHsNCg0KTGlrZXdpc2UuDQoNCj4rICBtZW1z ZXQoJnZzeCwgMCwgc2l6ZW9mKF9fdnN4X2NvbnRleHRfdCkpOw0KPisgIGlmIChfX3Bvd2VyX3Zz eCgpICYmIHRocmRfaSA+IDApDQo+KyAgew0KDQpMaWtld2lzZS4NCg0KPisgIC8qIEFsdGktdmVj IHJlZ2lzdGVyLiAgKi8NCj4rICBpZiAoYWx0aXZlY19yZWdpc3Rlcl9wIChnZGJhcmNoLCByZWdu bykpDQo+KyAgew0KPisgICAgZmV0Y2hfYWx0aXZlY19yZWdpc3RlcnNfYWl4IChyZWdjYWNoZSk7 DQo+KyAgICByZXR1cm47DQo+KyAgfQ0KPisNCj4rICAvKiBWU1ggcmVnaXN0ZXIuICAqLw0KPisg IGlmICh2c3hfcmVnaXN0ZXJfcCAoZ2RiYXJjaCwgcmVnbm8pKQ0KPisgIHsNCj4rICAgIGZldGNo X3ZzeF9yZWdpc3RlcnNfYWl4IChyZWdjYWNoZSk7DQo+KyAgICByZXR1cm47DQo+KyAgfQ0KDQpM aWtld2lzZS4NCg0KPisgIGlmIChhbHRpdmVjX3JlZ2lzdGVyX3AgKGdkYmFyY2gsIHJlZ25vKSkN Cj4rICB7DQo+KyAgICBzdG9yZV9hbHRpdmVjX3JlZ2lzdGVyX2FpeCAocmVnY2FjaGUsIHJlZ25v KTsNCj4rICAgIHJldHVybjsNCj4rICB9DQo+Kw0KPisgIGlmICh2c3hfcmVnaXN0ZXJfcCAoZ2Ri YXJjaCwgcmVnbm8pKQ0KPisgIHsNCj4rICAgIHN0b3JlX3ZzeF9yZWdpc3Rlcl9haXggKHJlZ2Nh Y2hlLCByZWdubyk7DQo+KyAgICByZXR1cm47DQo+KyAgfQ0KDQpMaWtld2lzZS4NCg0KPitjb25z dCBzdHJ1Y3QgdGFyZ2V0X2Rlc2MgKg0KPityczYwMDBfbmF0X3RhcmdldDo6cmVhZF9kZXNjcmlw dGlvbiAoKQ0KPit7DQo+KyAgIGlmIChBUkNINjQoKSkNCj4rICAgew0KPisgICAgIGlmIChfX3Bv d2VyX3ZzeCAoKSkNCj4rICAgICAgIHJldHVybiB0ZGVzY19wb3dlcnBjX3ZzeDY0Ow0KPisgICAg IGVsc2UgaWYgKF9fcG93ZXJfdm14ICgpKQ0KPisgICAgICAgcmV0dXJuIHRkZXNjX3Bvd2VycGNf YWx0aXZlYzY0Ow0KPisgICB9DQo+KyAgIGVsc2UNCj4rICAgew0KPisgICAgIGlmIChfX3Bvd2Vy X3ZzeCAoKSkNCj4rICAgICAgIHJldHVybiB0ZGVzY19wb3dlcnBjX3ZzeDMyOw0KPisgICAgIGVs c2UgaWYgKF9fcG93ZXJfdm14ICgpKQ0KPisgICAgICAgcmV0dXJuIHRkZXNjX3Bvd2VycGNfYWx0 aXZlYzMyOw0KPisgICB9DQo+KyAgIHJldHVybiBOVUxMOw0KPit9DQoNCkxpa2V3aXNlLg0KDQo+ KyAgaWYgKHJlZ251bSA9PSAtMSkNCj4rICB7DQoNCkxpa2V3aXNlLg0KDQo+KyAgaWYgKHJlZ251 bSA9PSAtMSkNCj4rICB7DQoNCkxpa2V3aXNlLg0KDQo+KyAgaWYgKHJlZ251bSA9PSAtMSkNCj4r ICB7DQoNCkxpa2V3aXNlLg0KDQo+KyAgaWYgKHJlZ251bSA9PSAtMSkNCj4rICB7DQoNCkxpa2V3 aXNlLg0KDQpCeWUsDQpVbHJpY2gNCg0K