From owner-freebsd-hackers@FreeBSD.ORG Tue Aug 21 03:32:49 2012 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 12703106566B for ; Tue, 21 Aug 2012 03:32:49 +0000 (UTC) (envelope-from dan.mcgregor@usask.ca) Received: from smtp.usask.ca (smtp.usask.ca [128.233.192.40]) by mx1.freebsd.org (Postfix) with ESMTP id DAFBE8FC08 for ; Tue, 21 Aug 2012 03:32:48 +0000 (UTC) Received: from conversion-daemon.usask.ca by usask.ca (Sun Java(tm) System Messaging Server 7.3-11.01 64bit (built Sep 1 2009)) id <0M9300I0030H2Q00@usask.ca> for freebsd-hackers@freebsd.org; Mon, 20 Aug 2012 20:32:42 -0600 (CST) Received: from mail-vc0-f182.google.com (mail-vc0-f182.google.com [209.85.220.182]) by usask.ca (Sun Java(tm) System Messaging Server 7.3-11.01 64bit (built Sep 1 2009)) with ESMTPSA id <0M9300AJY32G2S30@usask.ca> for freebsd-hackers@freebsd.org; Mon, 20 Aug 2012 20:32:41 -0600 (CST) Received: by vcbgb22 with SMTP id gb22so7318831vcb.13 for ; Mon, 20 Aug 2012 19:32:41 -0700 (PDT) Received: by 10.221.11.197 with SMTP id pf5mr11967074vcb.29.1345516361859; Mon, 20 Aug 2012 19:32:41 -0700 (PDT) Received: by 10.58.91.169 with HTTP; Mon, 20 Aug 2012 19:32:41 -0700 (PDT) Date: Mon, 20 Aug 2012 20:32:41 -0600 From: Dan McGregor To: freebsd-hackers@freebsd.org Message-id: MIME-version: 1.0 Content-type: multipart/mixed; boundary="Boundary_(ID_2R7SRK8nTZt/NNUkoteUNg)" X-Mailman-Approved-At: Tue, 21 Aug 2012 04:17:33 +0000 Subject: Build 32 bit binaries on amd64 X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Aug 2012 03:32:49 -0000 --Boundary_(ID_2R7SRK8nTZt/NNUkoteUNg) Content-type: text/plain; charset=ISO-8859-1 Hi. I've been working on porting compiler-rt/clang's support for address sanitization (asan) to FreeBSD. So far I have it building and it appears to work properly, however the build system expects to be able to build 32 bit binaries on amd64. amd64 doesn't include i386's machine/foo headers. The included patch is my proposed solution: Add i386 headers to /usr/include/i386, and in machine/foo.h, check if it's a 32 bit build and include the appropriate header from i386. For example machine/ucontext.h will include i386/ucontext.h if compiled with -m32. Thoughts? If anyone's curious about the compiler_rt port, I have it at github.com/dannomac/compiler-rt on the branch named freebsd. Dan --Boundary_(ID_2R7SRK8nTZt/NNUkoteUNg) Content-type: text/x-patch; name=0001-modify-amd64-headers-to-include-i386-versions-if-__x.patch; charset=US-ASCII Content-transfer-encoding: BASE64 Content-disposition: attachment; filename=0001-modify-amd64-headers-to-include-i386-versions-if-__x.patch X-Attachment-Id: 4af463252270eddd_0.1 ZGlmZiAtLWdpdCBhL2luY2x1ZGUvTWFrZWZpbGUgYi9pbmNsdWRlL01ha2VmaWxl DQppbmRleCBkMmY2ZDdmLi44ZTI5YTM1IDEwMDY0NA0KLS0tIGEvaW5jbHVkZS9N YWtlZmlsZQ0KKysrIGIvaW5jbHVkZS9NYWtlZmlsZQ0KQEAgLTEyNSw2ICsxMjUs OSBAQCBfTUFSQ0hTPQkke01BQ0hJTkVfQ1BVQVJDSH0NCiAuaWYgJHtNQUNISU5F X0NQVUFSQ0h9ID09ICJpMzg2IiB8fCAke01BQ0hJTkVfQ1BVQVJDSH0gPT0gImFt ZDY0Ig0KIF9NQVJDSFMrPQl4ODYNCiAuZW5kaWYNCisuaWYgJHtNQUNISU5FX0NQ VUFSQ0h9ID09ICJhbWQ2NCINCitfTUFSQ0hTKz0JaTM4Ng0KKy5lbmRpZg0KIA0K IC5pbmNsdWRlIDxic2QucHJvZy5taz4NCiANCmRpZmYgLS1naXQgYS9zeXMvYW1k NjQvaW5jbHVkZS9hY3BpY2FfbWFjaGRlcC5oIGIvc3lzL2FtZDY0L2luY2x1ZGUv YWNwaWNhX21hY2hkZXAuaA0KaW5kZXggOTk0M2FmNy4uMzkzY2QyYiAxMDA2NDQN Ci0tLSBhL3N5cy9hbWQ2NC9pbmNsdWRlL2FjcGljYV9tYWNoZGVwLmgNCisrKyBi L3N5cy9hbWQ2NC9pbmNsdWRlL2FjcGljYV9tYWNoZGVwLmgNCkBAIC0zMyw2ICsz MywxMiBAQA0KICAqDQogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0K IA0KKyNpZmRlZiBfX2kzODZfXw0KKw0KKyNpbmNsdWRlIDxpMzg2L2FjcGljYV9t YWNoZGVwLmg+DQorDQorI2Vsc2UgLyogX19pMzg2X18gKi8NCisNCiAjaWZuZGVm IF9fQUNQSUNBX01BQ0hERVBfSF9fDQogI2RlZmluZQlfX0FDUElDQV9NQUNIREVQ X0hfXw0KIA0KQEAgLTgyLDMgKzg4LDUgQEAgdm9pZAlhY3BpX3VubWFwX3RhYmxl KHZvaWQgKnRhYmxlKTsNCiB2bV9wYWRkcl90IGFjcGlfZmluZF90YWJsZShjb25z dCBjaGFyICpzaWcpOw0KIA0KICNlbmRpZiAvKiBfX0FDUElDQV9NQUNIREVQX0hf XyAqLw0KKw0KKyNlbmRpZiAvKiBfX2kzODZfXyAqLw0KZGlmZiAtLWdpdCBhL3N5 cy9hbWQ2NC9pbmNsdWRlL2FwaWN2YXIuaCBiL3N5cy9hbWQ2NC9pbmNsdWRlL2Fw aWN2YXIuaA0KaW5kZXggYWUyZjViOS4uMzM2OWZhMSAxMDA2NDQNCi0tLSBhL3N5 cy9hbWQ2NC9pbmNsdWRlL2FwaWN2YXIuaA0KKysrIGIvc3lzL2FtZDY0L2luY2x1 ZGUvYXBpY3Zhci5oDQpAQCAtMjksOCArMjksMTAgQEANCiAgKiAkRnJlZUJTRCQN CiAgKi8NCiANCi0jaWZuZGVmIF9NQUNISU5FX0FQSUNWQVJfSF8NCi0jZGVmaW5l IF9NQUNISU5FX0FQSUNWQVJfSF8NCisjaWZuZGVmIF9BTUQ2NF9BUElDVkFSX0hf DQorI2RlZmluZSBfQU1ENjRfQVBJQ1ZBUl9IXw0KKw0KKyNpZmRlZiBfX3g4Nl82 NF9fDQogDQogI2luY2x1ZGUgPG1hY2hpbmUvc2VnbWVudHMuaD4NCiANCkBAIC0y MjksNCArMjMxLDEwIEBAIHZvaWQJbGFwaWNfc2V0X3Rwcih1X2ludCB2ZWN0b3Ip Ow0KIHZvaWQJbGFwaWNfc2V0dXAoaW50IGJvb3QpOw0KIA0KICNlbmRpZiAvKiAh TE9DT1JFICovDQotI2VuZGlmIC8qIF9NQUNISU5FX0FQSUNWQVJfSF8gKi8NCisN CisjZWxzZSAvKiBfX3g4Nl82NF9fICovDQorDQorI2luY2x1ZGUgPGkzODYvYXBp Y3Zhci5oPg0KKw0KKyNlbmRpZiAvKiBfX3g4Nl82NF9fICovDQorI2VuZGlmIC8q IF9BTUQ2NF9BUElDVkFSX0hfICovDQpkaWZmIC0tZ2l0IGEvc3lzL2FtZDY0L2lu Y2x1ZGUvYXNtLmggYi9zeXMvYW1kNjQvaW5jbHVkZS9hc20uaA0KaW5kZXggN2Vm ZDY0Mi4uYjFkZDhiYSAxMDA2NDQNCi0tLSBhL3N5cy9hbWQ2NC9pbmNsdWRlL2Fz bS5oDQorKysgYi9zeXMvYW1kNjQvaW5jbHVkZS9hc20uaA0KQEAgLTMzLDggKzMz LDEwIEBADQogICogJEZyZWVCU0QkDQogICovDQogDQotI2lmbmRlZiBfTUFDSElO RV9BU01fSF8NCi0jZGVmaW5lCV9NQUNISU5FX0FTTV9IXw0KKyNpZm5kZWYgX0FN RDY0X0FTTV9IXw0KKyNkZWZpbmUJX0FNRDY0X0FTTV9IXw0KKw0KKyNpZmRlZiBf X3g4Nl82NF9fDQogDQogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPg0KIA0KQEAgLTg4 LDQgKzkwLDkgQEANCiAjZGVmaW5lIF9fRkJTRElEKHMpCS8qIG5vdGhpbmcgKi8N CiAjZW5kaWYgLyogbm90IGxpbnQgYW5kIG5vdCBTVFJJUF9GQlNESUQgKi8NCiAN Ci0jZW5kaWYgLyogIV9NQUNISU5FX0FTTV9IXyAqLw0KKyNlbHNlIC8qIF9feDg2 XzY0X18gKi8NCisNCisjaW5jbHVkZSA8aTM4Ni9hc20uaD4NCisNCisjZW5kaWYg LyogX194ODZfNjRfXyAqLw0KKyNlbmRpZiAvKiAhX0FNRDY0X0FTTV9IXyAqLw0K ZGlmZiAtLWdpdCBhL3N5cy9hbWQ2NC9pbmNsdWRlL2FzbWFjcm9zLmggYi9zeXMv YW1kNjQvaW5jbHVkZS9hc21hY3Jvcy5oDQppbmRleCAxZmI1OTJhLi4zODVlMTZl IDEwMDY0NA0KLS0tIGEvc3lzL2FtZDY0L2luY2x1ZGUvYXNtYWNyb3MuaA0KKysr IGIvc3lzL2FtZDY0L2luY2x1ZGUvYXNtYWNyb3MuaA0KQEAgLTI5LDggKzI5LDEw IEBADQogICogJEZyZWVCU0QkDQogICovDQogDQotI2lmbmRlZiBfTUFDSElORV9B U01BQ1JPU19IXw0KLSNkZWZpbmUgX01BQ0hJTkVfQVNNQUNST1NfSF8NCisjaWZu ZGVmIF9BTUQ2NF9BU01BQ1JPU19IXw0KKyNkZWZpbmUgX0FNRDY0X0FTTUFDUk9T X0hfDQorDQorI2lmZGVmIF9feDg2XzY0X18NCiANCiAjaW5jbHVkZSA8c3lzL2Nk ZWZzLmg+DQogDQpAQCAtMjAxLDQgKzIwMyw5IEBADQogDQogI2VuZGlmIC8qIExP Q09SRSAqLw0KIA0KLSNlbmRpZiAvKiAhX01BQ0hJTkVfQVNNQUNST1NfSF8gKi8N CisjZWxzZQ0KKw0KKyNpbmNsdWRlIDxpMzg2L2FzbWFjcm9zLmg+DQorDQorI2Vu ZGlmIC8qIF9feDg2XzY0X18gKi8NCisjZW5kaWYgLyogIV9BTUQ2NF9BU01BQ1JP U19IXyAqLw0KZGlmZiAtLWdpdCBhL3N5cy9hbWQ2NC9pbmNsdWRlL2F0b21pYy5o IGIvc3lzL2FtZDY0L2luY2x1ZGUvYXRvbWljLmgNCmluZGV4IDk5YTk0YjcuLjMx ZmQ4ZWUgMTAwNjQ0DQotLS0gYS9zeXMvYW1kNjQvaW5jbHVkZS9hdG9taWMuaA0K KysrIGIvc3lzL2FtZDY0L2luY2x1ZGUvYXRvbWljLmgNCkBAIC0yNSw4ICsyNSwx MCBAQA0KICAqDQogICogJEZyZWVCU0QkDQogICovDQotI2lmbmRlZiBfTUFDSElO RV9BVE9NSUNfSF8NCi0jZGVmaW5lCV9NQUNISU5FX0FUT01JQ19IXw0KKyNpZm5k ZWYgX0FNRDY0X0FUT01JQ19IXw0KKyNkZWZpbmUJX0FNRDY0X0FUT01JQ19IXw0K Kw0KKyNpZmRlZiBfX3g4Nl82NF9fDQogDQogI2lmbmRlZiBfU1lTX0NERUZTX0hf DQogI2Vycm9yIHRoaXMgZmlsZSBuZWVkcyBzeXMvY2RlZnMuaCBhcyBhIHByZXJl cXVpc2l0ZQ0KQEAgLTQ4MCw0ICs0ODIsOSBAQCB1X2xvbmcJYXRvbWljX3JlYWRh bmRjbGVhcl9sb25nKHZvbGF0aWxlIHVfbG9uZyAqYWRkcik7DQogDQogI2VuZGlm IC8qICFXQU5UX0ZVTkNUSU9OUyAqLw0KIA0KLSNlbmRpZiAvKiAhX01BQ0hJTkVf QVRPTUlDX0hfICovDQorI2Vsc2UgLyogX194ODZfNjRfXyAqLw0KKw0KKyNpbmNs dWRlIDxpMzg2L2F0b21pYy5oPg0KKw0KKyNlbmRpZiAvKiBfX3g4Nl82NF9fICov DQorI2VuZGlmIC8qICFfQU1ENjRfQVRPTUlDX0hfICovDQpkaWZmIC0tZ2l0IGEv c3lzL2FtZDY0L2luY2x1ZGUvY2xvY2suaCBiL3N5cy9hbWQ2NC9pbmNsdWRlL2Ns b2NrLmgNCmluZGV4IGQyNjAyZDguLjlmMGRiNmUgMTAwNjQ0DQotLS0gYS9zeXMv YW1kNjQvaW5jbHVkZS9jbG9jay5oDQorKysgYi9zeXMvYW1kNjQvaW5jbHVkZS9j bG9jay5oDQpAQCAtNiw4ICs2LDEwIEBADQogICogJEZyZWVCU0QkDQogICovDQog DQotI2lmbmRlZiBfTUFDSElORV9DTE9DS19IXw0KLSNkZWZpbmUJX01BQ0hJTkVf Q0xPQ0tfSF8NCisjaWZuZGVmIF9BTUQ2NF9DTE9DS19IXw0KKyNkZWZpbmUJX0FN RDY0X0NMT0NLX0hfDQorDQorI2lmZGVmIF9feDg2XzY0X18NCiANCiAjaWZkZWYg X0tFUk5FTA0KIC8qDQpAQCAtMzcsNCArMzksOSBAQCB2b2lkCXRpbWVyX3Nwa3Jf c2V0ZnJlcShpbnQgZnJlcSk7DQogDQogI2VuZGlmIC8qIF9LRVJORUwgKi8NCiAN Ci0jZW5kaWYgLyogIV9NQUNISU5FX0NMT0NLX0hfICovDQorI2Vsc2UgLyogX194 ODZfNjRfXyAqLw0KKw0KKyNpbmNsdWRlIDxpMzg2L2Nsb2NrLmg+DQorDQorI2Vu ZGlmIC8qIF9feDg2XzY0X18gKi8NCisjZW5kaWYgLyogIV9BTUQ2NF9DTE9DS19I XyAqLw0KZGlmZiAtLWdpdCBhL3N5cy9hbWQ2NC9pbmNsdWRlL2NwdS5oIGIvc3lz L2FtZDY0L2luY2x1ZGUvY3B1LmgNCmluZGV4IDFjMjg3MWYuLjBjZmNiMDMgMTAw NjQ0DQotLS0gYS9zeXMvYW1kNjQvaW5jbHVkZS9jcHUuaA0KKysrIGIvc3lzL2Ft ZDY0L2luY2x1ZGUvY3B1LmgNCkBAIC0zMyw4ICszMywxMCBAQA0KICAqICRGcmVl QlNEJA0KICAqLw0KIA0KLSNpZm5kZWYgX01BQ0hJTkVfQ1BVX0hfDQotI2RlZmlu ZQlfTUFDSElORV9DUFVfSF8NCisjaWZuZGVmIF9BTUQ2NF9DUFVfSF8NCisjZGVm aW5lCV9BTUQ2NF9DUFVfSF8NCisNCisjaWZkZWYgX194ODZfNjRfXw0KIA0KIC8q DQogICogRGVmaW5pdGlvbnMgdW5pcXVlIHRvIGkzODYgY3B1IHN1cHBvcnQuDQpA QCAtNzUsNCArNzcsOSBAQCBnZXRfY3ljbGVjb3VudCh2b2lkKQ0KIA0KICNlbmRp Zg0KIA0KLSNlbmRpZiAvKiAhX01BQ0hJTkVfQ1BVX0hfICovDQorI2Vsc2UgLyog X194ODZfNjRfXyAqLw0KKw0KKyNpbmNsdWRlIDxpMzg2L2NwdS5oPg0KKw0KKyNl bmRpZiAvKiBfX3g4Nl82NF9fICovDQorI2VuZGlmIC8qICFfQU1ENjRfQ1BVX0hf ICovDQpkaWZmIC0tZ2l0IGEvc3lzL2FtZDY0L2luY2x1ZGUvY3B1ZnVuYy5oIGIv c3lzL2FtZDY0L2luY2x1ZGUvY3B1ZnVuYy5oDQppbmRleCA4ODFmY2QyLi5iYWY5 MjdlIDEwMDY0NA0KLS0tIGEvc3lzL2FtZDY0L2luY2x1ZGUvY3B1ZnVuYy5oDQor KysgYi9zeXMvYW1kNjQvaW5jbHVkZS9jcHVmdW5jLmgNCkBAIC0zNiwxMyArMzYs MTUgQEANCiAgKiB1c2VkIGluIHByZWZlcmVuY2UgdG8gdGhpcy4NCiAgKi8NCiAN Ci0jaWZuZGVmIF9NQUNISU5FX0NQVUZVTkNfSF8NCi0jZGVmaW5lCV9NQUNISU5F X0NQVUZVTkNfSF8NCisjaWZuZGVmIF9BTUQ2NF9DUFVGVU5DX0hfDQorI2RlZmlu ZQlfQU1ENjRfQ1BVRlVOQ19IXw0KIA0KICNpZm5kZWYgX1NZU19DREVGU19IXw0K ICNlcnJvciB0aGlzIGZpbGUgbmVlZHMgc3lzL2NkZWZzLmggYXMgYSBwcmVyZXF1 aXNpdGUNCiAjZW5kaWYNCiANCisjaWZkZWYgX194ODZfNjRfXw0KKw0KIHN0cnVj dCByZWdpb25fZGVzY3JpcHRvcjsNCiANCiAjZGVmaW5lIHJlYWRiKHZhKQkoKih2 b2xhdGlsZSB1aW50OF90ICopICh2YSkpDQpAQCAtNzg4LDQgKzc5MCw5IEBAIGlu dAlyZG1zcl9zYWZlKHVfaW50IG1zciwgdWludDY0X3QgKnZhbCk7DQogaW50CXdy bXNyX3NhZmUodV9pbnQgbXNyLCB1aW50NjRfdCBuZXd2YWwpOw0KICNlbmRpZg0K IA0KLSNlbmRpZiAvKiAhX01BQ0hJTkVfQ1BVRlVOQ19IXyAqLw0KKyNlbHNlIC8q IF9feDg2XzY0X18gKi8NCisNCisjaW5jbHVkZSA8aTM4Ni9jcHVmdW5jLmg+DQor DQorI2VuZGlmIC8qIF9feDg2XzY0X18gKi8NCisjZW5kaWYgLyogIV9BTUQ2NF9D UFVGVU5DX0hfICovDQpkaWZmIC0tZ2l0IGEvc3lzL2FtZDY0L2luY2x1ZGUvY3B1 dHlwZXMuaCBiL3N5cy9hbWQ2NC9pbmNsdWRlL2NwdXR5cGVzLmgNCmluZGV4IGVl ZWM0ZTAuLmUyZjIzZWMgMTAwNjQ0DQotLS0gYS9zeXMvYW1kNjQvaW5jbHVkZS9j cHV0eXBlcy5oDQorKysgYi9zeXMvYW1kNjQvaW5jbHVkZS9jcHV0eXBlcy5oDQpA QCAtMjcsOCArMjcsMTAgQEANCiAgKiAkRnJlZUJTRCQNCiAgKi8NCiANCi0jaWZu ZGVmIF9NQUNISU5FX0NQVVRZUEVTX0hfDQotI2RlZmluZQlfTUFDSElORV9DUFVU WVBFU19IXw0KKyNpZm5kZWYgX0FNRDY0X0NQVVRZUEVTX0hfDQorI2RlZmluZQlf QU1ENjRfQ1BVVFlQRVNfSF8NCisNCisjaWZkZWYgX194ODZfNjRfXw0KIA0KIC8q DQogICogQ2xhc3NlcyBvZiBwcm9jZXNzb3IuDQpAQCAtNTYsNCArNTgsOSBAQCBl eHRlcm4gaW50CWNwdTsNCiBleHRlcm4gaW50CWNwdV9jbGFzczsNCiAjZW5kaWYN CiANCi0jZW5kaWYgLyogIV9NQUNISU5FX0NQVVRZUEVTX0hfICovDQorI2Vsc2Ug LyogX194ODZfNjRfXyAqLw0KKw0KKyNpbmNsdWRlIDxpMzg2L2NwdXR5cGVzLmg+ DQorDQorI2VuZGlmIC8qIF9feDg2XzY0X18gKi8NCisjZW5kaWYgLyogIV9BTUQ2 NF9DUFVUWVBFU19IXyAqLw0KZGlmZiAtLWdpdCBhL3N5cy9hbWQ2NC9pbmNsdWRl L2RiX21hY2hkZXAuaCBiL3N5cy9hbWQ2NC9pbmNsdWRlL2RiX21hY2hkZXAuaA0K aW5kZXggMjllMzg1ZS4uYWU4ZTVkNiAxMDA2NDQNCi0tLSBhL3N5cy9hbWQ2NC9p bmNsdWRlL2RiX21hY2hkZXAuaA0KKysrIGIvc3lzL2FtZDY0L2luY2x1ZGUvZGJf bWFjaGRlcC5oDQpAQCAtMjYsOCArMjYsMTAgQEANCiAgKiAkRnJlZUJTRCQNCiAg Ki8NCiANCi0jaWZuZGVmIF9NQUNISU5FX0RCX01BQ0hERVBfSF8NCi0jZGVmaW5l CV9NQUNISU5FX0RCX01BQ0hERVBfSF8NCisjaWZuZGVmIF9BTUQ2NF9EQl9NQUNI REVQX0hfDQorI2RlZmluZQlfQU1ENjRfREJfTUFDSERFUF9IXw0KKw0KKyNpZmRl ZiBfX3g4Nl82NF9fDQogDQogI2luY2x1ZGUgPG1hY2hpbmUvZnJhbWUuaD4NCiAj aW5jbHVkZSA8bWFjaGluZS90cmFwLmg+DQpAQCAtOTEsNCArOTMsOSBAQCBkbyB7 CQkJCQkJXA0KICNkZWZpbmUJREJfU01BTExfVkFMVUVfTUFYCTB4N2ZmZmZmZmYN CiAjZGVmaW5lCURCX1NNQUxMX1ZBTFVFX01JTgkoLTB4NDAwMDAxKQ0KIA0KLSNl bmRpZiAvKiAhX01BQ0hJTkVfREJfTUFDSERFUF9IXyAqLw0KKyNlbHNlIC8qIF9f eDg2XzY0X18gKi8NCisNCisjaW5jbHVkZSA8aTM4Ni9kYl9tYWNoZGVwLmg+DQor DQorI2VuZGlmIC8qIF9feDg2XzY0X18gKi8NCisjZW5kaWYgLyogIV9BTUQ2NF9E Ql9NQUNIREVQX0hfICovDQpkaWZmIC0tZ2l0IGEvc3lzL2FtZDY0L2luY2x1ZGUv ZWxmLmggYi9zeXMvYW1kNjQvaW5jbHVkZS9lbGYuaA0KaW5kZXggZDY5YzZiNC4u ZGVlNDEwZSAxMDA2NDQNCi0tLSBhL3N5cy9hbWQ2NC9pbmNsdWRlL2VsZi5oDQor KysgYi9zeXMvYW1kNjQvaW5jbHVkZS9lbGYuaA0KQEAgLTI2LDggKzI2LDEwIEBA DQogICogJEZyZWVCU0QkDQogICovDQogDQotI2lmbmRlZiBfTUFDSElORV9FTEZf SF8NCi0jZGVmaW5lCV9NQUNISU5FX0VMRl9IXyAxDQorI2lmbmRlZiBfQU1ENjRf RUxGX0hfDQorI2RlZmluZQlfQU1ENjRfRUxGX0hfIDENCisNCisjaWZkZWYgX194 ODZfNjRfXw0KIA0KIC8qDQogICogRUxGIGRlZmluaXRpb25zIGZvciB0aGUgQU1E NjQgYXJjaGl0ZWN0dXJlLg0KQEAgLTQ0LDcgKzQ2LDcgQEANCiAjZGVmaW5lCUVM Rl9BUkNICUVNX1g4Nl82NA0KICNkZWZpbmUJRUxGX0FSQ0gzMglFTV8zODYNCiAN Ci0jZGVmaW5lCUVMRl9NQUNISU5FX09LKHgpICgoeCkgPT0gRU1fWDg2XzY0KQ0K KyNkZWZpbmUJRUxGX0FNRDY0X09LKHgpICgoeCkgPT0gRU1fWDg2XzY0KQ0KIA0K IC8qDQogICogQXV4aWxpYXJ5IHZlY3RvciBlbnRyaWVzIGZvciBwYXNzaW5nIGlu Zm9ybWF0aW9uIHRvIHRoZSBpbnRlcnByZXRlci4NCkBAIC0xMjEsNCArMTIzLDkg QEAgX19FbGZUeXBlKEF1eGluZm8pOw0KICNkZWZpbmUJRVRfRFlOX0xPQURfQURE UiAweDAxMDIxMDAwDQogI2VuZGlmDQogDQotI2VuZGlmIC8qICFfTUFDSElORV9F TEZfSF8gKi8NCisjZWxzZSAvKiBfX3g4Nl82NF9fICovDQorDQorI2luY2x1ZGUg PGkzODYvZWxmLmg+DQorDQorI2VuZGlmIC8qIF9feDg2XzY0X18gKi8NCisjZW5k aWYgLyogIV9BTUQ2NF9FTEZfSF8gKi8NCmRpZmYgLS1naXQgYS9zeXMvYW1kNjQv aW5jbHVkZS9leGVjLmggYi9zeXMvYW1kNjQvaW5jbHVkZS9leGVjLmgNCmluZGV4 IDhkMDc4ODcuLjBhMzFjOTUgMTAwNjQ0DQotLS0gYS9zeXMvYW1kNjQvaW5jbHVk ZS9leGVjLmgNCisrKyBiL3N5cy9hbWQ2NC9pbmNsdWRlL2V4ZWMuaA0KQEAgLTMw LDkgKzMwLDE2IEBADQogICogJEZyZWVCU0QkDQogICovDQogDQotI2lmbmRlZglf TUFDSElORV9FWEVDX0hfDQotI2RlZmluZQlfTUFDSElORV9FWEVDX0hfDQorI2lm bmRlZglfQU1ENjRfRVhFQ19IXw0KKyNkZWZpbmUJX0FNRDY0X0VYRUNfSF8NCisN CisjaWZkZWYgX194ODZfNjRfXw0KIA0KICNkZWZpbmUJX19MRFBHU1oJNDA5Ng0K IA0KLSNlbmRpZiAvKiAhX01BQ0hJTkVfRVhFQ19IXyAqLw0KKyNlbHNlIC8qIF9f eDg2XzY0X18gKi8NCisNCisjaW5jbHVkZSA8aTM4Ni9leGVjLmg+DQorDQorI2Vu ZGlmIC8qIF9feDg2XzY0X18gKi8NCisjZW5kaWYgLyogIV9BTUQ2NF9FWEVDX0hf ICovDQpkaWZmIC0tZ2l0IGEvc3lzL2FtZDY0L2luY2x1ZGUvZnB1LmggYi9zeXMv YW1kNjQvaW5jbHVkZS9mcHUuaA0KaW5kZXggN2QwZjBlYS4uN2Q1MzE4YSAxMDA2 NDQNCi0tLSBhL3N5cy9hbWQ2NC9pbmNsdWRlL2ZwdS5oDQorKysgYi9zeXMvYW1k NjQvaW5jbHVkZS9mcHUuaA0KQEAgLTM4LDggKzM4LDggQEANCiAgKiBXLiBKb2xp dHogMS85MA0KICAqLw0KIA0KLSNpZm5kZWYgX01BQ0hJTkVfRlBVX0hfDQotI2Rl ZmluZQlfTUFDSElORV9GUFVfSF8NCisjaWZuZGVmIF9BTUQ2NF9GUFVfSF8NCisj ZGVmaW5lCV9BTUQ2NF9GUFVfSF8NCiANCiAjaW5jbHVkZSA8eDg2L2ZwdS5oPg0K IA0KQEAgLTgxLDQgKzgxLDQgQEAgaW50CWlzX2ZwdV9rZXJuX3RocmVhZCh1X2lu dCBmbGFncyk7DQogDQogI2VuZGlmDQogDQotI2VuZGlmIC8qICFfTUFDSElORV9G UFVfSF8gKi8NCisjZW5kaWYgLyogIV9BTUQ2NF9GUFVfSF8gKi8NCmRpZmYgLS1n aXQgYS9zeXMvYW1kNjQvaW5jbHVkZS9mcmFtZS5oIGIvc3lzL2FtZDY0L2luY2x1 ZGUvZnJhbWUuaA0KaW5kZXggZTE3MTQwNy4uZTlmYjNkOCAxMDA2NDQNCi0tLSBh L3N5cy9hbWQ2NC9pbmNsdWRlL2ZyYW1lLmgNCisrKyBiL3N5cy9hbWQ2NC9pbmNs dWRlL2ZyYW1lLmgNCkBAIC0zNCw4ICszNCwxMCBAQA0KICAqICRGcmVlQlNEJA0K ICAqLw0KIA0KLSNpZm5kZWYgX01BQ0hJTkVfRlJBTUVfSF8NCi0jZGVmaW5lIF9N QUNISU5FX0ZSQU1FX0hfIDENCisjaWZuZGVmIF9BTUQ2NF9GUkFNRV9IXw0KKyNk ZWZpbmUgX0FNRDY0X0ZSQU1FX0hfIDENCisNCisjaWZkZWYgX194ODZfNjRfXw0K IA0KIC8qDQogICogU3lzdGVtIHN0YWNrIGZyYW1lcy4NCkBAIC04NCw0ICs4Niw5 IEBAIHN0cnVjdCB0cmFwZnJhbWUgew0KICNkZWZpbmUJVEZfSEFTQkFTRVMJMHgy DQogI2RlZmluZQlURl9IQVNGUFhTVEFURQkweDQNCiANCi0jZW5kaWYgLyogX01B Q0hJTkVfRlJBTUVfSF8gKi8NCisjZWxzZSAvKiBfX3g4Nl82NF9fICovDQorDQor I2luY2x1ZGUgPGkzODYvZnJhbWUuaD4NCisNCisjZW5kaWYgLyogX194ODZfNjRf XyAqLw0KKyNlbmRpZiAvKiBfQU1ENjRfRlJBTUVfSF8gKi8NCmRpZmYgLS1naXQg YS9zeXMvYW1kNjQvaW5jbHVkZS9nZGJfbWFjaGRlcC5oIGIvc3lzL2FtZDY0L2lu Y2x1ZGUvZ2RiX21hY2hkZXAuaA0KaW5kZXggZDhjMjViOS4uZjEyNzRjYSAxMDA2 NDQNCi0tLSBhL3N5cy9hbWQ2NC9pbmNsdWRlL2dkYl9tYWNoZGVwLmgNCisrKyBi L3N5cy9hbWQ2NC9pbmNsdWRlL2dkYl9tYWNoZGVwLmgNCkBAIC0yNiw4ICsyNiwx MCBAQA0KICAqICRGcmVlQlNEJA0KICAqLw0KIA0KLSNpZm5kZWYgX01BQ0hJTkVf R0RCX01BQ0hERVBfSF8NCi0jZGVmaW5lCV9NQUNISU5FX0dEQl9NQUNIREVQX0hf DQorI2lmbmRlZiBfQU1ENjRfR0RCX01BQ0hERVBfSF8NCisjZGVmaW5lCV9BTUQ2 NF9HREJfTUFDSERFUF9IXw0KKw0KKyNpZmRlZiBfX3g4Nl82NF9fDQogDQogI2Rl ZmluZQlHREJfQlVGU1oJKEdEQl9OUkVHUyAqIDE2KQ0KICNkZWZpbmUJR0RCX05S RUdTCTU2DQpAQCAtNDksNCArNTEsOSBAQCB2b2lkICpnZGJfY3B1X2dldHJlZyhp bnQsIHNpemVfdCAqKTsNCiB2b2lkIGdkYl9jcHVfc2V0cmVnKGludCwgdm9pZCAq KTsNCiBpbnQgZ2RiX2NwdV9zaWduYWwoaW50LCBpbnQpOw0KIA0KLSNlbmRpZiAv KiAhX01BQ0hJTkVfR0RCX01BQ0hERVBfSF8gKi8NCisjZWxzZSAvKiBfX3g4Nl82 NF9fICovDQorDQorI2luY2x1ZGUgPGkzODYvZ2RiX21hY2hkZXAuaD4NCisNCisj ZW5kaWYgLyogX194ODZfNjRfXyAqLw0KKyNlbmRpZiAvKiAhX0FNRDY0X0dEQl9N QUNIREVQX0hfICovDQpkaWZmIC0tZ2l0IGEvc3lzL2FtZDY0L2luY2x1ZGUvaWVl ZWZwLmggYi9zeXMvYW1kNjQvaW5jbHVkZS9pZWVlZnAuaA0KaW5kZXggYTQwMzY2 MC4uMzM3ODlmOSAxMDA2NDQNCi0tLSBhL3N5cy9hbWQ2NC9pbmNsdWRlL2llZWVm cC5oDQorKysgYi9zeXMvYW1kNjQvaW5jbHVkZS9pZWVlZnAuaA0KQEAgLTM1LDgg KzM1LDggQEANCiAgKiAkRnJlZUJTRCQNCiAgKi8NCiANCi0jaWZuZGVmIF9NQUNI SU5FX0lFRUVGUF9IXw0KLSNkZWZpbmUgX01BQ0hJTkVfSUVFRUZQX0hfDQorI2lm bmRlZiBfQU1ENjRfSUVFRUZQX0hfDQorI2RlZmluZSBfQU1ENjRfSUVFRUZQX0hf DQogDQogLyoNCiAgKiBEZXByZWNhdGVkIGhpc3RvcmljYWwgRlBVIGNvbnRyb2wg aW50ZXJmYWNlDQpAQCAtNDksNiArNDksOCBAQA0KICNlcnJvciB0aGlzIGZpbGUg bmVlZHMgc3lzL2NkZWZzLmggYXMgYSBwcmVyZXF1aXNpdGUNCiAjZW5kaWYNCiAN CisjaWZkZWYgX194ODZfNjRfXw0KKw0KIC8qDQogICogUm91bmRpbmcgbW9kZXMu DQogICovDQpAQCAtMzA1LDQgKzMwNyw5IEBAIF9fRU5EX0RFQ0xTDQogDQogI2Vu ZGlmIC8qICFfX0lFRUVGUF9OT0lOTElORVNfXyAmJiBfX0dOVUNMSUtFX0FTTSAq Lw0KIA0KLSNlbmRpZiAvKiAhX01BQ0hJTkVfSUVFRUZQX0hfICovDQorI2Vsc2Ug LyogX194ODZfNjRfXyAqLw0KKw0KKyNpbmNsdWRlIDxpMzg2L2llZWVmcC5oPg0K Kw0KKyNlbmRpZg0KKyNlbmRpZiAvKiAhX0FNRDY0X0lFRUVGUF9IXyAqLw0KZGlm ZiAtLWdpdCBhL3N5cy9hbWQ2NC9pbmNsdWRlL2luX2Nrc3VtLmggYi9zeXMvYW1k NjQvaW5jbHVkZS9pbl9ja3N1bS5oDQppbmRleCAxNTYwMzVlLi41OWQyMDlkIDEw MDY0NA0KLS0tIGEvc3lzL2FtZDY0L2luY2x1ZGUvaW5fY2tzdW0uaA0KKysrIGIv c3lzL2FtZDY0L2luY2x1ZGUvaW5fY2tzdW0uaA0KQEAgLTMyLDEzICszMiwxNSBA QA0KICAqICRGcmVlQlNEJA0KICAqLw0KIA0KLSNpZm5kZWYgX01BQ0hJTkVfSU5f Q0tTVU1fSF8NCi0jZGVmaW5lCV9NQUNISU5FX0lOX0NLU1VNX0hfCTENCisjaWZu ZGVmIF9BTUQ2NF9JTl9DS1NVTV9IXw0KKyNkZWZpbmUJX0FNRDY0X0lOX0NLU1VN X0hfCTENCiANCiAjaWZuZGVmIF9TWVNfQ0RFRlNfSF8NCiAjZXJyb3IgdGhpcyBm aWxlIG5lZWRzIHN5cy9jZGVmcy5oIGFzIGEgcHJlcmVxdWlzaXRlDQogI2VuZGlm DQogDQorI2lmZGVmIF9feDg2XzY0X18NCisNCiAjaW5jbHVkZSA8c3lzL2NkZWZz Lmg+DQogDQogI2RlZmluZSBpbl9ja3N1bShtLCBsZW4pCWluX2Nrc3VtX3NraXAo bSwgbGVuLCAwKQ0KQEAgLTgxLDQgKzgzLDkgQEAgdV9zaG9ydAlpbl9wc2V1ZG8o dV9pbnQgc3VtLCB1X2ludCBiLCB1X2ludCBjKTsNCiB1X3Nob3J0CWluX2Nrc3Vt X3NraXAoc3RydWN0IG1idWYgKm0sIGludCBsZW4sIGludCBza2lwKTsNCiAjZW5k aWYNCiANCi0jZW5kaWYgLyogX01BQ0hJTkVfSU5fQ0tTVU1fSF8gKi8NCisjZWxz ZSAvKiBfX3g4Nl82NF9fICovDQorDQorI2luY2x1ZGUgPGkzODYvaW5fY2tzdW0u aD4NCisNCisjZW5kaWYgLyogX194ODZfNjRfXyAqLw0KKyNlbmRpZiAvKiBfQU1E NjRfSU5fQ0tTVU1fSF8gKi8NCmRpZmYgLS1naXQgYS9zeXMvYW1kNjQvaW5jbHVk ZS9pbnRyX21hY2hkZXAuaCBiL3N5cy9hbWQ2NC9pbmNsdWRlL2ludHJfbWFjaGRl cC5oDQppbmRleCA5ZDA2NmIxLi4wZmJhZmUyIDEwMDY0NA0KLS0tIGEvc3lzL2Ft ZDY0L2luY2x1ZGUvaW50cl9tYWNoZGVwLmgNCisrKyBiL3N5cy9hbWQ2NC9pbmNs dWRlL2ludHJfbWFjaGRlcC5oDQpAQCAtMjYsOCArMjYsMTQgQEANCiAgKiAkRnJl ZUJTRCQNCiAgKi8NCiANCi0jaWZuZGVmIF9fTUFDSElORV9JTlRSX01BQ0hERVBf SF9fDQotI2RlZmluZQlfX01BQ0hJTkVfSU5UUl9NQUNIREVQX0hfXw0KKyNpZm5k ZWYgX19BTUQ2NF9JTlRSX01BQ0hERVBfSF9fDQorI2RlZmluZQlfX0FNRDY0X0lO VFJfTUFDSERFUF9IX18NCisNCisjaWZuZGVmIF9feDg2XzY0X18NCisNCisjaW5j bHVkZSA8aTM4Ni9pbnRyX21hY2hkZXAuaD4NCisNCisjZWxzZQ0KIA0KICNpZmRl ZiBfS0VSTkVMDQogDQpAQCAtMTY5LDQgKzE3NSw1IEBAIGludAltc2l4X3JlbGVh c2UoaW50IGlycSk7DQogDQogI2VuZGlmCS8qICFMT0NPUkUgKi8NCiAjZW5kaWYJ LyogX0tFUk5FTCAqLw0KLSNlbmRpZgkvKiAhX19NQUNISU5FX0lOVFJfTUFDSERF UF9IX18gKi8NCisjZW5kaWYJLyogIV9feDg2XzY0X18gKi8NCisjZW5kaWYJLyog IV9fQU1ENjRfSU5UUl9NQUNIREVQX0hfXyAqLw0KZGlmZiAtLWdpdCBhL3N5cy9h bWQ2NC9pbmNsdWRlL2tkYi5oIGIvc3lzL2FtZDY0L2luY2x1ZGUva2RiLmgNCmlu ZGV4IDU2ZDIwMTguLjJkYTQ0OGQgMTAwNjQ0DQotLS0gYS9zeXMvYW1kNjQvaW5j bHVkZS9rZGIuaA0KKysrIGIvc3lzL2FtZDY0L2luY2x1ZGUva2RiLmgNCkBAIC0y Niw2ICsyNiwxMiBAQA0KICAqICRGcmVlQlNEJA0KICAqLw0KIA0KKyNpZmRlZiBf X2kzODZfXw0KKw0KKyNpbmNsdWRlIDxpMzg2L2tkYi5oPg0KKw0KKyNlbHNlDQor DQogI2lmbmRlZiBfTUFDSElORV9LREJfSF8NCiAjZGVmaW5lIF9NQUNISU5FX0tE Ql9IXw0KIA0KQEAgLTU3LDMgKzYzLDQgQEAga2RiX2NwdV90cmFwKGludCB0eXBl LCBpbnQgY29kZSkNCiB9DQogDQogI2VuZGlmIC8qIF9NQUNISU5FX0tEQl9IXyAq Lw0KKyNlbmRpZiAvKiBfX2kzODZfXyAqLw0KZGlmZiAtLWdpdCBhL3N5cy9hbWQ2 NC9pbmNsdWRlL21kX3Zhci5oIGIvc3lzL2FtZDY0L2luY2x1ZGUvbWRfdmFyLmgN CmluZGV4IGZmMzIyYmIuLmM0NzY1ZWEgMTAwNjQ0DQotLS0gYS9zeXMvYW1kNjQv aW5jbHVkZS9tZF92YXIuaA0KKysrIGIvc3lzL2FtZDY0L2luY2x1ZGUvbWRfdmFy LmgNCkBAIC0yOSw2ICsyOSwxMiBAQA0KICAqICRGcmVlQlNEJA0KICAqLw0KIA0K KyNpZm5kZWYgX194ODZfNjRfXw0KKw0KKyNpbmNsdWRlIDxpMzg2L21kX3Zhci5o Pg0KKw0KKyNlbHNlDQorDQogI2lmbmRlZiBfTUFDSElORV9NRF9WQVJfSF8NCiAj ZGVmaW5lCV9NQUNISU5FX01EX1ZBUl9IXw0KIA0KQEAgLTExOCwzICsxMjQsNCBA QCBzdHJ1Y3Qgc2F2ZWZwdSAqZ2V0X3BjYl91c2VyX3NhdmVfcGNiKHN0cnVjdCBw Y2IgKnBjYik7DQogc3RydWN0IHBjYiAqZ2V0X3BjYl90ZChzdHJ1Y3QgdGhyZWFk ICp0ZCk7DQogDQogI2VuZGlmIC8qICFfTUFDSElORV9NRF9WQVJfSF8gKi8NCisj ZW5kaWYgLyogIV9feDg2XzY0X18gKi8NCmRpZmYgLS1naXQgYS9zeXMvYW1kNjQv aW5jbHVkZS9taW5pZHVtcC5oIGIvc3lzL2FtZDY0L2luY2x1ZGUvbWluaWR1bXAu aA0KaW5kZXggMmFjNTI5Yy4uZWE1MTliYSAxMDA2NDQNCi0tLSBhL3N5cy9hbWQ2 NC9pbmNsdWRlL21pbmlkdW1wLmgNCisrKyBiL3N5cy9hbWQ2NC9pbmNsdWRlL21p bmlkdW1wLmgNCkBAIC0yNiw2ICsyNiwxMiBAQA0KICAqICRGcmVlQlNEJA0KICAq Lw0KIA0KKyNpZm5kZWYgX194ODZfNjRfXw0KKw0KKyNpbmNsdWRlIDxpMzg2L21p bmlkdW1wLmg+DQorDQorI2Vsc2UNCisNCiAjaWZuZGVmCV9NQUNISU5FX01JTklE VU1QX0hfDQogI2RlZmluZQlfTUFDSElORV9NSU5JRFVNUF9IXyAxDQogDQpAQCAt NDQsMyArNTAsNCBAQCBzdHJ1Y3QgbWluaWR1bXBoZHIgew0KIH07DQogDQogI2Vu ZGlmIC8qIF9NQUNISU5FX01JTklEVU1QX0hfICovDQorI2VuZGlmIC8qICFfX3g4 Nl82NF9fICovDQpkaWZmIC0tZ2l0IGEvc3lzL2FtZDY0L2luY2x1ZGUvcGFyYW0u aCBiL3N5cy9hbWQ2NC9pbmNsdWRlL3BhcmFtLmgNCmluZGV4IDlkZGNmNjguLmM0 NjRhZjQgMTAwNjQ0DQotLS0gYS9zeXMvYW1kNjQvaW5jbHVkZS9wYXJhbS5oDQor KysgYi9zeXMvYW1kNjQvaW5jbHVkZS9wYXJhbS5oDQpAQCAtNDAsOCArNDAsMTEg QEANCiAgKi8NCiANCiANCi0jaWZuZGVmIF9BTUQ2NF9JTkNMVURFX1BBUkFNX0hf DQotI2RlZmluZQlfQU1ENjRfSU5DTFVERV9QQVJBTV9IXw0KKyNpZm5kZWYgX194 ODZfNjRfXw0KKyNpbmNsdWRlIDxpMzg2L3BhcmFtLmg+DQorI2Vsc2UNCisjaWZu ZGVmIF9NQUNISU5FX0lOQ0xVREVfUEFSQU1fSF8NCisjZGVmaW5lCV9NQUNISU5F X0lOQ0xVREVfUEFSQU1fSF8NCiANCiAjaW5jbHVkZSA8bWFjaGluZS9fYWxpZ24u aD4NCiANCkBAIC0xMzksNCArMTQyLDUgQEANCiANCiAjZGVmaW5lCXBndG9rKHgp CSgodW5zaWduZWQgbG9uZykoeCkgKiAoUEFHRV9TSVpFIC8gMTAyNCkpIA0KIA0K LSNlbmRpZiAvKiAhX0FNRDY0X0lOQ0xVREVfUEFSQU1fSF8gKi8NCisjZW5kaWYg LyogIV9NQUNISU5FX0lOQ0xVREVfUEFSQU1fSF8gKi8NCisjZW5kaWYgLyogIV9f eDg2XzY0X18gKi8NCmRpZmYgLS1naXQgYS9zeXMvYW1kNjQvaW5jbHVkZS9wYy9i aW9zLmggYi9zeXMvYW1kNjQvaW5jbHVkZS9wYy9iaW9zLmgNCmluZGV4IDM2NGY4 NmMuLjAyZThjOWMgMTAwNjQ0DQotLS0gYS9zeXMvYW1kNjQvaW5jbHVkZS9wYy9i aW9zLmgNCisrKyBiL3N5cy9hbWQ2NC9pbmNsdWRlL3BjL2Jpb3MuaA0KQEAgLTI3 LDYgKzI3LDEwIEBADQogICogJEZyZWVCU0QkDQogICovDQogDQorI2lmbmRlZiBf X3g4Nl82NF9fDQorI2luY2x1ZGUgPGkzODYvcGMvYmlvcy5oPg0KKyNlbHNlDQor DQogI2lmbmRlZiBfTUFDSElORV9QQ19CSU9TX0hfDQogI2RlZmluZSBfTUFDSElO RV9QQ19CSU9TX0hfDQogDQpAQCAtNzcsMyArODEsNCBAQCBiaW9zX29lbV9zdHJp bmdzKHN0cnVjdCBiaW9zX29lbSAqb2VtLCB1X2NoYXIgKmJ1ZmZlciwgc2l6ZV90 IG1heGxlbik7DQogDQogDQogI2VuZGlmIC8qIF9NQUNISU5FX1BDX0JJT1NfSF8g Ki8NCisjZW5kaWYgLyogIV9feDg2XzY0X18gKi8NCmRpZmYgLS1naXQgYS9zeXMv YW1kNjQvaW5jbHVkZS9wY2IuaCBiL3N5cy9hbWQ2NC9pbmNsdWRlL3BjYi5oDQpp bmRleCAyMmNiYmUyLi5kNDVhMWZmIDEwMDY0NA0KLS0tIGEvc3lzL2FtZDY0L2lu Y2x1ZGUvcGNiLmgNCisrKyBiL3N5cy9hbWQ2NC9pbmNsdWRlL3BjYi5oDQpAQCAt MzQsOCArMzQsMTQgQEANCiAgKiAkRnJlZUJTRCQNCiAgKi8NCiANCi0jaWZuZGVm IF9BTUQ2NF9QQ0JfSF8NCi0jZGVmaW5lIF9BTUQ2NF9QQ0JfSF8NCisjaWZuZGVm IF9feDg2XzY0X18NCisNCisjaW5jbHVkZSA8aTM4Ni9wY2IuaD4NCisNCisjZWxz ZQ0KKw0KKyNpZm5kZWYgX01BQ0hJTkVfUENCX0hfDQorI2RlZmluZSBfTUFDSElO RV9QQ0JfSF8NCiANCiAvKg0KICAqIEFNRDY0IHByb2Nlc3MgY29udHJvbCBibG9j aw0KQEAgLTE0Niw0ICsxNTIsNSBAQCB2b2lkCXJlc3VtZWN0eChzdHJ1Y3QgcGNi ICopOw0KIA0KICNlbmRpZg0KIA0KLSNlbmRpZiAvKiBfQU1ENjRfUENCX0hfICov DQorI2VuZGlmIC8qIF9NQUNISU5FX1BDQl9IXyAqLw0KKyNlbmRpZiAvKiAhX194 ODZfNjRfXyAqLw0KZGlmZiAtLWdpdCBhL3N5cy9hbWQ2NC9pbmNsdWRlL3BjcHUu aCBiL3N5cy9hbWQ2NC9pbmNsdWRlL3BjcHUuaA0KaW5kZXggMjE4ODQ0Mi4uNzYz ZmY5YiAxMDA2NDQNCi0tLSBhL3N5cy9hbWQ2NC9pbmNsdWRlL3BjcHUuaA0KKysr IGIvc3lzL2FtZDY0L2luY2x1ZGUvcGNwdS5oDQpAQCAtMjYsMTMgKzI2LDE1IEBA DQogICogJEZyZWVCU0QkDQogICovDQogDQotI2lmbmRlZiBfTUFDSElORV9QQ1BV X0hfDQotI2RlZmluZQlfTUFDSElORV9QQ1BVX0hfDQorI2lmbmRlZiBfQU1ENjRf UENQVV9IXw0KKyNkZWZpbmUJX0FNRDY0X1BDUFVfSF8NCiANCiAjaWZuZGVmIF9T WVNfQ0RFRlNfSF8NCiAjZXJyb3IgInN5cy9jZGVmcy5oIGlzIGEgcHJlcmVxdWlz aXRlIGZvciB0aGlzIGZpbGUiDQogI2VuZGlmDQogDQorI2lmZGVmIF9feDg2XzY0 X18NCisNCiAjaWYgZGVmaW5lZChYRU4pIHx8IGRlZmluZWQoWEVOSFZNKQ0KICNp Zm5kZWYgTlJfVklSUVMNCiAjZGVmaW5lCU5SX1ZJUlFTCTI0DQpAQCAtMjU2LDQg KzI1OCw5IEBAIF9fY3VycGNiKHZvaWQpDQogDQogI2VuZGlmIC8qIF9LRVJORUwg Ki8NCiANCi0jZW5kaWYgLyogIV9NQUNISU5FX1BDUFVfSF8gKi8NCisjZWxzZSAg LyogX194ODZfNjRfXyAqLw0KKw0KKyNpbmNsdWRlIDxpMzg2L3BjcHUuaD4NCisN CisjZW5kaWYgLyogX194ODZfNjRfXyAqLw0KKyNlbmRpZiAvKiAhX0FNRDY0X1BD UFVfSF8gKi8NCmRpZmYgLS1naXQgYS9zeXMvYW1kNjQvaW5jbHVkZS9wbWFwLmgg Yi9zeXMvYW1kNjQvaW5jbHVkZS9wbWFwLmgNCmluZGV4IDcxMDQ1YWUuLjk0YTcy NGEgMTAwNjQ0DQotLS0gYS9zeXMvYW1kNjQvaW5jbHVkZS9wbWFwLmgNCisrKyBi L3N5cy9hbWQ2NC9pbmNsdWRlL3BtYXAuaA0KQEAgLTQyLDYgKzQyLDEyIEBADQog ICogJEZyZWVCU0QkDQogICovDQogDQorI2lmbmRlZiBfX3g4Nl82NF9fDQorDQor I2luY2x1ZGUgPGkzODYvcG1hcC5oPg0KKw0KKyNlbHNlIC8qIF9feDg2XzY0X18g Ki8NCisNCiAjaWZuZGVmIF9NQUNISU5FX1BNQVBfSF8NCiAjZGVmaW5lCV9NQUNI SU5FX1BNQVBfSF8NCiANCkBAIC0zMzgsMyArMzQ0LDUgQEAgdm9pZAlwbWFwX2lu dmFsaWRhdGVfY2FjaGVfcmFuZ2Uodm1fb2Zmc2V0X3Qgc3ZhLCB2bV9vZmZzZXRf dCBldmEpOw0KICNlbmRpZiAvKiAhTE9DT1JFICovDQogDQogI2VuZGlmIC8qICFf TUFDSElORV9QTUFQX0hfICovDQorDQorI2VuZGlmIC8qICFfX3g4Nl82NF9fICov DQpkaWZmIC0tZ2l0IGEvc3lzL2FtZDY0L2luY2x1ZGUvcHJvYy5oIGIvc3lzL2Ft ZDY0L2luY2x1ZGUvcHJvYy5oDQppbmRleCAxNDU4NWZiLi5mMDgyM2FiIDEwMDY0 NA0KLS0tIGEvc3lzL2FtZDY0L2luY2x1ZGUvcHJvYy5oDQorKysgYi9zeXMvYW1k NjQvaW5jbHVkZS9wcm9jLmgNCkBAIC0zMCw2ICszMCwxMiBAQA0KICAqICRGcmVl QlNEJA0KICAqLw0KIA0KKyNpZm5kZWYgX194ODZfNjRfXw0KKw0KKyNpbmNsdWRl IDxpMzg2L3Byb2MuaD4NCisNCisjZWxzZSAvKiBfX3g4Nl82NF9fICovDQorDQog I2lmbmRlZiBfTUFDSElORV9QUk9DX0hfDQogI2RlZmluZQlfTUFDSElORV9QUk9D X0hfDQogDQpAQCAtODksMyArOTUsNCBAQCBzdHJ1Y3Qgc3lzY2FsbF9hcmdzIHsN CiAjZW5kaWYgIC8qIF9LRVJORUwgKi8NCiANCiAjZW5kaWYgLyogIV9NQUNISU5F X1BST0NfSF8gKi8NCisjZW5kaWYgLyogIV9feDg2XzY0X18gKi8NCmRpZmYgLS1n aXQgYS9zeXMvYW1kNjQvaW5jbHVkZS9ydW5xLmggYi9zeXMvYW1kNjQvaW5jbHVk ZS9ydW5xLmgNCmluZGV4IDg1NWUzMTUuLjAwNGIzMDAgMTAwNjQ0DQotLS0gYS9z eXMvYW1kNjQvaW5jbHVkZS9ydW5xLmgNCisrKyBiL3N5cy9hbWQ2NC9pbmNsdWRl L3J1bnEuaA0KQEAgLTI2LDYgKzI2LDEwIEBADQogICogJEZyZWVCU0QkDQogICov DQogDQorI2lmbmRlZiBfX3g4Nl82NF9fDQorI2luY2x1ZGUgPGkzODYvcnVucS5o Pg0KKyNlbHNlDQorDQogI2lmbmRlZglfTUFDSElORV9SVU5RX0hfDQogI2RlZmlu ZQlfTUFDSElORV9SVU5RX0hfDQogDQpAQCAtNDQsMyArNDgsNCBAQA0KIHR5cGVk ZWYJdV9pbnQ2NF90CXJxYl93b3JkX3Q7DQogDQogI2VuZGlmDQorI2VuZGlmDQpk aWZmIC0tZ2l0IGEvc3lzL2FtZDY0L2luY2x1ZGUvc2VnbWVudHMuaCBiL3N5cy9h bWQ2NC9pbmNsdWRlL3NlZ21lbnRzLmgNCmluZGV4IGQ5ZjQyODAuLjA3NmM1YWMg MTAwNjQ0DQotLS0gYS9zeXMvYW1kNjQvaW5jbHVkZS9zZWdtZW50cy5oDQorKysg Yi9zeXMvYW1kNjQvaW5jbHVkZS9zZWdtZW50cy5oDQpAQCAtMzQsNiArMzQsMTAg QEANCiAgKiAkRnJlZUJTRCQNCiAgKi8NCiANCisjaWZuZGVmIF9feDg2XzY0X18N CisjaW5jbHVkZSA8aTM4Ni9zZWdtZW50cy5oPg0KKyNlbHNlDQorDQogI2lmbmRl ZiBfTUFDSElORV9TRUdNRU5UU19IXw0KICNkZWZpbmUJX01BQ0hJTkVfU0VHTUVO VFNfSF8NCiANCkBAIC0xMDQsMyArMTA4LDQgQEAgdm9pZAl1cGRhdGVfZ2R0X2Zz YmFzZShzdHJ1Y3QgdGhyZWFkICp0ZCwgdWludDMyX3QgYmFzZSk7DQogI2VuZGlm IC8qIF9LRVJORUwgKi8NCiANCiAjZW5kaWYgLyogIV9NQUNISU5FX1NFR01FTlRT X0hfICovDQorI2VuZGlmIC8qICFfX3g4Nl82NF9fICovDQpkaWZmIC0tZ2l0IGEv c3lzL2FtZDY0L2luY2x1ZGUvc2ZfYnVmLmggYi9zeXMvYW1kNjQvaW5jbHVkZS9z Zl9idWYuaA0KaW5kZXggYjUyNDVlNi4uNDgyYjNkYSAxMDA2NDQNCi0tLSBhL3N5 cy9hbWQ2NC9pbmNsdWRlL3NmX2J1Zi5oDQorKysgYi9zeXMvYW1kNjQvaW5jbHVk ZS9zZl9idWYuaA0KQEAgLTI2LDYgKzI2LDEwIEBADQogICogJEZyZWVCU0QkDQog ICovDQogDQorI2lmbmRlZiBfX3g4Nl82NF9fDQorI2luY2x1ZGUgPGkzODYvc2Zf YnVmLmg+DQorI2Vsc2UNCisNCiAjaWZuZGVmIF9NQUNISU5FX1NGX0JVRl9IXw0K ICNkZWZpbmUgX01BQ0hJTkVfU0ZfQlVGX0hfDQogDQpAQCAtNTYsMyArNjAsNCBA QCBzZl9idWZfcGFnZShzdHJ1Y3Qgc2ZfYnVmICpzZikNCiB9DQogDQogI2VuZGlm IC8qICFfTUFDSElORV9TRl9CVUZfSF8gKi8NCisjZW5kaWYgLyogIV9feDg2XzY0 X18gKi8NCmRpZmYgLS1naXQgYS9zeXMvYW1kNjQvaW5jbHVkZS9zaWdmcmFtZS5o IGIvc3lzL2FtZDY0L2luY2x1ZGUvc2lnZnJhbWUuaA0KaW5kZXggZDEwNDUwNy4u OGFjZjBiOCAxMDA2NDQNCi0tLSBhL3N5cy9hbWQ2NC9pbmNsdWRlL3NpZ2ZyYW1l LmgNCisrKyBiL3N5cy9hbWQ2NC9pbmNsdWRlL3NpZ2ZyYW1lLmgNCkBAIC0yOCw2 ICsyOCwxMCBAQA0KICAqICRGcmVlQlNEJA0KICAqLw0KIA0KKyNpZm5kZWYgX194 ODZfNjRfXw0KKyNpbmNsdWRlIDxpMzg2L3NpZ2ZyYW1lLmg+DQorI2Vsc2UNCisN CiAjaWZuZGVmIF9NQUNISU5FX1NJR0ZSQU1FX0hfDQogI2RlZmluZQlfTUFDSElO RV9TSUdGUkFNRV9IXw0KIA0KQEAgLTQ0LDMgKzQ4LDQgQEAgc3RydWN0IHNpZ2Zy YW1lIHsNCiB9Ow0KIA0KICNlbmRpZiAvKiAhX01BQ0hJTkVfU0lHRlJBTUVfSF8g Ki8NCisjZW5kaWYgLyogIV9feDg2XzY0X18gKi8NCmRpZmYgLS1naXQgYS9zeXMv YW1kNjQvaW5jbHVkZS9zaWduYWwuaCBiL3N5cy9hbWQ2NC9pbmNsdWRlL3NpZ25h bC5oDQppbmRleCAwODVkNDNhLi43NmQ3MDE4IDEwMDY0NA0KLS0tIGEvc3lzL2Ft ZDY0L2luY2x1ZGUvc2lnbmFsLmgNCisrKyBiL3N5cy9hbWQ2NC9pbmNsdWRlL3Np Z25hbC5oDQpAQCAtMzEsNiArMzEsMTAgQEANCiAgKiAkRnJlZUJTRCQNCiAgKi8N CiANCisjaWZuZGVmIF9feDg2XzY0X18NCisjaW5jbHVkZSA8aTM4Ni9zaWduYWwu aD4NCisjZWxzZQ0KKw0KICNpZm5kZWYgX01BQ0hJTkVfU0lHTkFMX0hfDQogI2Rl ZmluZQlfTUFDSElORV9TSUdOQUxfSF8NCiANCkBAIC0xMDcsMyArMTExLDQgQEAg c3RydWN0IHNpZ2NvbnRleHQgew0KICNlbmRpZiAvKiBfX0JTRF9WSVNJQkxFICov DQogDQogI2VuZGlmIC8qICFfTUFDSElORV9TSUdOQUxfSF8gKi8NCisjZW5kaWYg LyogIV9feDg2XzY0X18gKi8NCmRpZmYgLS1naXQgYS9zeXMvYW1kNjQvaW5jbHVk ZS9zdGFjay5oIGIvc3lzL2FtZDY0L2luY2x1ZGUvc3RhY2suaA0KaW5kZXggMjRl MjU0Ny4uYmM5OTQ4MyAxMDA2NDQNCi0tLSBhL3N5cy9hbWQ2NC9pbmNsdWRlL3N0 YWNrLmgNCisrKyBiL3N5cy9hbWQ2NC9pbmNsdWRlL3N0YWNrLmgNCkBAIC0yNiw2 ICsyNiw5IEBADQogICogJEZyZWVCU0QkDQogICovDQogDQorI2lmbmRlZiBfX3g4 Nl82NF9fDQorI2luY2x1ZGUgPGkzODYvc3RhY2suaD4NCisjZWxzZQ0KICNpZm5k ZWYgX01BQ0hJTkVfU1RBQ0tfSF8NCiAjZGVmaW5lCV9NQUNISU5FX1NUQUNLX0hf DQogDQpAQCAtNDIsMyArNDUsNCBAQCBzdHJ1Y3QgYW1kNjRfZnJhbWUgew0KIH07 DQogDQogI2VuZGlmIC8qICFfTUFDSElORV9TVEFDS19IXyAqLw0KKyNlbmRpZiAv KiAhX194ODZfNjRfXyAqLw0KZGlmZiAtLWdpdCBhL3N5cy9hbWQ2NC9pbmNsdWRl L3RpbWVycmVnLmggYi9zeXMvYW1kNjQvaW5jbHVkZS90aW1lcnJlZy5oDQppbmRl eCBjZjVmMjgxLi4zODliNWYzIDEwMDY0NA0KLS0tIGEvc3lzL2FtZDY0L2luY2x1 ZGUvdGltZXJyZWcuaA0KKysrIGIvc3lzL2FtZDY0L2luY2x1ZGUvdGltZXJyZWcu aA0KQEAgLTI1LDYgKzI1LDEwIEBADQogICogJEZyZWVCU0QkDQogICovDQogDQor I2lmbmRlZiBfX3g4Nl82NF9fDQorI2luY2x1ZGUgPGkzODYvdGltZXJyZWcuaD4N CisjZWxzZQ0KKw0KIC8qDQogICogVGhlIG91dHB1dHMgb2YgdGhlIHRocmVlIHRp bWVycyBhcmUgY29ubmVjdGVkIGFzIGZvbGxvd3M6DQogICoNCkBAIC01MiwzICs1 Niw0IEBADQogI2VuZGlmIC8qIF9LRVJORUwgKi8NCiANCiAjZW5kaWYgLyogX01B Q0hJTkVfVElNRVJSRUdfSF8gKi8NCisjZW5kaWYgLyogIV9feDg2XzY0X18gKi8N CmRpZmYgLS1naXQgYS9zeXMvYW1kNjQvaW5jbHVkZS90c3MuaCBiL3N5cy9hbWQ2 NC9pbmNsdWRlL3Rzcy5oDQppbmRleCBmYmJlM2FmLi4xZmQ4MmMxIDEwMDY0NA0K LS0tIGEvc3lzL2FtZDY0L2luY2x1ZGUvdHNzLmgNCisrKyBiL3N5cy9hbWQ2NC9p bmNsdWRlL3Rzcy5oDQpAQCAtMzMsNiArMzMsMTAgQEANCiAgKiAkRnJlZUJTRCQN CiAgKi8NCiANCisjaWZuZGVmIF9feDg2XzY0X18NCisjaW5jbHVkZSA8aTM4Ni90 c3MuaD4NCisjZWxzZQ0KKw0KICNpZm5kZWYgX01BQ0hJTkVfVFNTX0hfDQogI2Rl ZmluZSBfTUFDSElORV9UU1NfSF8gMQ0KIA0KQEAgLTY4LDMgKzcyLDQgQEAgZXh0 ZXJuIHN0cnVjdCBhbWQ2NHRzcyBjb21tb25fdHNzW107DQogI2VuZGlmDQogDQog I2VuZGlmIC8qIF9NQUNISU5FX1RTU19IXyAqLw0KKyNlbmRpZiAvKiAhX194ODZf NjRfXyAqLw0KZGlmZiAtLWdpdCBhL3N5cy9hbWQ2NC9pbmNsdWRlL3Vjb250ZXh0 LmggYi9zeXMvYW1kNjQvaW5jbHVkZS91Y29udGV4dC5oDQppbmRleCA1YWI4NDFl Li5hODRkYmIxIDEwMDY0NA0KLS0tIGEvc3lzL2FtZDY0L2luY2x1ZGUvdWNvbnRl eHQuaA0KKysrIGIvc3lzL2FtZDY0L2luY2x1ZGUvdWNvbnRleHQuaA0KQEAgLTI5 LDggKzI5LDEwIEBADQogICogJEZyZWVCU0QkDQogICovDQogDQotI2lmbmRlZiBf TUFDSElORV9VQ09OVEVYVF9IXw0KLSNkZWZpbmUJX01BQ0hJTkVfVUNPTlRFWFRf SF8NCisjaWZuZGVmIF9BTUQ2NF9VQ09OVEVYVF9IXw0KKyNkZWZpbmUJX0FNRDY0 X1VDT05URVhUX0hfDQorDQorI2lmZGVmIF9feDg2XzY0X18NCiANCiAvKg0KICAq IG1jX3RyYXBubyBiaXRzLiBTaGFsbCBiZSBpbiBzeW5jIHdpdGggVEZfWFhYLg0K QEAgLTEwMCw0ICsxMDIsMTAgQEAgdHlwZWRlZiBzdHJ1Y3QgX19tY29udGV4dCB7 DQogCWxvbmcJbWNfc3BhcmVbNF07DQogfSBtY29udGV4dF90Ow0KIA0KLSNlbmRp ZiAvKiAhX01BQ0hJTkVfVUNPTlRFWFRfSF8gKi8NCisjZWxzZSAvKiBfX3g4Nl82 NF9fICovDQorDQorI2luY2x1ZGUgPGkzODYvdWNvbnRleHQuaD4NCisNCisjZW5k aWYNCisNCisjZW5kaWYgLyogIV9BTUQ2NF9VQ09OVEVYVF9IXyAqLw0KZGlmZiAt LWdpdCBhL3N5cy9hbWQ2NC9pbmNsdWRlL3ZhcmFyZ3MuaCBiL3N5cy9hbWQ2NC9p bmNsdWRlL3ZhcmFyZ3MuaA0KaW5kZXggOTNmYWFjNi4uNzVjN2E2ZiAxMDA2NDQN Ci0tLSBhL3N5cy9hbWQ2NC9pbmNsdWRlL3ZhcmFyZ3MuaA0KKysrIGIvc3lzL2Ft ZDY0L2luY2x1ZGUvdmFyYXJncy5oDQpAQCAtNDAsNiArNDAsMTAgQEANCiAgKiAk RnJlZUJTRCQNCiAgKi8NCiANCisjaWZuZGVmIF9feDg2XzY0X18NCisjaW5jbHVk ZSA8aTM4Ni92YXJhcmdzLmg+DQorI2Vsc2UNCisNCiAjaWZuZGVmIF9NQUNISU5F X1ZBUkFSR1NfSF8NCiAjZGVmaW5lCV9NQUNISU5FX1ZBUkFSR1NfSF8NCiANCkBA IC04NywzICs5MSw0IEBAIHR5cGVkZWYgY2hhciAqdmFfbGlzdDsNCiAjZW5kaWYg LyogX19HTlVDTElLRV9CVUlMVElOX1ZBUkFSR1MgKi8NCiANCiAjZW5kaWYgLyog IV9NQUNISU5FX1ZBUkFSR1NfSF8gKi8NCisjZW5kaWYgLyogIV9feDg2XzY0X18g Ki8NCmRpZmYgLS1naXQgYS9zeXMvYW1kNjQvaW5jbHVkZS92bXBhcmFtLmggYi9z eXMvYW1kNjQvaW5jbHVkZS92bXBhcmFtLmgNCmluZGV4IGUwNmZhMzkuLjI5NWZk ODAgMTAwNjQ0DQotLS0gYS9zeXMvYW1kNjQvaW5jbHVkZS92bXBhcmFtLmgNCisr KyBiL3N5cy9hbWQ2NC9pbmNsdWRlL3ZtcGFyYW0uaA0KQEAgLTQyLDYgKzQyLDEw IEBADQogICovDQogDQogDQorI2lmbmRlZiBfX3g4Nl82NF9fDQorI2luY2x1ZGUg PGkzODYvdm1wYXJhbS5oPg0KKyNlbHNlDQorDQogI2lmbmRlZiBfTUFDSElORV9W TVBBUkFNX0hfDQogI2RlZmluZQlfTUFDSElORV9WTVBBUkFNX0hfIDENCiANCkBA IC0yMTUsMyArMjE5LDQgQEANCiAjZGVmaW5lCVpFUk9fUkVHSU9OX1NJWkUJKDIg KiAxMDI0ICogMTAyNCkJLyogMk1CICovDQogDQogI2VuZGlmIC8qIF9NQUNISU5F X1ZNUEFSQU1fSF8gKi8NCisjZW5kaWYgLyogIV9feDg2XzY0X18gKi8NCg== --Boundary_(ID_2R7SRK8nTZt/NNUkoteUNg)--