From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28906 invoked by alias); 25 Jun 2011 21:15:28 -0000 Received: (qmail 28896 invoked by uid 22791); 25 Jun 2011 21:15:26 -0000 X-SWARE-Spam-Status: No, hits=-2.3 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,TW_GM,TW_PM X-Spam-Check-By: sourceware.org Received: from mail-qy0-f182.google.com (HELO mail-qy0-f182.google.com) (209.85.216.182) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 25 Jun 2011 21:15:10 +0000 Received: by qyk38 with SMTP id 38so2184862qyk.20 for ; Sat, 25 Jun 2011 14:15:09 -0700 (PDT) MIME-Version: 1.0 Received: by 10.229.63.69 with SMTP id a5mr3539864qci.94.1309036509369; Sat, 25 Jun 2011 14:15:09 -0700 (PDT) Received: by 10.229.238.19 with HTTP; Sat, 25 Jun 2011 14:15:09 -0700 (PDT) In-Reply-To: References: <20110625161357.GA5401@intel.com> Date: Sat, 25 Jun 2011 23:36:00 -0000 Message-ID: Subject: Re: PATCH [8/n]: Prepare x32: PR other/48007: Unwind library doesn't work with UNITS_PER_WORD > sizeof (void *) From: "H.J. Lu" To: "Joseph S. Myers" Cc: gcc-patches@gcc.gnu.org, Jason Merrill , Richard Henderson Content-Type: multipart/mixed; boundary=0016e6509fa223957704a68fd0dc X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2011-06/txt/msg01924.txt.bz2 --0016e6509fa223957704a68fd0dc Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-length: 1693 On Sat, Jun 25, 2011 at 1:19 PM, Joseph S. Myers wrote: > On Sat, 25 Jun 2011, H.J. Lu wrote: > >> +#ifndef UNIQUE_UNWIND_CONTEXT > > The use of #ifndef seems to imply that this is a target macro, to be > defined in libgcc_tm.h. =A0In that case it should be documented, and > poisoned in system.h under the "only used for code built for the target" > case, and this: > >> +#if defined __x86_64 && !defined __LP64__ > > is inappropriate since you should instead put it in an appropriate header > in libgcc/config/, rather than hardcoding an architecture-specific #if in > an architecture-independent file. > Here is the updated patch. OK for trunk? Thanks. --=20 H.J. --- gcc/ 2011-06-25 H.J. Lu PR other/48007 * config.gcc (libgcc_tm_file): Add i386/unique-unwind.h for Linux/x86. * system.h (UNIQUE_UNWIND_CONTEXT): Poisoned. * unwind-dw2.c (_Unwind_Context): If UNIQUE_UNWIND_CONTEXT is defined, add dwarf_reg_size_table and value, remove version and by_value. (EXTENDED_CONTEXT_BIT): Don't define if UNIQUE_UNWIND_CONTEXT is defined. (_Unwind_IsExtendedContext): Likewise. (_Unwind_GetGR): Support UNIQUE_UNWIND_CONTEXT. (_Unwind_SetGR): Likewise. (_Unwind_GetGRPtr): Likewise. (_Unwind_SetGRPtr): Likewise. (_Unwind_SetGRValue): Likewise. (_Unwind_GRByValue): Likewise. (__frame_state_for): Initialize dwarf_reg_size_table field if UNIQUE_UNWIND_CONTEXT is defined. (uw_install_context_1): Likewise. Support UNIQUE_UNWIND_CONTEXT. * doc/tm.texi.in: Document UNIQUE_UNWIND_CONTEXT. * doc/tm.texi: Regenerated. libgcc/ 2011-06-25 H.J. Lu * config/i386/unique-unwind.h: New file. --0016e6509fa223957704a68fd0dc Content-Type: text/plain; charset=US-ASCII; name="gcc-x32-pr48007-2.patch" Content-Disposition: attachment; filename="gcc-x32-pr48007-2.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gpd2ig1z0 Content-length: 13010 Z2NjLwoKMjAxMS0wNi0yNSAgSC5KLiBMdSAgPGhvbmdqaXUubHVAaW50ZWwu Y29tPgoKCVBSIG90aGVyLzQ4MDA3CgkqIGNvbmZpZy5nY2MgKGxpYmdjY190 bV9maWxlKTogQWRkIGkzODYvdW5pcXVlLXVud2luZC5oIGZvcgoJTGludXgv eDg2LgoKCSogc3lzdGVtLmggKFVOSVFVRV9VTldJTkRfQ09OVEVYVCk6IFBv aXNvbmVkLgoKCSogdW53aW5kLWR3Mi5jIChfVW53aW5kX0NvbnRleHQpOiBJ ZiBVTklRVUVfVU5XSU5EX0NPTlRFWFQgaXMKCWRlZmluZWQsIGFkZCBkd2Fy Zl9yZWdfc2l6ZV90YWJsZSBhbmQgdmFsdWUsIHJlbW92ZSB2ZXJzaW9uIGFu ZAoJYnlfdmFsdWUuCgkoRVhURU5ERURfQ09OVEVYVF9CSVQpOiBEb24ndCBk ZWZpbmUgaWYgVU5JUVVFX1VOV0lORF9DT05URVhUCglpcyBkZWZpbmVkLgoJ KF9VbndpbmRfSXNFeHRlbmRlZENvbnRleHQpOiBMaWtld2lzZS4KCShfVW53 aW5kX0dldEdSKTogU3VwcG9ydCBVTklRVUVfVU5XSU5EX0NPTlRFWFQuCgko X1Vud2luZF9TZXRHUik6IExpa2V3aXNlLgoJKF9VbndpbmRfR2V0R1JQdHIp OiBMaWtld2lzZS4KCShfVW53aW5kX1NldEdSUHRyKTogTGlrZXdpc2UuCgko X1Vud2luZF9TZXRHUlZhbHVlKTogTGlrZXdpc2UuCgkoX1Vud2luZF9HUkJ5 VmFsdWUpOiBMaWtld2lzZS4KCShfX2ZyYW1lX3N0YXRlX2Zvcik6IEluaXRp YWxpemUgZHdhcmZfcmVnX3NpemVfdGFibGUgZmllbGQgaWYKCVVOSVFVRV9V TldJTkRfQ09OVEVYVCBpcyBkZWZpbmVkLgoJKHV3X2luc3RhbGxfY29udGV4 dF8xKTogTGlrZXdpc2UuICBTdXBwb3J0IFVOSVFVRV9VTldJTkRfQ09OVEVY VC4KCgkqIGRvYy90bS50ZXhpLmluOiBEb2N1bWVudCBVTklRVUVfVU5XSU5E X0NPTlRFWFQuCgkqIGRvYy90bS50ZXhpOiBSZWdlbmVyYXRlZC4KCmxpYmdj Yy8KCjIwMTEtMDYtMjUgIEguSi4gTHUgIDxob25naml1Lmx1QGludGVsLmNv bT4KCgkqIGNvbmZpZy9pMzg2L3VuaXF1ZS11bndpbmQuaDogTmV3IGZpbGUu CgpkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy5nY2MgYi9nY2MvY29uZmlnLmdj YwppbmRleCBhMWRiZDFhLi5jZGNhYmFjIDEwMDY0NAotLS0gYS9nY2MvY29u ZmlnLmdjYworKysgYi9nY2MvY29uZmlnLmdjYwpAQCAtMjYyNyw2ICsyNjQ4 LDcgQEAgZXNhYwogY2FzZSAke3RhcmdldH0gaW4KIGlbMzQ1NjddODYtKi1s aW51eCogfCB4ODZfNjQtKi1saW51eCopCiAJdG1ha2VfZmlsZT0iJHt0bWFr ZV9maWxlfSBpMzg2L3QtcG1tX21hbGxvYyBpMzg2L3QtaTM4NiIKKwlsaWJn Y2NfdG1fZmlsZT0iJHtsaWJnY2NfdG1fZmlsZX0gaTM4Ni91bmlxdWUtdW53 aW5kLmgiCiAJOzsKIGlbMzQ1NjddODYtKi0qIHwgeDg2XzY0LSotKikKIAl0 bWFrZV9maWxlPSIke3RtYWtlX2ZpbGV9IGkzODYvdC1nbW1fbWFsbG9jIGkz ODYvdC1pMzg2IgpkaWZmIC0tZ2l0IGEvZ2NjL2RvYy90bS50ZXhpIGIvZ2Nj L2RvYy90bS50ZXhpCmluZGV4IDM0MTYyOGIuLmFkODU0M2QgMTAwNjQ0Ci0t LSBhL2djYy9kb2MvdG0udGV4aQorKysgYi9nY2MvZG9jL3RtLnRleGkKQEAg LTM3MDEsNiArMzcwMSwxMyBAQCByZXR1cm4gQGNvZGV7QHZhcntyZWdub319 LgogCiBAZW5kIGRlZm1hYwogCitAZGVmbWFjIFVOSVFVRV9VTldJTkRfQ09O VEVYVAorCitEZWZpbmUgdGhpcyBtYWNybyBpZiB0aGUgdGFyZ2V0IG9ubHkg c3VwcG9ydHMgc2luZ2xlIHVucWl1ZSB1bndpbmQKK2NvbnRleHQuICBUaGUg ZGVmYXVsdCBpcyB0byBzdXBwb3J0IG11bHRpcGxlIHVud2luZCBjb250ZXh0 cy4KKworQGVuZCBkZWZtYWMKKwogQG5vZGUgRWxpbWluYXRpb24KIEBzdWJz ZWN0aW9uIEVsaW1pbmF0aW5nIEZyYW1lIFBvaW50ZXIgYW5kIEFyZyBQb2lu dGVyCiAKZGlmZiAtLWdpdCBhL2djYy9kb2MvdG0udGV4aS5pbiBiL2djYy9k b2MvdG0udGV4aS5pbgppbmRleCBmN2MxNmU5Li45ODQ3MDE0IDEwMDY0NAot LS0gYS9nY2MvZG9jL3RtLnRleGkuaW4KKysrIGIvZ2NjL2RvYy90bS50ZXhp LmluCkBAIC0zNjg3LDYgKzM2ODcsMTMgQEAgcmV0dXJuIEBjb2Rle0B2YXJ7 cmVnbm99fS4KIAogQGVuZCBkZWZtYWMKIAorQGRlZm1hYyBVTklRVUVfVU5X SU5EX0NPTlRFWFQKKworRGVmaW5lIHRoaXMgbWFjcm8gaWYgdGhlIHRhcmdl dCBvbmx5IHN1cHBvcnRzIHNpbmdsZSB1bnFpdWUgdW53aW5kCitjb250ZXh0 LiAgVGhlIGRlZmF1bHQgaXMgdG8gc3VwcG9ydCBtdWx0aXBsZSB1bndpbmQg Y29udGV4dHMuCisKK0BlbmQgZGVmbWFjCisKIEBub2RlIEVsaW1pbmF0aW9u CiBAc3Vic2VjdGlvbiBFbGltaW5hdGluZyBGcmFtZSBQb2ludGVyIGFuZCBB cmcgUG9pbnRlcgogCmRpZmYgLS1naXQgYS9nY2Mvc3lzdGVtLmggYi9nY2Mv c3lzdGVtLmgKaW5kZXggZTAyY2JjZC4uZTk3NzFhZiAxMDA2NDQKLS0tIGEv Z2NjL3N5c3RlbS5oCisrKyBiL2djYy9zeXN0ZW0uaApAQCAtNzY0LDcgKzc2 NCw3IEBAIGV4dGVybiB2b2lkIGZhbmN5X2Fib3J0IChjb25zdCBjaGFyICos IGludCwgY29uc3QgY2hhciAqKSBBVFRSSUJVVEVfTk9SRVRVUk47CiAvKiBU YXJnZXQgbWFjcm9zIG9ubHkgdXNlZCBmb3IgY29kZSBidWlsdCBmb3IgdGhl IHRhcmdldCwgdGhhdCBoYXZlCiAgICBtb3ZlZCB0byBsaWJnY2MtdG0uaCBv ciBoYXZlIG5ldmVyIGJlZW4gcHJlc2VudCBlbHNld2hlcmUuICAqLwogICNw cmFnbWEgR0NDIHBvaXNvbiBERUNMQVJFX0xJQlJBUllfUkVOQU1FUyBMSUJH Q0MyX0dOVV9QUkVGSVgJCVwKLQlNRF9VTldJTkRfU1VQUE9SVCBFTkFCTEVf RVhFQ1VURV9TVEFDSworCU1EX1VOV0lORF9TVVBQT1JUIEVOQUJMRV9FWEVD VVRFX1NUQUNLIFVOSVFVRV9VTldJTkRfQ09OVEVYVAogCiAvKiBPdGhlciBv YnNvbGV0ZSB0YXJnZXQgbWFjcm9zLCBvciBtYWNyb3MgdGhhdCB1c2VkIHRv IGJlIGluIHRhcmdldAogICAgaGVhZGVycyBhbmQgd2VyZSBub3QgdXNlZCwg YW5kIG1heSBiZSBvYnNvbGV0ZSBvciBtYXkgbmV2ZXIgaGF2ZQpkaWZmIC0t Z2l0IGEvZ2NjL3Vud2luZC1kdzIuYyBiL2djYy91bndpbmQtZHcyLmMKaW5k ZXggMTlkYTI5OS4uZWQ2ZDE1ZiAxMDA2NDQKLS0tIGEvZ2NjL3Vud2luZC1k dzIuYworKysgYi9nY2MvdW53aW5kLWR3Mi5jCkBAIC02OSw2ICs2OSwxNSBA QCBzdHJ1Y3QgX1Vud2luZF9Db250ZXh0CiAgIHZvaWQgKnJhOwogICB2b2lk ICpsc2RhOwogICBzdHJ1Y3QgZHdhcmZfZWhfYmFzZXMgYmFzZXM7CisjaWZk ZWYgVU5JUVVFX1VOV0lORF9DT05URVhUCisgIC8qIFVzZWQgdG8gY2hlY2sg Zm9yIHVuaXF1ZSBfVW53aW5kX0NvbnRleHQuICAqLworICB2b2lkICpkd2Fy Zl9yZWdfc2l6ZV90YWJsZTsKKyAgLyogU2lnbmFsIGZyYW1lIGNvbnRleHQu ICAqLworI2RlZmluZSBTSUdOQUxfRlJBTUVfQklUICgoX1Vud2luZF9Xb3Jk KSAxID4+IDApCisgIF9VbndpbmRfV29yZCBmbGFnczsKKyAgX1Vud2luZF9X b3JkIGFyZ3Nfc2l6ZTsKKyAgX1Vud2luZF9Xb3JkIHZhbHVlW0RXQVJGX0ZS QU1FX1JFR0lTVEVSUysxXTsKKyNlbHNlCiAgIC8qIFNpZ25hbCBmcmFtZSBj b250ZXh0LiAgKi8KICNkZWZpbmUgU0lHTkFMX0ZSQU1FX0JJVCAoKH4oX1Vu d2luZF9Xb3JkKSAwID4+IDEpICsgMSkKICAgLyogQ29udGV4dCB3aGljaCBo YXMgdmVyc2lvbi9hcmdzX3NpemUvYnlfdmFsdWUgZmllbGRzLiAgKi8KQEAg LTc5LDYgKzg4LDcgQEAgc3RydWN0IF9VbndpbmRfQ29udGV4dAogICBfVW53 aW5kX1dvcmQgdmVyc2lvbjsKICAgX1Vud2luZF9Xb3JkIGFyZ3Nfc2l6ZTsK ICAgY2hhciBieV92YWx1ZVtEV0FSRl9GUkFNRV9SRUdJU1RFUlMrMV07Cisj ZW5kaWYKIH07CiAKIC8qIEJ5dGUgc2l6ZSBvZiBldmVyeSByZWdpc3RlciBt YW5hZ2VkIGJ5IHRoZXNlIHJvdXRpbmVzLiAgKi8KQEAgLTE0NCwxMSArMTU0 LDEzIEBAIF9VbndpbmRfU2V0U2lnbmFsRnJhbWUgKHN0cnVjdCBfVW53aW5k X0NvbnRleHQgKmNvbnRleHQsIGludCB2YWwpCiAgICAgY29udGV4dC0+Zmxh Z3MgJj0gflNJR05BTF9GUkFNRV9CSVQ7CiB9CiAKKyNpZm5kZWYgVU5JUVVF X1VOV0lORF9DT05URVhUCiBzdGF0aWMgaW5saW5lIF9VbndpbmRfV29yZAog X1Vud2luZF9Jc0V4dGVuZGVkQ29udGV4dCAoc3RydWN0IF9VbndpbmRfQ29u dGV4dCAqY29udGV4dCkKIHsKICAgcmV0dXJuIGNvbnRleHQtPmZsYWdzICYg RVhURU5ERURfQ09OVEVYVF9CSVQ7CiB9CisjZW5kaWYKIAwKIC8qIEdldCB0 aGUgdmFsdWUgb2YgcmVnaXN0ZXIgSU5ERVggYXMgc2F2ZWQgaW4gQ09OVEVY VC4gICovCiAKQEAgLTE2OCw4ICsxODAsMTQgQEAgX1Vud2luZF9HZXRHUiAo c3RydWN0IF9VbndpbmRfQ29udGV4dCAqY29udGV4dCwgaW50IGluZGV4KQog ICBzaXplID0gZHdhcmZfcmVnX3NpemVfdGFibGVbaW5kZXhdOwogICBwdHIg PSBjb250ZXh0LT5yZWdbaW5kZXhdOwogCisjaWZkZWYgVU5JUVVFX1VOV0lO RF9DT05URVhUCisgIGdjY19hc3NlcnQgKGNvbnRleHQtPmR3YXJmX3JlZ19z aXplX3RhYmxlID09ICZkd2FyZl9yZWdfc2l6ZV90YWJsZSk7CisgIGlmIChj b250ZXh0LT5yZWdbaW5kZXhdID09ICZjb250ZXh0LT52YWx1ZVtpbmRleF0p CisgICAgcmV0dXJuIGNvbnRleHQtPnZhbHVlW2luZGV4XTsKKyNlbHNlCiAg IGlmIChfVW53aW5kX0lzRXh0ZW5kZWRDb250ZXh0IChjb250ZXh0KSAmJiBj b250ZXh0LT5ieV92YWx1ZVtpbmRleF0pCiAgICAgcmV0dXJuIChfVW53aW5k X1dvcmQpIChfVW53aW5kX0ludGVybmFsX1B0cikgcHRyOworI2VuZGlmCiAK ICAgLyogVGhpcyB3aWxsIHNlZ2ZhdWx0IGlmIHRoZSByZWdpc3RlciBoYXNu J3QgYmVlbiBzYXZlZC4gICovCiAgIGlmIChzaXplID09IHNpemVvZihfVW53 aW5kX1B0cikpCkBAIC0yMDcsMTEgKzIyNSwyMCBAQCBfVW53aW5kX1NldEdS IChzdHJ1Y3QgX1Vud2luZF9Db250ZXh0ICpjb250ZXh0LCBpbnQgaW5kZXgs IF9VbndpbmRfV29yZCB2YWwpCiAgIGdjY19hc3NlcnQgKGluZGV4IDwgKGlu dCkgc2l6ZW9mKGR3YXJmX3JlZ19zaXplX3RhYmxlKSk7CiAgIHNpemUgPSBk d2FyZl9yZWdfc2l6ZV90YWJsZVtpbmRleF07CiAKKyNpZmRlZiBVTklRVUVf VU5XSU5EX0NPTlRFWFQKKyAgZ2NjX2Fzc2VydCAoY29udGV4dC0+ZHdhcmZf cmVnX3NpemVfdGFibGUgPT0gJmR3YXJmX3JlZ19zaXplX3RhYmxlKTsKKyAg aWYgKGNvbnRleHQtPnJlZ1tpbmRleF0gPT0gJmNvbnRleHQtPnZhbHVlW2lu ZGV4XSkKKyAgICB7CisgICAgICBjb250ZXh0LT52YWx1ZVtpbmRleF0gPSB2 YWw7CisgICAgICByZXR1cm47CisgICAgfQorI2Vsc2UKICAgaWYgKF9Vbndp bmRfSXNFeHRlbmRlZENvbnRleHQgKGNvbnRleHQpICYmIGNvbnRleHQtPmJ5 X3ZhbHVlW2luZGV4XSkKICAgICB7CiAgICAgICBjb250ZXh0LT5yZWdbaW5k ZXhdID0gKHZvaWQgKikgKF9VbndpbmRfSW50ZXJuYWxfUHRyKSB2YWw7CiAg ICAgICByZXR1cm47CiAgICAgfQorI2VuZGlmCiAKICAgcHRyID0gY29udGV4 dC0+cmVnW2luZGV4XTsKIApAQCAtMjMwLDggKzI1NywxMCBAQCBzdGF0aWMg aW5saW5lIHZvaWQgKgogX1Vud2luZF9HZXRHUlB0ciAoc3RydWN0IF9Vbndp bmRfQ29udGV4dCAqY29udGV4dCwgaW50IGluZGV4KQogewogICBpbmRleCA9 IERXQVJGX1JFR19UT19VTldJTkRfQ09MVU1OIChpbmRleCk7CisjaWZuZGVm IFVOSVFVRV9VTldJTkRfQ09OVEVYVAogICBpZiAoX1Vud2luZF9Jc0V4dGVu ZGVkQ29udGV4dCAoY29udGV4dCkgJiYgY29udGV4dC0+YnlfdmFsdWVbaW5k ZXhdKQogICAgIHJldHVybiAmY29udGV4dC0+cmVnW2luZGV4XTsKKyNlbmRp ZgogICByZXR1cm4gY29udGV4dC0+cmVnW2luZGV4XTsKIH0KIApAQCAtMjQx LDggKzI3MCwxMCBAQCBzdGF0aWMgaW5saW5lIHZvaWQKIF9VbndpbmRfU2V0 R1JQdHIgKHN0cnVjdCBfVW53aW5kX0NvbnRleHQgKmNvbnRleHQsIGludCBp bmRleCwgdm9pZCAqcCkKIHsKICAgaW5kZXggPSBEV0FSRl9SRUdfVE9fVU5X SU5EX0NPTFVNTiAoaW5kZXgpOworI2lmbmRlZiBVTklRVUVfVU5XSU5EX0NP TlRFWFQKICAgaWYgKF9VbndpbmRfSXNFeHRlbmRlZENvbnRleHQgKGNvbnRl eHQpKQogICAgIGNvbnRleHQtPmJ5X3ZhbHVlW2luZGV4XSA9IDA7CisjZW5k aWYKICAgY29udGV4dC0+cmVnW2luZGV4XSA9IHA7CiB9CiAKQEAgLTI1NCwx MCArMjg1LDE1IEBAIF9VbndpbmRfU2V0R1JWYWx1ZSAoc3RydWN0IF9Vbndp bmRfQ29udGV4dCAqY29udGV4dCwgaW50IGluZGV4LAogewogICBpbmRleCA9 IERXQVJGX1JFR19UT19VTldJTkRfQ09MVU1OIChpbmRleCk7CiAgIGdjY19h c3NlcnQgKGluZGV4IDwgKGludCkgc2l6ZW9mKGR3YXJmX3JlZ19zaXplX3Rh YmxlKSk7CisjaWZkZWYgVU5JUVVFX1VOV0lORF9DT05URVhUCisgIGdjY19h c3NlcnQgKGR3YXJmX3JlZ19zaXplX3RhYmxlW2luZGV4XSA9PSBzaXplb2Yg KF9VbndpbmRfV29yZCkpOworICBjb250ZXh0LT52YWx1ZVtpbmRleF0gPSB2 YWw7CisgIGNvbnRleHQtPnJlZ1tpbmRleF0gPSAmY29udGV4dC0+dmFsdWVb aW5kZXhdOworI2Vsc2UKICAgZ2NjX2Fzc2VydCAoZHdhcmZfcmVnX3NpemVf dGFibGVbaW5kZXhdID09IHNpemVvZiAoX1Vud2luZF9QdHIpKTsKLQogICBj b250ZXh0LT5ieV92YWx1ZVtpbmRleF0gPSAxOwogICBjb250ZXh0LT5yZWdb aW5kZXhdID0gKHZvaWQgKikgKF9VbndpbmRfSW50ZXJuYWxfUHRyKSB2YWw7 CisjZW5kaWYKIH0KIAogLyogUmV0dXJuIG5vbnplcm8gaWYgcmVnaXN0ZXIg SU5ERVggaXMgc3RvcmVkIGJ5IHZhbHVlIHJhdGhlciB0aGFuCkBAIC0yNjcs NyArMzAzLDExIEBAIHN0YXRpYyBpbmxpbmUgaW50CiBfVW53aW5kX0dSQnlW YWx1ZSAoc3RydWN0IF9VbndpbmRfQ29udGV4dCAqY29udGV4dCwgaW50IGlu ZGV4KQogewogICBpbmRleCA9IERXQVJGX1JFR19UT19VTldJTkRfQ09MVU1O IChpbmRleCk7CisjaWZkZWYgVU5JUVVFX1VOV0lORF9DT05URVhUCisgIHJl dHVybiBjb250ZXh0LT5yZWdbaW5kZXhdID09ICZjb250ZXh0LT52YWx1ZVtp bmRleF07CisjZWxzZQogICByZXR1cm4gY29udGV4dC0+YnlfdmFsdWVbaW5k ZXhdOworI2VuZGlmCiB9CiAKIC8qIFJldHJpZXZlIHRoZSByZXR1cm4gYWRk cmVzcyBmb3IgQ09OVEVYVC4gICovCkBAIC0xMjE1LDcgKzEyNTUsMTEgQEAg X19mcmFtZV9zdGF0ZV9mb3IgKHZvaWQgKnBjX3RhcmdldCwgc3RydWN0IGZy YW1lX3N0YXRlICpzdGF0ZV9pbikKICAgaW50IHJlZzsKIAogICBtZW1zZXQg KCZjb250ZXh0LCAwLCBzaXplb2YgKHN0cnVjdCBfVW53aW5kX0NvbnRleHQp KTsKKyNpZmRlZiBVTklRVUVfVU5XSU5EX0NPTlRFWFQKKyAgY29udGV4dC5k d2FyZl9yZWdfc2l6ZV90YWJsZSA9ICZkd2FyZl9yZWdfc2l6ZV90YWJsZTsK KyNlbHNlCiAgIGNvbnRleHQuZmxhZ3MgPSBFWFRFTkRFRF9DT05URVhUX0JJ VDsKKyNlbmRpZgogICBjb250ZXh0LnJhID0gcGNfdGFyZ2V0ICsgMTsKIAog ICBpZiAodXdfZnJhbWVfc3RhdGVfZm9yICgmY29udGV4dCwgJmZzKSAhPSBf VVJDX05PX1JFQVNPTikKQEAgLTE0NTMsNyArMTQ5NywxMSBAQCB1d19pbml0 X2NvbnRleHRfMSAoc3RydWN0IF9VbndpbmRfQ29udGV4dCAqY29udGV4dCwK IAogICBtZW1zZXQgKGNvbnRleHQsIDAsIHNpemVvZiAoc3RydWN0IF9Vbndp bmRfQ29udGV4dCkpOwogICBjb250ZXh0LT5yYSA9IHJhOworI2lmZGVmIFVO SVFVRV9VTldJTkRfQ09OVEVYVAorICBjb250ZXh0LT5kd2FyZl9yZWdfc2l6 ZV90YWJsZSA9ICZkd2FyZl9yZWdfc2l6ZV90YWJsZTsKKyNlbHNlCiAgIGNv bnRleHQtPmZsYWdzID0gRVhURU5ERURfQ09OVEVYVF9CSVQ7CisjZW5kaWYK IAogICBjb2RlID0gdXdfZnJhbWVfc3RhdGVfZm9yIChjb250ZXh0LCAmZnMp OwogICBnY2NfYXNzZXJ0IChjb2RlID09IF9VUkNfTk9fUkVBU09OKTsKQEAg LTE1MzUsOCArMTU4MywxMyBAQCB1d19pbnN0YWxsX2NvbnRleHRfMSAoc3Ry dWN0IF9VbndpbmRfQ29udGV4dCAqY3VycmVudCwKICAgICAgIHZvaWQgKmMg PSBjdXJyZW50LT5yZWdbaV07CiAgICAgICB2b2lkICp0ID0gdGFyZ2V0LT5y ZWdbaV07CiAKKyNpZmRlZiBVTklRVUVfVU5XSU5EX0NPTlRFWFQKKyAgICAg IGdjY19hc3NlcnQgKGN1cnJlbnQtPnJlZ1tpXSAhPSAmY3VycmVudC0+dmFs dWVbaV0pOworICAgICAgaWYgKHRhcmdldC0+cmVnW2ldID09ICZ0YXJnZXQt PnZhbHVlW2ldICYmIGMpCisjZWxzZQogICAgICAgZ2NjX2Fzc2VydCAoY3Vy cmVudC0+YnlfdmFsdWVbaV0gPT0gMCk7CiAgICAgICBpZiAodGFyZ2V0LT5i eV92YWx1ZVtpXSAmJiBjKQorI2VuZGlmCiAJewogCSAgX1Vud2luZF9Xb3Jk IHc7CiAJICBfVW53aW5kX1B0ciBwOwpkaWZmIC0tZ2l0IGEvbGliZ2NjL2Nv bmZpZy9pMzg2L3VuaXF1ZS11bndpbmQuaCBiL2xpYmdjYy9jb25maWcvaTM4 Ni91bmlxdWUtdW53aW5kLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMC4uN2IxMWE5YQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmdjYy9j b25maWcvaTM4Ni91bmlxdWUtdW53aW5kLmgKQEAgLTAsMCArMSwyNiBAQAor LyogU3VwcG9ydCBEV0FSRjIgRUggdW53aW5kIHdpdGggc2luZ2xlIHVucWl1 ZSB1bndpbmQgY29udGV4dC4KKyAgIENvcHlyaWdodCAoQykgMjAxMQorICAg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisKKyAgIFRoaXMgZmls ZSBpcyBwYXJ0IG9mIEdDQy4KKworICAgR0NDIGlzIGZyZWUgc29mdHdhcmU7 IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQKKyAg IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UgYXMgcHVibGlzaGVkCisgICBieSB0aGUgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzLCBvciAoYXQgeW91cgorICAg b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworICAgR0NDIGlzIGRpc3Ry aWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1 dCBXSVRIT1VUCisgICBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkKKyAgIG9yIEZJ VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUg R2VuZXJhbCBQdWJsaWMKKyAgIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4K KworICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYW5kCisgICBhIGNvcHkgb2Yg dGhlIEdDQyBSdW50aW1lIExpYnJhcnkgRXhjZXB0aW9uIGFsb25nIHdpdGgg dGhpcyBwcm9ncmFtOworICAgc2VlIHRoZSBmaWxlcyBDT1BZSU5HMyBhbmQg Q09QWUlORy5SVU5USU1FIHJlc3BlY3RpdmVseS4gIElmIG5vdCwgc2VlCisg ICA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uICAqLworCisvKiBE ZWZpbmUgdGhpcyBtYWNybyBpZiB0aGUgdGFyZ2V0IG9ubHkgc3VwcG9ydHMg c2luZ2xlIHVucWl1ZSB1bndpbmQKKyAgIGNvbnRleHQuICBPbmx5IGVuYWJs ZSBpdCBmb3IgeDMyLiAgKi8KKyNpZiBkZWZpbmVkIF9feDg2XzY0ICYmICFk ZWZpbmVkIF9fTFA2NF9fCisjIGRlZmluZSBVTklRVUVfVU5XSU5EX0NPTlRF WFQKKyNlbmRpZgo= --0016e6509fa223957704a68fd0dc--