From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: [PATCH v3 01/28] xen/x86: Drop unused and non-useful feature definitions Date: Wed, 16 Mar 2016 03:53:08 -0400 Message-ID: <20160316075308.GA31144@char.us.oracle.com> References: <1458056124-8024-1-git-send-email-andrew.cooper3@citrix.com> <1458056124-8024-2-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <1458056124-8024-2-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Andrew Cooper Cc: Jan Beulich , Xen-devel List-Id: xen-devel@lists.xenproject.org T24gVHVlLCBNYXIgMTUsIDIwMTYgYXQgMDM6MzQ6NTdQTSArMDAwMCwgQW5kcmV3IENvb3BlciB3 cm90ZToKPiBOb25lIG9mIHRoZXNlIGZlYXR1cmVzIGFyZSBpbnRlcmVzdGluZyBmb3IgWGVuIHRv IHVzZSwgb3IgdG8gYmUgYWR2ZXJ0aXNlZCB0bwo+IGd1ZXN0cy4gIERvaW5nIHNvIGlkZW50aWZp ZXMgZnVydGhlciBhcmVhcyBvZiBjb2RlIHdoaWNoIGNhbiBiZSByZW1vdmVkIG5vdwo+IHRoYXQg MzJiaXQgc3VwcG9ydCBoYXMgYmVlbiBkcm9wcGVkLgo+IAo+IElBNjQgaGFzIGEgc29sZSB1c2Vy IGluIG1pY3JvY29kZV9pbnRlbC5jLiAgV2hpbGUgaXQgaXMgcGxhdXNpYmxlIGZvciBhIDMyYml0 Cj4geDg2IGh5cGVydmlzb3IgdG8gZ2V0IHRoZXJlIHZpYSBJQTY0J3MgeDg2IGVtdWxhdGlvbiwg YSA2NGJpdCB4ODYgaHlwZXJ2aXNvcgo+IG1vc3QgY2VydGFpbmx5IHdvbid0Lgo+IAo+IE1QIHBy b3ZlcyB0byBiZSBtb3JlIGNvbXBsaWNhdGVkLiAgSXQgaXMgb25seSBhZHZlcnRpc2VkIG9uIHNv bWUgSzcKPiBwcm9jZXNzb3JzLCBub3Qgb24gSzggb3IgbmV3ZXIsIGFuZCBub3cgbGlzdGVkIGFz IHJlc2VydmVkIGluIHRoZSBBTUQgbWFudWFsLgo+IENsZWFuaW5nIHRoaXMgdXAgcmV2ZWFscyB0 d28gY2h1bmtzIG9mIGNvbW1vbiBTTVAgY29kZSB3aGljaCB3YXMgb25seQo+IGFwcGxpY2FibGUg dG8gSzcgcHJvY2Vzc29ycywgd2hpY2ggYXJlIDMyYml0IG9ubHkuCj4gCj4gV2hpbGUgY2xlYW5p bmcgdGhpcyBhcmVhIHVwLCByZW1vdmUgdGhlIGluY29zaXN0ZW50IHVzZSBvZiBuZXdsaW5lcyBp biB0aGUKCnMvaW5jb3Npc3RlbnQvaW5jb25zaXN0ZW50LwoKPiBjcHVfaGFzXyogZGVmaW5pdGlv biBibG9jay4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVy M0BjaXRyaXguY29tPgoKUmV2aWV3ZWQtYnk6IEtvbnJhZCBSemVzenV0ZWsgV2lsayA8a29ucmFk LndpbGtAb3JhY2xlLmNvbT4KCj4gLS0tCj4gQ0M6IEphbiBCZXVsaWNoIDxKQmV1bGljaEBzdXNl LmNvbT4KPiAKPiB2MzogTmV3Cj4gCj4gVGhpcyBjbGVhbnVwIHJlbW92ZXMgdGhlIG9ubHkgdXNl cnMgb2YgVEFJTlRfVU5TQUZFX1NNUCwgYnV0IEkgaGF2ZSBsZWZ0IHRoZQo+IGluZnJhc3RydWN0 dXJlIGluY2FzZSBpdCBuZWVkcyB0byBiZSB1c2VkIGluIHRoZSBmdXR1cmUuCj4gLS0tCj4gIHhl bi9hcmNoL3g4Ni9taWNyb2NvZGVfaW50ZWwuYyAgIHwgIDMgKy0tCj4gIHhlbi9hcmNoL3g4Ni9z bXBib290LmMgICAgICAgICAgIHwgNDYgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQo+ICB4ZW4vaW5jbHVkZS9hc20teDg2L2NwdWZlYXR1cmUuaCB8IDE4IC0tLS0tLS0t LS0tLS0tLS0KPiAgMyBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgNjYgZGVsZXRpb25z KC0pCgoKQWFhaCwgY2FuJ3QgYmVhdCB0aG9zZSBkaWZmc3RhdHMuCj4gCj4gZGlmZiAtLWdpdCBh L3hlbi9hcmNoL3g4Ni9taWNyb2NvZGVfaW50ZWwuYyBiL3hlbi9hcmNoL3g4Ni9taWNyb2NvZGVf aW50ZWwuYwo+IGluZGV4IDBhNWY0MDMuLjY5NDljMjUgMTAwNjQ0Cj4gLS0tIGEveGVuL2FyY2gv eDg2L21pY3JvY29kZV9pbnRlbC5jCj4gKysrIGIveGVuL2FyY2gveDg2L21pY3JvY29kZV9pbnRl bC5jCj4gQEAgLTk5LDggKzk5LDcgQEAgc3RhdGljIGludCBjb2xsZWN0X2NwdV9pbmZvKHVuc2ln bmVkIGludCBjcHVfbnVtLCBzdHJ1Y3QgY3B1X3NpZ25hdHVyZSAqY3NpZykKPiAgCj4gICAgICBt ZW1zZXQoY3NpZywgMCwgc2l6ZW9mKCpjc2lnKSk7Cj4gIAo+IC0gICAgaWYgKCAoYy0+eDg2X3Zl bmRvciAhPSBYODZfVkVORE9SX0lOVEVMKSB8fCAoYy0+eDg2IDwgNikgfHwKPiAtICAgICAgICAg Y3B1X2hhcyhjLCBYODZfRkVBVFVSRV9JQTY0KSApCj4gKyAgICBpZiAoIChjLT54ODZfdmVuZG9y ICE9IFg4Nl9WRU5ET1JfSU5URUwpIHx8IChjLT54ODYgPCA2KSApCj4gICAgICB7Cj4gICAgICAg ICAgcHJpbnRrKEtFUk5fRVJSICJtaWNyb2NvZGU6IENQVSVkIG5vdCBhIGNhcGFibGUgSW50ZWwg Igo+ICAgICAgICAgICAgICAgICAicHJvY2Vzc29yXG4iLCBjcHVfbnVtKTsKPiBkaWZmIC0tZ2l0 IGEveGVuL2FyY2gveDg2L3NtcGJvb3QuYyBiL3hlbi9hcmNoL3g4Ni9zbXBib290LmMKPiBpbmRl eCAxZWIxNmNiLi4xYzAyNjgxIDEwMDY0NAo+IC0tLSBhL3hlbi9hcmNoL3g4Ni9zbXBib290LmMK PiArKysgYi94ZW4vYXJjaC94ODYvc21wYm9vdC5jCj4gQEAgLTk4LDM5ICs5OCw2IEBAIHN0YXRp YyB2b2lkIHNtcF9zdG9yZV9jcHVfaW5mbyhpbnQgaWQpCj4gICAgICAgICAgICAgIHNlY29uZGFy eV9zb2NrZXRfY3B1bWFzayA9IE5VTEw7Cj4gICAgICAgICAgfQo+ICAgICAgfQo+IC0KPiAtICAg IC8qCj4gLSAgICAgKiBDZXJ0YWluIEF0aGxvbnMgbWlnaHQgd29yayAoZm9yIHZhcmlvdXMgdmFs dWVzIG9mICd3b3JrJykgaW4gU01QCj4gLSAgICAgKiBidXQgdGhleSBhcmUgbm90IGNlcnRpZmll ZCBhcyBNUCBjYXBhYmxlLgo+IC0gICAgICovCj4gLSAgICBpZiAoIChjLT54ODZfdmVuZG9yID09 IFg4Nl9WRU5ET1JfQU1EKSAmJiAoYy0+eDg2ID09IDYpICkKPiAtICAgIHsKPiAtICAgICAgICAv KiBBdGhsb24gNjYwLzY2MSBpcyB2YWxpZC4gKi8gCj4gLSAgICAgICAgaWYgKCAoYy0+eDg2X21v ZGVsPT02KSAmJiAoKGMtPng4Nl9tYXNrPT0wKSB8fCAoYy0+eDg2X21hc2s9PTEpKSApCj4gLSAg ICAgICAgICAgIGdvdG8gdmFsaWRfazc7Cj4gLQo+IC0gICAgICAgIC8qIER1cm9uIDY3MCBpcyB2 YWxpZCAqLwo+IC0gICAgICAgIGlmICggKGMtPng4Nl9tb2RlbD09NykgJiYgKGMtPng4Nl9tYXNr PT0wKSApCj4gLSAgICAgICAgICAgIGdvdG8gdmFsaWRfazc7Cj4gLQo+IC0gICAgICAgIC8qCj4g LSAgICAgICAgICogQXRobG9uIDY2MiwgRHVyb24gNjcxLCBhbmQgQXRobG9uID5tb2RlbCA3IGhh dmUgY2FwYWJpbGl0eSBiaXQuCj4gLSAgICAgICAgICogSXQncyB3b3J0aCBub3RpbmcgdGhhdCB0 aGUgQTUgc3RlcHBpbmcgKDY2Mikgb2Ygc29tZSBBdGhsb24gWFAncwo+IC0gICAgICAgICAqIGhh dmUgdGhlIE1QIGJpdCBzZXQuCj4gLSAgICAgICAgICogU2VlIGh0dHA6Ly93d3cuaGVpc2UuZGUv bmV3c3RpY2tlci9kYXRhL2pvdy0xOC4xMC4wMS0wMDAgZm9yIG1vcmUuCj4gLSAgICAgICAgICov Cj4gLSAgICAgICAgaWYgKCAoKGMtPng4Nl9tb2RlbD09NikgJiYgKGMtPng4Nl9tYXNrPj0yKSkg fHwKPiAtICAgICAgICAgICAgICgoYy0+eDg2X21vZGVsPT03KSAmJiAoYy0+eDg2X21hc2s+PTEp KSB8fAo+IC0gICAgICAgICAgICAgKGMtPng4Nl9tb2RlbD4gNykgKQo+IC0gICAgICAgICAgICBp ZiAoY3B1X2hhc19tcCkKPiAtICAgICAgICAgICAgICAgIGdvdG8gdmFsaWRfazc7Cj4gLQo+IC0g ICAgICAgIC8qIElmIHdlIGdldCBoZXJlLCBpdCdzIG5vdCBhIGNlcnRpZmllZCBTTVAgY2FwYWJs ZSBBTUQgc3lzdGVtLiAqLwo+IC0gICAgICAgIGFkZF90YWludChUQUlOVF9VTlNBRkVfU01QKTsK PiAtICAgIH0KPiAtCj4gLSB2YWxpZF9rNzoKPiAtICAgIDsKPiAgfQo+ICAKPiAgLyoKPiBAQCAt MTA0MiwxOSArMTAwOSw2IEBAIGludCBfX2NwdV91cCh1bnNpZ25lZCBpbnQgY3B1KQo+ICAKPiAg dm9pZCBfX2luaXQgc21wX2NwdXNfZG9uZSh2b2lkKQo+ICB7Cj4gLSAgICAvKgo+IC0gICAgICog RG9uJ3QgdGFpbnQgaWYgd2UgYXJlIHJ1bm5pbmcgU01QIGtlcm5lbCBvbiBhIHNpbmdsZSBub24t TVAKPiAtICAgICAqIGFwcHJvdmVkIEF0aGxvbgo+IC0gICAgICovCj4gLSAgICBpZiAoIHRhaW50 ZWQgJiBUQUlOVF9VTlNBRkVfU01QICkKPiAtICAgIHsKPiAtICAgICAgICBpZiAoIG51bV9vbmxp bmVfY3B1cygpID4gMSApCj4gLSAgICAgICAgICAgIHByaW50ayhLRVJOX0lORk8gIldBUk5JTkc6 IFRoaXMgY29tYmluYXRpb24gb2YgQU1EICIKPiAtICAgICAgICAgICAgICAgICAgICJwcm9jZXNz b3JzIGlzIG5vdCBzdWl0YWJsZSBmb3IgU01QLlxuIik7Cj4gLSAgICAgICAgZWxzZQo+IC0gICAg ICAgICAgICB0YWludGVkICY9IH5UQUlOVF9VTlNBRkVfU01QOwo+IC0gICAgfQo+IC0KPiAgICAg IGlmICggbm1pX3dhdGNoZG9nID09IE5NSV9MT0NBTF9BUElDICkKPiAgICAgICAgICBjaGVja19u bWlfd2F0Y2hkb2coKTsKPiAgCj4gZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvY3B1 ZmVhdHVyZS5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9jcHVmZWF0dXJlLmgKPiBpbmRleCAwMjE0 MjdjLi40ZWQzNmZlIDEwMDY0NAo+IC0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvY3B1ZmVhdHVy ZS5oCj4gKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9jcHVmZWF0dXJlLmgKPiBAQCAtMzEsNyAr MzEsNiBAQAo+ICAjZGVmaW5lIFg4Nl9GRUFUVVJFX0NNT1YJKDAqMzIrMTUpIC8qIENNT1YgaW5z dHJ1Y3Rpb24gKEZDTU9WQ0MgYW5kIEZDT01JIHRvbyBpZiBGUFUgcHJlc2VudCkgKi8KPiAgI2Rl ZmluZSBYODZfRkVBVFVSRV9QQVQJCSgwKjMyKzE2KSAvKiBQYWdlIEF0dHJpYnV0ZSBUYWJsZSAq Lwo+ICAjZGVmaW5lIFg4Nl9GRUFUVVJFX1BTRTM2CSgwKjMyKzE3KSAvKiAzNi1iaXQgUFNFcyAq Lwo+IC0jZGVmaW5lIFg4Nl9GRUFUVVJFX1BOCQkoMCozMisxOCkgLyogUHJvY2Vzc29yIHNlcmlh bCBudW1iZXIgKi8KPiAgI2RlZmluZSBYODZfRkVBVFVSRV9DTEZMVVNICSgwKjMyKzE5KSAvKiBT dXBwb3J0cyB0aGUgQ0xGTFVTSCBpbnN0cnVjdGlvbiAqLwo+ICAjZGVmaW5lIFg4Nl9GRUFUVVJF X0RTCQkoMCozMisyMSkgLyogRGVidWcgU3RvcmUgKi8KPiAgI2RlZmluZSBYODZfRkVBVFVSRV9B Q1BJCSgwKjMyKzIyKSAvKiBBQ1BJIHZpYSBNU1IgKi8KPiBAQCAtNDAsMTYgKzM5LDEzIEBACj4g IAkJCQkgICAgICAgICAgLyogb2YgRlBVIGNvbnRleHQpLCBhbmQgQ1I0Lk9TRlhTUiBhdmFpbGFi bGUgKi8KPiAgI2RlZmluZSBYODZfRkVBVFVSRV9TU0UJCSgwKjMyKzI1KSAvKiBTdHJlYW1pbmcg U0lNRCBFeHRlbnNpb25zICovCj4gICNkZWZpbmUgWDg2X0ZFQVRVUkVfU1NFMgkoMCozMisyNikg LyogU3RyZWFtaW5nIFNJTUQgRXh0ZW5zaW9ucy0yICovCj4gLSNkZWZpbmUgWDg2X0ZFQVRVUkVf U0VMRlNOT09QCSgwKjMyKzI3KSAvKiBDUFUgc2VsZiBzbm9vcCAqLwo+ICAjZGVmaW5lIFg4Nl9G RUFUVVJFX0hUCQkoMCozMisyOCkgLyogSHlwZXItVGhyZWFkaW5nICovCj4gICNkZWZpbmUgWDg2 X0ZFQVRVUkVfQUNDCQkoMCozMisyOSkgLyogQXV0b21hdGljIGNsb2NrIGNvbnRyb2wgKi8KPiAt I2RlZmluZSBYODZfRkVBVFVSRV9JQTY0CSgwKjMyKzMwKSAvKiBJQS02NCBwcm9jZXNzb3IgKi8K PiAgI2RlZmluZSBYODZfRkVBVFVSRV9QQkUJCSgwKjMyKzMxKSAvKiBQZW5kaW5nIEJyZWFrIEVu YWJsZSAqLwo+ICAKPiAgLyogQU1ELWRlZmluZWQgQ1BVIGZlYXR1cmVzLCBDUFVJRCBsZXZlbCAw eDgwMDAwMDAxLCB3b3JkIDEgKi8KPiAgLyogRG9uJ3QgZHVwbGljYXRlIGZlYXR1cmUgZmxhZ3Mg d2hpY2ggYXJlIHJlZHVuZGFudCB3aXRoIEludGVsISAqLwo+ICAjZGVmaW5lIFg4Nl9GRUFUVVJF X1NZU0NBTEwJKDEqMzIrMTEpIC8qIFNZU0NBTEwvU1lTUkVUICovCj4gLSNkZWZpbmUgWDg2X0ZF QVRVUkVfTVAJCSgxKjMyKzE5KSAvKiBNUCBDYXBhYmxlLiAqLwo+ICAjZGVmaW5lIFg4Nl9GRUFU VVJFX05YCQkoMSozMisyMCkgLyogRXhlY3V0ZSBEaXNhYmxlICovCj4gICNkZWZpbmUgWDg2X0ZF QVRVUkVfTU1YRVhUCSgxKjMyKzIyKSAvKiBBTUQgTU1YIGV4dGVuc2lvbnMgKi8KPiAgI2RlZmlu ZSBYODZfRkVBVFVSRV9GRlhTUiAgICAgICAoMSozMisyNSkgLyogRkZYU1IgaW5zdHJ1Y3Rpb24g b3B0aW1pemF0aW9ucyAqLwo+IEBAIC04OCw3ICs4NCw2IEBACj4gICNkZWZpbmUgWDg2X0ZFQVRV UkVfRVNUCQkoNCozMisgNykgLyogRW5oYW5jZWQgU3BlZWRTdGVwICovCj4gICNkZWZpbmUgWDg2 X0ZFQVRVUkVfVE0yCQkoNCozMisgOCkgLyogVGhlcm1hbCBNb25pdG9yIDIgKi8KPiAgI2RlZmlu ZSBYODZfRkVBVFVSRV9TU1NFMwkoNCozMisgOSkgLyogU3VwcGxlbWVudGFsIFN0cmVhbWluZyBT SU1EIEV4dGVuc2lvbnMtMyAqLwo+IC0jZGVmaW5lIFg4Nl9GRUFUVVJFX0NJRAkJKDQqMzIrMTAp IC8qIENvbnRleHQgSUQgKi8KPiAgI2RlZmluZSBYODZfRkVBVFVSRV9GTUEJCSg0KjMyKzEyKSAv KiBGdXNlZCBNdWx0aXBseSBBZGQgKi8KPiAgI2RlZmluZSBYODZfRkVBVFVSRV9DWDE2ICAgICAg ICAoNCozMisxMykgLyogQ01QWENIRzE2QiAqLwo+ICAjZGVmaW5lIFg4Nl9GRUFUVVJFX1hUUFIJ KDQqMzIrMTQpIC8qIFNlbmQgVGFzayBQcmlvcml0eSBNZXNzYWdlcyAqLwo+IEBAIC0xODcsNDEg KzE4MiwyOCBAQAo+ICAjZGVmaW5lIGNwdV9oYXNfc3NlMgkJYm9vdF9jcHVfaGFzKFg4Nl9GRUFU VVJFX1NTRTIpCj4gICNkZWZpbmUgY3B1X2hhc19zc2UzCQlib290X2NwdV9oYXMoWDg2X0ZFQVRV UkVfU1NFMykKPiAgI2RlZmluZSBjcHVfaGFzX2h0CQlib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVf SFQpCj4gLSNkZWZpbmUgY3B1X2hhc19tcAkJMQo+ICAjZGVmaW5lIGNwdV9oYXNfbngJCWJvb3Rf Y3B1X2hhcyhYODZfRkVBVFVSRV9OWCkKPiAgI2RlZmluZSBjcHVfaGFzX2NsZmx1c2gJCWJvb3Rf Y3B1X2hhcyhYODZfRkVBVFVSRV9DTEZMVVNIKQo+ICAjZGVmaW5lIGNwdV9oYXNfcGFnZTFnYgkJ Ym9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX1BBR0UxR0IpCj4gICNkZWZpbmUgY3B1X2hhc19mc2dz YmFzZQlib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfRlNHU0JBU0UpCj4gICNkZWZpbmUgY3B1X2hh c19hcGVyZm1wZXJmCWJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9BUEVSRk1QRVJGKQo+IC0KPiAg I2RlZmluZSBjcHVfaGFzX3NtZXAgICAgICAgICAgICBib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVf U01FUCkKPiAgI2RlZmluZSBjcHVfaGFzX3NtYXAgICAgICAgICAgICBib290X2NwdV9oYXMoWDg2 X0ZFQVRVUkVfU01BUCkKPiAgI2RlZmluZSBjcHVfaGFzX2ZwdV9zZWwgICAgICAgICAoIWJvb3Rf Y3B1X2hhcyhYODZfRkVBVFVSRV9OT19GUFVfU0VMKSkKPiAtCj4gICNkZWZpbmUgY3B1X2hhc19m ZnhzciAgICAgICAgICAgKChib290X2NwdV9kYXRhLng4Nl92ZW5kb3IgPT0gWDg2X1ZFTkRPUl9B TUQpIFwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJiYgYm9vdF9jcHVfaGFz KFg4Nl9GRUFUVVJFX0ZGWFNSKSkKPiAtCj4gICNkZWZpbmUgY3B1X2hhc194MmFwaWMgICAgICAg ICAgYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX1gyQVBJQykKPiAtCj4gICNkZWZpbmUgY3B1X2hh c19wY2lkICAgICAgICAgICAgYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX1BDSUQpCj4gLQo+ICAj ZGVmaW5lIGNwdV9oYXNfeHNhdmUgICAgICAgICAgIGJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9Y U0FWRSkKPiAgI2RlZmluZSBjcHVfaGFzX2F2eCAgICAgICAgICAgICBib290X2NwdV9oYXMoWDg2 X0ZFQVRVUkVfQVZYKQo+ICAjZGVmaW5lIGNwdV9oYXNfbHdwICAgICAgICAgICAgIGJvb3RfY3B1 X2hhcyhYODZfRkVBVFVSRV9MV1ApCj4gICNkZWZpbmUgY3B1X2hhc19tcHggICAgICAgICAgICAg Ym9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX01QWCkKPiAtCj4gICNkZWZpbmUgY3B1X2hhc19hcmNo X3BlcmZtb24gICAgYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX0FSQ0hfUEVSRk1PTikKPiAtCj4g ICNkZWZpbmUgY3B1X2hhc19yZHRzY3AgICAgICAgICAgYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJF X1JEVFNDUCkKPiAtCj4gICNkZWZpbmUgY3B1X2hhc19zdm0JCWJvb3RfY3B1X2hhcyhYODZfRkVB VFVSRV9TVk0pCj4gLQo+ICAjZGVmaW5lIGNwdV9oYXNfdm14CQlib290X2NwdV9oYXMoWDg2X0ZF QVRVUkVfVk1YRSkKPiAtCj4gICNkZWZpbmUgY3B1X2hhc19jcHVpZF9mYXVsdGluZwlib290X2Nw dV9oYXMoWDg2X0ZFQVRVUkVfQ1BVSURfRkFVTFRJTkcpCj4gLQo+ICAjZGVmaW5lIGNwdV9oYXNf Y3gxNiAgICAgICAgICAgIGJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9DWDE2KQo+IC0KPiAgI2Rl ZmluZSBjcHVfaGFzX3hzYXZlb3B0CWJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9YU0FWRU9QVCkK PiAgI2RlZmluZSBjcHVfaGFzX3hzYXZlYwkJYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX1hTQVZF QykKPiAgI2RlZmluZSBjcHVfaGFzX3hnZXRidjEJCWJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9Y R0VUQlYxKQo+IC0tIAo+IDIuMS40Cj4gCj4gCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KPiBYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Cj4gWGVuLWRldmVs QGxpc3RzLnhlbi5vcmcKPiBodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5n IGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cDovL2xpc3RzLnhlbi5vcmcveGVuLWRl dmVsCg==