Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp5047158ybi; Tue, 11 Jun 2019 18:06:44 -0700 (PDT) X-Google-Smtp-Source: APXvYqzJucIL8oA143L7R/WSxT4Mj+/KUi2mLnqZExsC7dCoHH3RapDiTT0XrbcwPLmiHCHMkE0h X-Received: by 2002:a17:902:6a4:: with SMTP id 33mr77317841plh.338.1560301603939; Tue, 11 Jun 2019 18:06:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1560301603; cv=none; d=google.com; s=arc-20160816; b=YNgRxDVQcSzQDkjeys5IBCEvnXbETj3BgSkJYgkgiS1zInL/zLhkInPWqrqudBsZ3E SyjvN595leOPlh7O284nvIIsBaN3grxlEOE+aHF4enC4zYRf0bfniXOYnXeXPkZicc4x SjZxv8s+iY2zE9SPUELDdq99q27zcho8ir3L/RgS+1WBE3FAHdkB/ahOhAIdWWq8uv+p SiPA0uAsyklo876UfthRU3rm7h1RQQHVPRogaFCZZ5rliylqsTxFQA3wLli0HTDJ37b8 dO7oC9yPveQlXg74JMYrcSvlWXRyfwqsFL7Ypn1o17nO1mwtdVnNXjs+M+IKbf0QZ/YA Q8XA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-id:content-language:accept-language:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:cc:to:from :dkim-signature; bh=UwjipNqkURLvonkq5riz69Wli8lVjiIlrEyzLwswKrY=; b=jJZHXDwV7gzHhyznKxjpns89MCUFYwmCCKxwtRUjss4cV2UF1WRoDtwC63ZHFBG0I3 C7GHWZeaZ5mw9MM4hJnaYEfo3L3qdX5Og1PjgvGuQtKxatdJPkaUoYkC/N5lZQSLfg9/ 2V20oudawQHAfsObOanTK2ReEdQLZy+ZSGj4A8HroR449E1x/JA6l0JMeI84dSNJsbVr fY+ycbIXkdJJlte5IruF3pVwMiMPXdakv17P05DgRYwWP43khUdRhSeJS9s2wF8wC1zC qhtXX90cvI31oLJZchadKIhruA3DwaJ7SGm2uAQyHDJPeInR6YHVGLa3rSmYSpZjr7mP 0OIA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@synopsys.com header.s=mail header.b=NJUaPoJc; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=synopsys.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b2si556072pls.207.2019.06.11.18.06.28; Tue, 11 Jun 2019 18:06:43 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@synopsys.com header.s=mail header.b=NJUaPoJc; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=synopsys.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2406553AbfFKUke (ORCPT + 99 others); Tue, 11 Jun 2019 16:40:34 -0400 Received: from smtprelay-out1.synopsys.com ([198.182.61.142]:38292 "EHLO smtprelay-out1.synopsys.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S2406545AbfFKUke (ORCPT ); Tue, 11 Jun 2019 16:40:34 -0400 Received: from mailhost.synopsys.com (dc2-mailhost2.synopsys.com [10.12.135.162]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by smtprelay-out1.synopsys.com (Postfix) with ESMTPS id CF634C2089; Tue, 11 Jun 2019 20:40:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=synopsys.com; s=mail; t=1560285633; bh=UwjipNqkURLvonkq5riz69Wli8lVjiIlrEyzLwswKrY=; h=From:To:CC:Subject:Date:References:In-Reply-To:From; b=NJUaPoJc88cWPwjR0LSQqEO2LVURGP8DU2xbntHUwI1PhhYpkMcV7Acu2NkYv8c6B IdteFRee3OM/mxiuoDb75Dl3IR/q4+Q1OPtaU1U7oPM2GxGG8C7K1m/A/HwoiiZkWR O9EjdT+jivIF/L4PZT/q2yTv73ZtWQZEXLaa+Worwnw0Q9paLX5+eUp7yufkJoT2Sv BUc9lIQT1Bw1/BriblRnBkBvtIdNJKEkmpsB33yGZchXBL+8g7S7rZvkmPlJNdlRcb sm7veHCSQW8strSeUKc7K2wHPPfY08qa8nlrGbGnw7KhRROQU60K2dM/kE23Tz2poO foiySm2TYlURQ== Received: from US01WEHTC2.internal.synopsys.com (us01wehtc2.internal.synopsys.com [10.12.239.237]) (using TLSv1.2 with cipher AES128-SHA256 (128/128 bits)) (No client certificate requested) by mailhost.synopsys.com (Postfix) with ESMTPS id A6056A0093; Tue, 11 Jun 2019 20:40:32 +0000 (UTC) Received: from DE02WEHTCA.internal.synopsys.com (10.225.19.92) by US01WEHTC2.internal.synopsys.com (10.12.239.237) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 11 Jun 2019 13:40:32 -0700 Received: from DE02WEMBXB.internal.synopsys.com ([fe80::95ce:118a:8321:a099]) by DE02WEHTCA.internal.synopsys.com ([::1]) with mapi id 14.03.0415.000; Tue, 11 Jun 2019 22:40:28 +0200 From: Cupertino Miranda To: Eugeniy Paltsev , Vineet Gupta CC: Claudiu Zissulescu , "linux-kernel@vger.kernel.org" , Alexey Brodkin , "linux-snps-arc@lists.infradead.org" Subject: Re: ARC Assembler: bundle_align_mode directive support Thread-Topic: ARC Assembler: bundle_align_mode directive support Thread-Index: AQHVHicA2N+x/AVgjkyWYOIr/ofXiqaWz+cA///+EYA= Date: Tue, 11 Jun 2019 20:40:28 +0000 Message-ID: <015f8668b5fff15e781722165f38fa4beacffcf1.camel@synopsys.com> References: <3962a9ad199cea45b1cfadb80be551aab83b7028.camel@synopsys.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.225.15.211] Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org SGkgRXVnZW5peSwNCg0KSWYgSSB1bmRlcnN0YW5kIHdlbGwgd2hhdCB0aGlzIG9wdGltaXphdGlv biB3b3VsZCBkbyBpcyAuLi4gdGhpcw0Kb3B0aW1pemF0aW9uIHdvdWxkIHJlcGxhY2UgY29uZGl0 aW9uYWwgY29kZSBieSBmaXhlZCBqdW1wcyB0aGF0IHdvdWxkDQp0dXJuIG91dCB0byBiZSBhbHdh eXMgaGFwcGVuaW5nLiBMaWtlIGZpeGVkIEFSQyBidWlsZCBhdXggcmVnaXN0ZXJzDQpiYXNlZCBj b25kaXRpb25hbCBqdW1wcy4NCg0KSSBkb24ndCB1bmRlcnN0YW5kIHNldmVyYWwgdGhpbmdzOg0K IDFzdC4gQ2FuJ3Qgd2UgaW52YWxpZGF0ZSBtdWx0aXBsZSBpY2FjaGUgbGluZXMsIGFuZCBzeW5j aHJvbml6ZSB0aGVtDQp0aHJvdWdoIGFsbCBDUFVzPyBJIGFtIGFmcmFpZCBubyBvbmUgbWlnaHQg a25vdyB0aGUgYWN0dWFsIHRydXRoIHRvDQp0aGlzIHF1ZXN0aW9uLiA6LSkNCiAybmQuIFR1cm5z IG91dCBhbGwgbXkgcXVlc3Rpb25zIGFyZSBpbiBudW1iZXIgMS4gOi1EDQoNClN1Z2dlc3Rpb246 IENhbid0IHdlIG1ha2UgdXNlIG9mIGluc3RydWN0aW9uIHNsb3RzIHRvIHBlcmZvcm0gdGhpcyA/ DQpQbGVhc2Ugbm90aWNlIGVpX3MgaXMgYSBzaG9ydCAxNiBiaXQgaW5zdHJ1Y3Rpb24uIFJlcGxh Y2luZyB0aGUNCmluc3RydWN0aW9uIHdpdGggYW4gImVpX3MgPGluZGV4PiIgYW5kIGEgbm9wIGlu IGNhc2Ugb2YgMzIgYml0DQppbnN0cnVjdGlvbiA/IERvIGFsbCBvZiB0aGUgTGludXggY29tcGF0 aWJsZSB0YXJnZXQgc3VwcG9ydCBpbnN0cnVjdGlvbg0Kc2xvdHMgPw0KQW55d2F5IGl0IHdpbGwg bm90IHNvbHZlIHRoZSBpbnZhbGlkIGluc3RydWN0aW9uIGluIHRoZSByZW1haW5pbmcNCmljYWNo ZSBsaW5lLg0KDQpGb3IgcmVmZXJlbWNlLCBJIHN0aWxsIHRoaW5rIHRoaXMgb3B0aW1pemF0aW9u IGlzIGEgbGl0dGxlIHVzZWxlc3MgYW5kDQphIGNhbiBvZiB3b3JtcywgYXMgZm9yIGFjdHVhbCB1 c2UgY2FzZXMgdGhlIGN1c3RvbWVyIGNhbiBrbm93IGF0DQpjb21waWxlIHRpbWUgYWxsIG9mIHRo ZSB0aGlzIGNvbnN0YW50IGp1bXBzIGZvciBpdHMgdGFyZ2V0Lg0KTm8gb25lIHRoYXQgd291bGQg Y2FyZSBmb3IgcGVyZm9ybWFuY2Ugd291bGQgcHJlZmVyIHRoaXMgZmVhdHVyZSB0bw0KYWN0dWFs IGNsZWFyIG91dCBvZiBpdHMgY29kZS4NCg0KTG9va2luZyBhdCBpdCwgSXQgc2VlbXMgdG8gbWUg dGhhdCBMaW51eCBrZXJuZWwgc2hvdWxkIGV2b2x2ZSB0byBhIEpJVA0KY29tcGlsYXRpb24gYXBw cm9hY2gsIGluc3RlYWQgb2YgdGhpcyBKSVQganVnZ2xpbmcgb25lLg0KDQpCZXN0IHJlZ2FyZHMs DQpDdXBlcnRpbm8NCg0KDQpPbiBUdWUsIDIwMTktMDYtMTEgYXQgMTg6NDcgKzAwMDAsIEV1Z2Vu aXkgUGFsdHNldiB3cm90ZToNCj4gSGkgVmluZWV0LA0KPiANCj4gT24gTW9uLCAyMDE5LTA2LTEw IGF0IDE1OjU1ICswMDAwLCBWaW5lZXQgR3VwdGEgd3JvdGU6DQo+ID4gT24gNi84LzE5IDExOjIx IEFNLCBFdWdlbml5IFBhbHRzZXYgd3JvdGU6DQo+ID4gPiBIaSBDdXBlcnRpbm8sDQo+ID4gPiAN Cj4gPiA+IEkgdHJpZWQgdG8gdXNlICIuYnVuZGxlX2FsaWduX21vZGUiIGRpcmVjdGl2ZSBpbiBB UkMgYXNzZW1ibHksDQo+ID4gPiBidXQgSSBnb3QgZm9sbG93aW5nIGVycm9yOg0KPiA+ID4gLS0t LS0tLS0tLS0tLS0tLS0+OC0tLS0tLS0tLS0tLS0tDQo+ID4gPiBBc3NlbWJsZXIgbWVzc2FnZXM6 DQo+ID4gPiBFcnJvcjogdW5rbm93biBwc2V1ZG8tb3A6IGAuYnVuZGxlX2FsaWduX21vZGUnDQo+ ID4gPiAtLS0tLS0tLS0tLS0tLS0tLT44LS0tLS0tLS0tLS0tLS0NCj4gPiA+IA0KPiA+ID4gSXMg aXQgcG9zc2libGUgdG8gaW1wbGVtZW50IGl0IGluIEFSQyBhc3NlbWJsZXI/DQo+ID4gPiBUaGVy ZSBpcyBzb21lIGNvbnRleHQgYWJvdXQgdGhlIHJlYXNvbiB3ZSB3YW50IHRvIGhhdmUgaXQ6DQo+ ID4gPiANCj4gPiA+IEknbSB0cnlpbmcgdG8gYWRkIHN1cHBvcnQgb2YganVtcCBsYWJlbHMgZm9y IEFSQyBpbiBsaW51eCBrZXJuZWwuDQo+ID4gPiBKdW1wIGxhYmVscw0KPiA+ID4gcHJvdmlkZSBh biBpbnRlcmZhY2UgdG8gZ2VuZXJhdGUgc3RhdGljIGJyYW5jaGVzIHVzaW5nIHNlbGYtDQo+ID4g PiBtb2RpZnlpbmcgY29kZS4NCj4gPiA+IFRoaXMgYWxsb3dzIHVzIHRvIGltcGxlbWVudCBjb25k aXRpb25hbCBicmFuY2hlcyB3aGVyZSBjaGFuZ2luZw0KPiA+ID4gYnJhbmNoDQo+ID4gPiBkaXJl Y3Rpb24gaXMgZXhwZW5zaXZlIGJ1dCBicmFuY2ggc2VsZWN0aW9uIGlzIGJhc2ljYWxseSAnZnJl ZScuDQo+ID4gPiANCj4gPiA+IFRoZXJlIGlzIG51YW5jZSBpbiBjdXJyZW50IGltcGxlbWVudGF0 aW9uOg0KPiA+ID4gV2UgbmVlZCB0byBwYXRjaCBjb2RlIGJ5IHJld3JpdGluZyAzMi1iaXQgTk9Q IGJ5IDMyLWJpdCBCUkFOQ0gNCj4gPiA+IGluc3RydWN0aW9uIChvciB2aWNlIHZlcnNhKS4NCj4g PiA+IEl0IGNhbiBiZSBlYXNpbHkgZG9uZSB3aXRoIGZvbGxvd2luZyBjb2RlOg0KPiA+ID4gLS0t LS0tLS0tLS0tLS0tLS0+OC0tLS0tLS0tLS0tLS0tDQo+ID4gPiB3cml0ZV8zMl9iaXQobmV3X2lu c3RydWN0aW9uKQ0KPiA+ID4gZmx1c2hfbDFfZGNhY2hlX3JhbmdlX3RoaXNfY3B1DQo+ID4gPiBp bnZhbGlkYXRlX2wxX2ljYWNoZV9yYW5nZV9hbGxfY3B1DQo+ID4gPiAtLS0tLS0tLS0tLS0tLS0t LT44LS0tLS0tLS0tLS0tLS0NCj4gPiA+IA0KPiA+ID4gSSQgdXBkYXRlIHdpbGwgYmUgYXRvbWlj IGluIG1vc3Qgb2YgY2FzZXMgZXhjZXB0IHRoZSBwYXRjaGVkDQo+ID4gPiBpbnN0cnVjdGlvbiBz aGFyZQ0KPiA+ID4gdHdvIEwxIGNhY2hlIGxpbmVzIChzbyBmaXJzdCAxNiBiaXRzIG9mIGluc3Ry dWN0aW9uIGFyZSBpbiB0aGUNCj4gPiA+IG9uZSBjYWNoZSBsaW5lIGFuZA0KPiA+ID4gbGFzdCAx NiBiaXQgYXJlIGluIGFub3RoZXIgY2FjaGUgbGluZSkuDQo+ID4gPiBJbiBzdWNoIGNhc2Ugd2Ug Y2FuIGV4ZWN1dGUgaGFsZi11cGRhdGVkIGluc3RydWN0aW9uIGlmIHdlIGFyZQ0KPiA+ID4gcGF0 Y2hpbmcgbGl2ZSBjb2RlIChhbmQgd2UgYXJlIHVubHVja3kgZW5vdWdoIDopDQo+ID4gDQo+ID4g V2hpbGUgSSB1bmRlcnN0YW5kIHlvdXIgbmVlZCBmb3IgYWxpZ25tZW50LCBJIGRvbid0IHNlZSBo b3cgeW91IGNhbg0KPiA+IHBvc3NpYmx5DQo+ID4gZXhlY3V0ZSBzdHJheSBsaW5lcy4NCj4gPiBk Y2FjaGUgZmx1c2ggd2lsbCBiZSBwcm9wYWdhdGVkIGJ5IGhhcmR3YXJlIChTQ1UpIHRvIGFsbCBj b3JlcyAoYXMNCj4gPiBhcHBsaWNhYmxlKSBhbmQNCj4gPiB0aGUgaWNhY2hlIGNhY2hlIGZsdXNo IHhjYWxsIGlzIHN5bmNocm9ub3VzIGFuZCB3aWxsIGhhdmUgdG8gZmluaXNoDQo+ID4gb24gYWxs IGNvcmVzDQo+ID4gYmVmb3JlIHdlIHByb2NlZWQgdG8gZXhlY3V0ZSB0aGUgY29kIGVpdHNlbGYu DQo+ID4gDQo+IA0KPiBJdCdzIGVhc3kgYXMgaGVsbCAtIHdlIG1heSBleGVjdXRlIHNvbWUgY29k ZSBvbiBvbmUgQ1BVIGFuZCBwYXRjaCBpdA0KPiBvbiBhbm90aGVyIENQVSBhdCB0aGUgc2FtZSBt b21lbnQgOikNCj4gDQo+IEFuZCBoZXJlIGlzIHRoZSBleGFtcGxlIG9mIHRoZSBzaXR1YXRpb24g d2hlbiB3ZSBjYW4gZ2V0IHRoZSBpc3N1ZToNCj4gLSBMZXQncyBpbWFnaW5lIHdlIGhhdmUgU01Q IHN5c3RlbSB3aXRoIENQVSMwIGFuZCBDUFUjMS4NCj4gLSBXZSBoYXZlIGluc3RydWN0aW9uIHdo aWNoIHNoYXJlIHR3byBMMSBjYWNoZSBsaW5lczoNCj4gfiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IH4NCj4gfiAg ICAgICAgICAgIHxpbnN0cnVjdGlvbi1aICgzMi1iaXQgaW5zdHJ1Y3Rpb24gd2UNCj4gcGF0Y2gp fCAgICAgICAgICAgIH4NCj4gfiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18LS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IH4NCj4gfiAgIGNhY2hlLWxpbmUtWCAg ICAgICAgICAgICAgICAgICB8IGNhY2hlLWxpbmUtDQo+IFkgICAgICAgICAgICAgICAgICAgICB+ DQo+IH4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQ0KPiB+DQo+IA0KPiBDUFUjMCBpcyB0cnlpbmcgdG8gc3dpdGNoIG91 ciBzdGF0aWMgYnJhbmNoLCBzbyBpdCB3aWxsIHBhdGNoIHRoZQ0KPiBjb2RlIChpbnN0cnVjdGlv bi1aKQ0KPiBDUFUjMSBpcyBleGVjdXRpbmcgdGhpcyBjb2RlIHdpdGggb3VyIHN0YXRpYyBicmFu Y2gsIHNvIGl0IGV4ZWN1dGUNCj4gdGhlIGNvZGUgKHdpdGggaW5zdHJ1Y3Rpb24tWikgdGhhdCB3 aWxsIGJlIHBhdGNoZWQuDQo+IA0KPiAxKSBDUFUjMDogd2UgZ2VuZXJhdGUgbmV3IGluc3RydWN0 aW9uICh0byByZXBsYWNlICdpbnN0cnVjdGlvbi1aJykNCj4gICAgYW5kIHdyaXRlIGl0IHdpdGgg MzItYml0IHN0b3JlIChzdCkuIEl0IGlzIHdyaXR0ZW4gdG8gQ1BVIzAgTDENCj4gZGF0YSBjYWNo ZS4NCj4gMikgQ1BVIzA6IHdlIGNhbGwgb3VyIGZ1bmN0aW9uIGZsdXNoX2ljYWNoZV9yYW5nZS4N Cj4gICAgSXQgZmlyc3RseSB3aWxsIGZsdXNoIEwxIGRhdGEgY2FjaGUgcmVnaW9uIG9uIENQVSMw Lg0KPiAgICBJbiBvdXIgZXhhbXBsZSBpdCB3aWxsIGZsdXNoIENQVSMwIEwxICdjYWNoZS1saW5l LVgnIGFuZCAnY2FjaGUtDQo+IGxpbmUtWScgdG8gTDIgY2FjaGUuDQo+IDMpIENQVSMxOiB3ZSBh cmUgZXhlY3V0aW5nIGNvZGUgd2hpY2ggaXMgaW4gJ2NhY2hlLWxpbmUtWCcuDQo+ICAgICdjYWNo ZS1saW5lLVknIGlzIF9fTk9UX18gaW4gdGhlIEwxIGluc3RydWN0aW9uIGNhY2hlIG9mIENQVSMx Lg0KPiAgICBXZSBuZWVkIHRvIGV4ZWN1dGUgJ2luc3RydWN0aW9uLVonLCBidXQgb25seSBoYWxm IG9mIHRoZQ0KPiBpbnN0cnVjdGlvbiBpcyBpbiBMMSBpbnN0cnVjdGlvbiBjYWNoZS4NCj4gICAg Q1BVIzEgZmV0Y2ggJ2NhY2hlLWxpbmUtWScgdG8gTDEgaW5zdHJ1Y3Rpb24gY2FjaGUuDQo+IDQp ICBPb29wczogbm93IHdlIGhhdmUgY29ycnVwdGVkICdpbnN0cnVjdGlvbi1aJyBpbiBMMSBpbnN0 cnVjdGlvbg0KPiBjYWNoZSBvZiBDUFUjMToNCj4gICAgRmlyc3QgMTYgYml0IG9mIHRoaXMgaW5z dHJ1Y3Rpb24gKHdoaWNoIGJlbG9uZ3MgdG8gJ2NhY2hlLWxpbmUtWCcpIA0KPiBhcmUgb2xkIChu b3QgcGF0Y2hlZCkuDQo+ICAgIExhc3QgMTYgYml0IG9mIHRoaXMgaW5zdHJ1Y3Rpb24gKHdoaWNo IGJlbG9uZ3MgdG8gJ2NhY2hlLWxpbmUtWScpDQo+IGFyZSBuZXcgKHBhdGNoZWQpLg0KPiANCj4g PiA+IEFzIG9mIHRvZGF5IEkgc2ltcGx5IGFsaWduIGJ5IDQgYnl0ZSBpbnN0cnVjdGlvbiB3aGlj aCBjYW4gYmUNCj4gPiA+IHBhdGNoZWQgd2l0aCAiLmJhbGlnbiA0IiBkaXJlY3RpdmU6DQo+ID4g PiAtLS0tLS0tLS0tLS0tLS0tLT44LS0tLS0tLS0tLS0tLS0NCj4gPiA+IHN0YXRpYyBfX2Fsd2F5 c19pbmxpbmUgYm9vbCBhcmNoX3N0YXRpY19icmFuY2hfanVtcChzdHJ1Y3QNCj4gPiA+IHN0YXRp Y19rZXkgKmtleSwNCj4gPiA+ICAgICBib29sIGJyYW5jaCkNCj4gPiA+IHsNCj4gPiA+IGFzbV92 b2xhdGlsZV9nb3RvKCIuYmFsaWduIDRcbiINCj4gPiA+ICAiMTpcbiINCj4gPiA+ICAiYiAlbFts X3llc11cbiIgLy8gPC0gaW5zdHJ1Y3Rpb24gd2hpY2ggY2FuIGJlIHBhdGNoZWQNCj4gPiA+ICAi LnB1c2hzZWN0aW9uIF9fanVtcF90YWJsZSwgXCJhd1wiXG4iDQo+ID4gPiAgIi53b3JkIDFiLCAl bFtsX3llc10sICVjMFxuIg0KPiA+ID4gICIucG9wc2VjdGlvblxuIg0KPiA+ID4gIDogOiAiaSIg KCYoKGNoYXIgKilrZXkpW2JyYW5jaF0pIDogOiBsX3llcyk7DQo+ID4gPiANCj4gPiA+IHJldHVy biBmYWxzZTsNCj4gPiA+IGxfeWVzOg0KPiA+ID4gcmV0dXJuIHRydWU7DQo+ID4gPiB9DQo+ID4g PiAtLS0tLS0tLS0tLS0tLS0tLT44LS0tLS0tLS0tLS0tLS0NCj4gPiA+IA0KPiA+ID4gSW4gdGhh dCBjYXNlIHBhdGNoZWQgaW5zdHJ1Y3Rpb24gaXMgYWxpZ25lZCB3aXRoIG9uZSAxNi1iaXQgTk9Q DQo+ID4gPiBpZiB0aGlzIGlzIHJlcXVpcmVkLg0KPiA+ID4gSG93ZXZlciAnYWxpZ24gYnkgNCcg ZGlyZWN0aXZlIGlzIG11Y2ggc3RyaWN0ZXIgdGhhbiBpdCBhY3R1YWxseQ0KPiA+ID4gcmVxdWly ZWQuDQo+ID4gDQo+ID4gSSBkb24ndCBxdWl0ZSB1bmRlcnN0YW5kLiBDYW4gdSB3cml0ZSBhIGNv dXBsZSBvZiBsaW5lcyBvZiBwc2V1ZG8NCj4gPiBhc3NlbWJseSB0byBzaG93DQo+ID4gd2hhdCB0 aGUgaXNzdWUgaXMuDQo+IA0KPiBBbGwgaW5zdHJ1Y3Rpb25zIG9uIEFSQ3YyIGFyZSBhbGlnbmVk IGJ5IDIgYnl0ZSAoZXZlbiBpZiB0aGUNCj4gaW5zdHJ1Y3Rpb24gaXMgNC1ieXRlIGxvbmcpLg0K PiANCj4gVXNpbmcgJy5iYWxpZ24nIGRpcmVjdGl2ZSB3ZSBhbGlnbiBpbnN0cnVjdGlvbiB3aGlj aCBjYW4gYmUNCj4gcGF0Y2hlZCBieSA0IGJ5dGUuDQo+IFNvIGNvbXBpbGVyIHdpbGwgYWRkIG9u ZSAnbm9wX3MnIGJlZm9yZSBvdXIgaW5zdHJ1Y3Rpb24gaWYgaXQgaXMgbm90DQo+IDQgYnl0ZSBh bGlnbmVkLg0KPiANCj4gU28gdGhpcyBjb2RlDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0+OC0tLS0t LS0tLS0tLS0tLQ0KPiAtLS0tLQ0KPiAgLmJhbGlnbiA0DQo+ICAxOg0KPiAgYiAlbFtsX3llc10g ICAjPC0gaW5zdHJ1Y3Rpb24gd2hpY2ggY2FuIGJlIHBhdGNoZWQNCj4gLS0tLS0tLS0tLS0tLS0t LS0tLT44LS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gbWF5IHR1cm4gaW50byB0aGlzOg0KPiAtLS0t LS0tLS0tLS0tLS0tLQ0KPiAtLT44LS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gYmxhLWJsYS1ibGEN Cj4gIGIgbF95ZXMgICAgICAgIzwtIGluc3RydWN0aW9uIHdoaWNoIGNhbiBiZSBwYXRjaGVkDQo+ IGJsYS1ibGEtYmxhDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0+OC0tLS0tLS0tLS0tLS0tLS0tLS0t DQo+IG9yIHRoYXQ6DQo+IC0tLS0NCj4gLS0tLS0tLS0tLS0tLS0tPjgtLS0tLS0tLS0tLS0tLS0t LS0tLQ0KPiBibGEtYmxhLWJsYQ0KPiAgbm9wX3MgICAgICAgICAjIHBhZGRpbmcNCj4gIGIgbF95 ZXMgICAgICAgIzwtIGluc3RydWN0aW9uIHdoaWNoIGNhbiBiZSBwYXRjaGVkDQo+IGJsYS1ibGEt YmxhDQo+IC0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tPjgtLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAN Cj4gSW4gbW9zdCBvZiB0aGUgY2FzZXMgdGhpcyBleHRyYSAnbm9wX3MnIGlzIHVubmVjZXNzYXJ5 IGFzIGl0IGlzIGZpbmUNCj4gdG8gaGF2ZSBvdXIgaW5zdHJ1Y3Rpb24NCj4gbm90IDQgYnl0ZSBh bGlnbmVkIGlmIGl0IGRvZXNuJ3QgY3Jvc3MgbDEgY2FjaGUgbGluZSBib3VuZGFyeS4NCj4gDQo+ IEl0IGlzJ3QgdGhlIGh1Z2UgcHJvYmxlbSAtIGJ1dCB3ZSBhcmUgYWRkaW5nIG9uZSB1bm5lY2Vz c2FyeSAnbm9wJw0KPiB3aGlsZSB3ZSB0cnkgdG8gb3B0aW1pemUgaG90IGNvZGUuDQo+IA0KPiA+ IA0KPiA+ID4gSXQncyBlbm91Z2gNCj4gPiA+IHRoYXQgb3VyIDMyLWJpdCBpbnN0cnVjdGlvbiBk b24ndCBjcm9zcyBsMSBjYWNoZSBsaW5lIGJvdW5kYXJ5Lg0KPiA+ID4gVGhhdCB3aWxsIHNhdmUg dXMgZnJvbSBhZGRpbmcgdXNlbGVzcyBOT1AgcGFkZGluZyBpbiBtb3N0IG9mIHRoZQ0KPiA+ID4g Y2FzZXMuDQo+ID4gPiBJdCBjYW4gYmUgaW1wbGVtZW50ZWQgd2l0aCAiLmJ1bmRsZV9hbGlnbl9t b2RlIiBkaXJlY3RpdmUgd2hpY2gNCj4gPiA+IGlzbid0IHN1cHBvcnRlZCBieSBBUkMgQVMgdW5m b3J0dW5hdGVseS4NCj4gPiANCj4gPiBUaGlzIHNlZW1zIGxpa2UgYSByZWFzb25hYmxlIHJlcXVl c3QgKGNvbnRpbmdlbnQgdG8gdGhlIGRpZmZpY3VsdHkNCj4gPiBvZg0KPiA+IGltcGxlbWVudGF0 aW9uIGluIGJpbnV0aWxzKS4gYnV0IEkgY2FuJ3QgY29tcHJlaGVuZCB3aHkgeW91IHdvdWxkDQo+ ID4gbmVlZCBpdC4NCj4gDQo+IElmIHdlIHdpbGwgaGF2ZSAiLmJ1bmRsZV9hbGlnbl9tb2RlIiBk aXJlY3RpdmUgc3VwcG9ydGVkIHdlIGNhbiBhZGQNCj4gZXh0cmEgJ25vcF9zJyBvbmx5IGlmIGl0 J3MgcmVhbGx5IHJlcXVpcmVkDQo+IChpZiBvdXIgaW5zdHJ1Y3Rpb24gX3JlYWxseV8gY3Jvc3Mg TDEgY2FjaGUgbGluZSBib3VuZGFyeSkuIFNvIHdlDQo+IHdvbid0IGFkZCB1c2VsZXNzIE5PUCB0 byBob3QgY29kZS4NCj4gDQo+IC0tDQo+ICBFdWdlbml5IFBhbHRzZXYNCg==