From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11826 invoked by alias); 12 Apr 2011 18:51:57 -0000 Received: (qmail 11768 invoked by uid 22791); 12 Apr 2011 18:51:49 -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_CP X-Spam-Check-By: sourceware.org Received: from mail-px0-f176.google.com (HELO mail-px0-f176.google.com) (209.85.212.176) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 12 Apr 2011 18:51:42 +0000 Received: by pxi11 with SMTP id 11so3129044pxi.21 for ; Tue, 12 Apr 2011 11:51:41 -0700 (PDT) MIME-Version: 1.0 Received: by 10.142.62.7 with SMTP id k7mr6454801wfa.219.1302634301034; Tue, 12 Apr 2011 11:51:41 -0700 (PDT) Received: by 10.68.48.201 with HTTP; Tue, 12 Apr 2011 11:51:40 -0700 (PDT) Date: Tue, 12 Apr 2011 18:51:00 -0000 Message-ID: Subject: [Patch, libfortran] Type cleanup From: Janne Blomqvist To: Fortran List , GCC Patches Content-Type: multipart/mixed; boundary=001636e0ae4cc911a504a0bd2e75 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-04/txt/msg00924.txt.bz2 --001636e0ae4cc911a504a0bd2e75 Content-Type: text/plain; charset=UTF-8 Content-length: 1225 Hi, the attached patch does a bit of janitorial type cleanup for the library. It replaces the use of ssize_t with ptrdiff_t or index_type where appropriate; this is entirely for documentation purposes, as on all targets we support ssize_t == ptrdiff_t. ssize_t is a POSIX type used in the IO functions, and refers to the size of an object or -1 for an error (hence there is SSIZE_MAX but not SSIZE_MIN). ptrdiff_t is a C89 type which is the result of subtracting two pointers; hence it's also the "natural" type for array indexes. Regtested on x86_64-unknown-linux-gnu, Ok for trunk? 2011-04-12 Janne Blomqvist * configure.ac: Use AC_TYPE_* to make sure we have (u)intptr_t, check for ptrdiff_t. * libgfortran.h: Remove (u)intptr_t definitions, use ptrdiff_t for index_type, change cshift0* prototypes. * config.h.in: Regenerated. * configure: Regenerated. * intrinsics/cshift0.c (cshift0): Use ptrdiff_t instead of ssize_t. * io/io.h (array_loop_spec): Use index_type instead of ssize_t. * io/list_read.c (nml_parse_qualifier): Likewise. * io/write.c (nml_write_obj): Likewise. * m4/cshift0.c (cshift0_'rtype_code`): Likewise. * generated/cshift0_*.c: Regenerated. -- Janne Blomqvist --001636e0ae4cc911a504a0bd2e75 Content-Type: text/x-patch; charset=US-ASCII; name="actypes.diff" Content-Disposition: attachment; filename="actypes.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gmf6sgft0 Content-length: 13872 ZGlmZiAtLWdpdCBhL2xpYmdmb3J0cmFuL2NvbmZpZ3VyZS5hYyBiL2xpYmdm b3J0cmFuL2NvbmZpZ3VyZS5hYwppbmRleCA1ODhmOTk5Li44MjM1Yzg4IDEw MDY0NAotLS0gYS9saWJnZm9ydHJhbi9jb25maWd1cmUuYWMKKysrIGIvbGli Z2ZvcnRyYW4vY29uZmlndXJlLmFjCkBAIC0yMzYsNyArMjM2LDEyIEBAIEFD X1NVQlNUKGV4dHJhX2xkZmxhZ3NfbGliZ2ZvcnRyYW4pCiBMSUJHRk9SX1dP UktJTkdfR0ZPUlRSQU4KIAogQUNfU1lTX0xBUkdFRklMRQorCisjIFR5cGVz CiBBQ19UWVBFX09GRl9UCitBQ19UWVBFX0lOVFBUUl9UCitBQ19UWVBFX1VJ TlRQVFJfVAorQUNfQ0hFQ0tfVFlQRVMoW3B0cmRpZmZfdF0pCiAKICMgY2hl Y2sgaGVhZGVyIGZpbGVzCiBBQ19TVERDX0hFQURFUlMKQEAgLTI2NCwxMCAr MjY5LDYgQEAgQUNfQ0hFQ0tfRlVOQ1MoY2xvY2tfZ2V0dGltZSBzdHJmdGlt ZSkKICMgQ2hlY2sgZm9yIGdsaWJjIGJhY2t0cmFjZSBmdW5jdGlvbnMKIEFD X0NIRUNLX0ZVTkNTKGJhY2t0cmFjZSBiYWNrdHJhY2Vfc3ltYm9scykKIAot IyBDaGVjayBmb3IgdHlwZXMKLUFDX0NIRUNLX1RZUEVTKFtpbnRwdHJfdF0p Ci1BQ19DSEVDS19UWVBFUyhbdWludHB0cl90XSkKLQogIyBDaGVjayBsaWJj IGZvciBnZXRnaWQsIGdldHBpZCwgZ2V0dWlkCiBBQ19DSEVDS19MSUIoW2Nd LFtnZXRnaWRdLFtBQ19ERUZJTkUoW0hBVkVfR0VUR0lEXSxbMV0sW2xpYmMg aW5jbHVkZXMgZ2V0Z2lkXSldKQogQUNfQ0hFQ0tfTElCKFtjXSxbZ2V0cGlk XSxbQUNfREVGSU5FKFtIQVZFX0dFVFBJRF0sWzFdLFtsaWJjIGluY2x1ZGVz IGdldHBpZF0pXSkKZGlmZiAtLWdpdCBhL2xpYmdmb3J0cmFuL2ludHJpbnNp Y3MvY3NoaWZ0MC5jIGIvbGliZ2ZvcnRyYW4vaW50cmluc2ljcy9jc2hpZnQw LmMKaW5kZXggNjUxY2Q2ZS4uMDBhNTBkNSAxMDA2NDQKLS0tIGEvbGliZ2Zv cnRyYW4vaW50cmluc2ljcy9jc2hpZnQwLmMKKysrIGIvbGliZ2ZvcnRyYW4v aW50cmluc2ljcy9jc2hpZnQwLmMKQEAgLTMwLDcgKzMwLDcgQEAgc2VlIHRo ZSBmaWxlcyBDT1BZSU5HMyBhbmQgQ09QWUlORy5SVU5USU1FIHJlc3BlY3Rp dmVseS4gIElmIG5vdCwgc2VlCiAKIHN0YXRpYyB2b2lkCiBjc2hpZnQwIChn ZmNfYXJyYXlfY2hhciAqIHJldCwgY29uc3QgZ2ZjX2FycmF5X2NoYXIgKiBh cnJheSwKLQkgc3NpemVfdCBzaGlmdCwgaW50IHdoaWNoLCBpbmRleF90eXBl IHNpemUpCisJIHB0cmRpZmZfdCBzaGlmdCwgaW50IHdoaWNoLCBpbmRleF90 eXBlIHNpemUpCiB7CiAgIC8qIHIuKiBpbmRpY2F0ZXMgdGhlIHJldHVybiBh cnJheS4gICovCiAgIGluZGV4X3R5cGUgcnN0cmlkZVtHRkNfTUFYX0RJTUVO U0lPTlNdOwpAQCAtMzI4LDcgKzMyOCw3IEBAIGNzaGlmdDAgKGdmY19hcnJh eV9jaGFyICogcmV0LCBjb25zdCBnZmNfYXJyYXlfY2hhciAqIGFycmF5LAog ICBycHRyID0gcmV0LT5kYXRhOwogICBzcHRyID0gYXJyYXktPmRhdGE7CiAK LSAgc2hpZnQgPSBsZW4gPT0gMCA/IDAgOiBzaGlmdCAlIChzc2l6ZV90KWxl bjsKKyAgc2hpZnQgPSBsZW4gPT0gMCA/IDAgOiBzaGlmdCAlIChwdHJkaWZm X3QpbGVuOwogICBpZiAoc2hpZnQgPCAwKQogICAgIHNoaWZ0ICs9IGxlbjsK IApkaWZmIC0tZ2l0IGEvbGliZ2ZvcnRyYW4vaW8vaW8uaCBiL2xpYmdmb3J0 cmFuL2lvL2lvLmgKaW5kZXggYjQ4NTgyZC4uMzczNTNkNyAxMDA2NDQKLS0t IGEvbGliZ2ZvcnRyYW4vaW8vaW8uaAorKysgYi9saWJnZm9ydHJhbi9pby9p by5oCkBAIC01MywyMiArNTMsMjEgQEAgc3RydWN0IGdmY191bml0OwogI2Rl ZmluZSBpc19jaGFyNF91bml0KGR0cCkgKChkdHApLT51LnAudW5pdF9pc19p bnRlcm5hbCAmJiAoZHRwKS0+Y29tbW9uLnVuaXQpCiAKIC8qIFRoZSBhcnJh eV9sb29wX3NwZWMgY29udGFpbnMgdGhlIHZhcmlhYmxlcyBmb3IgdGhlIGxv b3BzIG92ZXIgaW5kZXggcmFuZ2VzCi0gICB0aGF0IGFyZSBlbmNvdW50ZXJl ZC4gIFNpbmNlIHRoZSB2YXJpYWJsZXMgY2FuIGJlIG5lZ2F0aXZlLCBzc2l6 ZV90Ci0gICBpcyB1c2VkLiAgKi8KKyAgIHRoYXQgYXJlIGVuY291bnRlcmVk LiAgKi8KIAogdHlwZWRlZiBzdHJ1Y3QgYXJyYXlfbG9vcF9zcGVjCiB7CiAg IC8qIEluZGV4IGNvdW50ZXIgZm9yIHRoaXMgZGltZW5zaW9uLiAgKi8KLSAg c3NpemVfdCBpZHg7CisgIGluZGV4X3R5cGUgaWR4OwogCiAgIC8qIFN0YXJ0 IGZvciB0aGUgaW5kZXggY291bnRlci4gICovCi0gIHNzaXplX3Qgc3RhcnQ7 CisgIGluZGV4X3R5cGUgc3RhcnQ7CiAKICAgLyogRW5kIGZvciB0aGUgaW5k ZXggY291bnRlci4gICovCi0gIHNzaXplX3QgZW5kOworICBpbmRleF90eXBl IGVuZDsKIAogICAvKiBTdGVwIGZvciB0aGUgaW5kZXggY291bnRlci4gICov Ci0gIHNzaXplX3Qgc3RlcDsKKyAgaW5kZXhfdHlwZSBzdGVwOwogfQogYXJy YXlfbG9vcF9zcGVjOwogCmRpZmYgLS1naXQgYS9saWJnZm9ydHJhbi9pby9s aXN0X3JlYWQuYyBiL2xpYmdmb3J0cmFuL2lvL2xpc3RfcmVhZC5jCmluZGV4 IDZlMWNiNjkuLjM5NzgzYmYgMTAwNjQ0Ci0tLSBhL2xpYmdmb3J0cmFuL2lv L2xpc3RfcmVhZC5jCisrKyBiL2xpYmdmb3J0cmFuL2lvL2xpc3RfcmVhZC5j CkBAIC0yMTcyLDcgKzIxNzIsNyBAQCBubWxfcGFyc2VfcXVhbGlmaWVyIChz dF9wYXJhbWV0ZXJfZHQgKmR0cCwgZGVzY3JpcHRvcl9kaW1lbnNpb24gKmFk LAogCQl9CiAKIAkgICAgICAvKiBOb3cgcmVhZCB0aGUgaW5kZXguICAqLwot CSAgICAgIGlmIChjb252ZXJ0X2ludGVnZXIgKGR0cCwgc2l6ZW9mKHNzaXpl X3QpLCBuZWcpKQorCSAgICAgIGlmIChjb252ZXJ0X2ludGVnZXIgKGR0cCwg c2l6ZW9mKGluZGV4X3R5cGUpLCBuZWcpKQogCQl7CiAJCSAgaWYgKGlzX2No YXIpCiAJCSAgICBzcHJpbnRmIChwYXJzZV9lcnJfbXNnLCAiQmFkIGludGVn ZXIgc3Vic3RyaW5nIHF1YWxpZmllciIpOwpAQCAtMjE4NywxMSArMjE4Nywx MSBAQCBubWxfcGFyc2VfcXVhbGlmaWVyIChzdF9wYXJhbWV0ZXJfZHQgKmR0 cCwgZGVzY3JpcHRvcl9kaW1lbnNpb24gKmFkLAogCSAgaWYgKCFudWxsX2Zs YWcpCiAJICAgIHsKIAkgICAgICBpZiAoaW5keCA9PSAwKQotCQltZW1jcHkg KCZsc1tkaW1dLnN0YXJ0LCBkdHAtPnUucC52YWx1ZSwgc2l6ZW9mKHNzaXpl X3QpKTsKKwkJbWVtY3B5ICgmbHNbZGltXS5zdGFydCwgZHRwLT51LnAudmFs dWUsIHNpemVvZihpbmRleF90eXBlKSk7CiAJICAgICAgaWYgKGluZHggPT0g MSkKLQkJbWVtY3B5ICgmbHNbZGltXS5lbmQsIGR0cC0+dS5wLnZhbHVlLCBz aXplb2Yoc3NpemVfdCkpOworCQltZW1jcHkgKCZsc1tkaW1dLmVuZCwgZHRw LT51LnAudmFsdWUsIHNpemVvZihpbmRleF90eXBlKSk7CiAJICAgICAgaWYg KGluZHggPT0gMikKLQkJbWVtY3B5ICgmbHNbZGltXS5zdGVwLCBkdHAtPnUu cC52YWx1ZSwgc2l6ZW9mKHNzaXplX3QpKTsKKwkJbWVtY3B5ICgmbHNbZGlt XS5zdGVwLCBkdHAtPnUucC52YWx1ZSwgc2l6ZW9mKGluZGV4X3R5cGUpKTsK IAkgICAgfQogCiAJICAvKiBTaW5nbGV0IG9yIGRvdWJsZXQgaW5kaWNlcy4g ICovCkBAIC0yMTk5LDcgKzIxOTksNyBAQCBubWxfcGFyc2VfcXVhbGlmaWVy IChzdF9wYXJhbWV0ZXJfZHQgKmR0cCwgZGVzY3JpcHRvcl9kaW1lbnNpb24g KmFkLAogCSAgICB7CiAJICAgICAgaWYgKGluZHggPT0gMCkKIAkJewotCQkg IG1lbWNweSAoJmxzW2RpbV0uc3RhcnQsIGR0cC0+dS5wLnZhbHVlLCBzaXpl b2Yoc3NpemVfdCkpOworCQkgIG1lbWNweSAoJmxzW2RpbV0uc3RhcnQsIGR0 cC0+dS5wLnZhbHVlLCBzaXplb2YoaW5kZXhfdHlwZSkpOwogCiAJCSAgLyog IElmIC1zdGQ9Zjk1LzIwMDMgb3IgYW4gYXJyYXkgc2VjdGlvbiBpcyBzcGVj aWZpZWQsCiAJCSAgICAgIGRvIG5vdCBhbGxvdyBleGNlc3MgZGF0YSB0byBi ZSBwcm9jZXNzZWQuICAqLwpAQCAtMjIyOSwxMCArMjIyOSwxMCBAQCBubWxf cGFyc2VfcXVhbGlmaWVyIChzdF9wYXJhbWV0ZXJfZHQgKmR0cCwgZGVzY3Jp cHRvcl9kaW1lbnNpb24gKmFkLAogCX0KIAogICAgICAgLyogQ2hlY2sgdGhl IHZhbHVlcyBvZiB0aGUgdHJpcGxldCBpbmRpY2VzLiAgKi8KLSAgICAgIGlm ICgobHNbZGltXS5zdGFydCA+IChzc2l6ZV90KSBHRkNfRElNRU5TSU9OX1VC T1VORChhZFtkaW1dKSkKLQkgICB8fCAobHNbZGltXS5zdGFydCA8IChzc2l6 ZV90KSBHRkNfRElNRU5TSU9OX0xCT1VORChhZFtkaW1dKSkKLQkgICB8fCAo bHNbZGltXS5lbmQgPiAoc3NpemVfdCkgR0ZDX0RJTUVOU0lPTl9VQk9VTkQo YWRbZGltXSkpCi0JICAgfHwgKGxzW2RpbV0uZW5kIDwgKHNzaXplX3QpIEdG Q19ESU1FTlNJT05fTEJPVU5EKGFkW2RpbV0pKSkKKyAgICAgIGlmICgobHNb ZGltXS5zdGFydCA+IEdGQ19ESU1FTlNJT05fVUJPVU5EKGFkW2RpbV0pKQor CSAgIHx8IChsc1tkaW1dLnN0YXJ0IDwgR0ZDX0RJTUVOU0lPTl9MQk9VTkQo YWRbZGltXSkpCisJICAgfHwgKGxzW2RpbV0uZW5kID4gR0ZDX0RJTUVOU0lP Tl9VQk9VTkQoYWRbZGltXSkpCisJICAgfHwgKGxzW2RpbV0uZW5kIDwgR0ZD X0RJTUVOU0lPTl9MQk9VTkQoYWRbZGltXSkpKQogCXsKIAkgIGlmIChpc19j aGFyKQogCSAgICBzcHJpbnRmIChwYXJzZV9lcnJfbXNnLCAiU3Vic3RyaW5n IG91dCBvZiByYW5nZSIpOwpkaWZmIC0tZ2l0IGEvbGliZ2ZvcnRyYW4vaW8v d3JpdGUuYyBiL2xpYmdmb3J0cmFuL2lvL3dyaXRlLmMKaW5kZXggOTg3YzNj ZC4uNDczM2Q1MSAxMDA2NDQKLS0tIGEvbGliZ2ZvcnRyYW4vaW8vd3JpdGUu YworKysgYi9saWJnZm9ydHJhbi9pby93cml0ZS5jCkBAIC0xOTMyLDcgKzE5 MzIsNyBAQCBvYmpfbG9vcDoKICAgICAgIHsKIAlvYmotPmxzW2RpbV9pXS5p ZHggKz0gbm1sX2NhcnJ5IDsKIAlubWxfY2FycnkgPSAwOwotIAlpZiAob2Jq LT5sc1tkaW1faV0uaWR4ICA+IChzc2l6ZV90KSBHRkNfREVTQ1JJUFRPUl9V Qk9VTkQob2JqLGRpbV9pKSkKKyAJaWYgKG9iai0+bHNbZGltX2ldLmlkeCAg PiBHRkNfREVTQ1JJUFRPUl9VQk9VTkQob2JqLGRpbV9pKSkKIAkgIHsKICAJ ICAgIG9iai0+bHNbZGltX2ldLmlkeCA9IEdGQ19ERVNDUklQVE9SX0xCT1VO RChvYmosZGltX2kpOwogCSAgICBubWxfY2FycnkgPSAxOwpkaWZmIC0tZ2l0 IGEvbGliZ2ZvcnRyYW4vbGliZ2ZvcnRyYW4uaCBiL2xpYmdmb3J0cmFuL2xp Ymdmb3J0cmFuLmgKaW5kZXggYzlkM2YzNy4uN2Q5YWNhMSAxMDA2NDQKLS0t IGEvbGliZ2ZvcnRyYW4vbGliZ2ZvcnRyYW4uaAorKysgYi9saWJnZm9ydHJh bi9saWJnZm9ydHJhbi5oCkBAIC0xMDYsMzggKzEwNiwxMSBAQCB0eXBlZGVm IG9mZl90IGdmY19vZmZzZXQ7CiAjZW5kaWYKIAogCi0vKiBXZSB1c2UgaW50 cHRyX3QgYW5kIHVpbnRwdHJfdCwgd2hpY2ggbWF5IG5vdCBiZSBhbHdheXMg ZGVmaW5lZCBpbgotICAgc3lzdGVtIGhlYWRlcnMuICAqLwotCi0jaWZuZGVm IEhBVkVfSU5UUFRSX1QKLSNpZiBfX1NJWkVPRl9QT0lOVEVSX18gPT0gX19T SVpFT0ZfTE9OR19fCi0jZGVmaW5lIGludHB0cl90IGxvbmcKLSNlbGlmIF9f U0laRU9GX1BPSU5URVJfXyA9PSBfX1NJWkVPRl9MT05HX0xPTkdfXwotI2Rl ZmluZSBpbnRwdHJfdCBsb25nIGxvbmcKLSNlbGlmIF9fU0laRU9GX1BPSU5U RVJfXyA9PSBfX1NJWkVPRl9JTlRfXwotI2RlZmluZSBpbnRwdHJfdCBpbnQK LSNlbGlmIF9fU0laRU9GX1BPSU5URVJfXyA9PSBfX1NJWkVPRl9TSE9SVF9f Ci0jZGVmaW5lIGludHB0cl90IHNob3J0Ci0jZWxzZQotI2Vycm9yICJQb2lu dGVyIHR5cGUgd2l0aCB1bmV4cGVjdGVkIHNpemUiCi0jZW5kaWYKKy8qIE1h a2Ugc3VyZSB3ZSBoYXZlIHB0cmRpZmZfdC4gKi8KKyNpZm5kZWYgSEFWRV9Q VFJESUZGX1QKK3R5cGVkZWYgaW50cHRyX3QgcHRyZGlmZl90OwogI2VuZGlm CiAKLSNpZm5kZWYgSEFWRV9VSU5UUFRSX1QKLSNpZiBfX1NJWkVPRl9QT0lO VEVSX18gPT0gX19TSVpFT0ZfTE9OR19fCi0jZGVmaW5lIHVpbnRwdHJfdCB1 bnNpZ25lZCBsb25nCi0jZWxpZiBfX1NJWkVPRl9QT0lOVEVSX18gPT0gX19T SVpFT0ZfTE9OR19MT05HX18KLSNkZWZpbmUgdWludHB0cl90IHVuc2lnbmVk IGxvbmcgbG9uZwotI2VsaWYgX19TSVpFT0ZfUE9JTlRFUl9fID09IF9fU0la RU9GX0lOVF9fCi0jZGVmaW5lIHVpbnRwdHJfdCB1bnNpZ25lZCBpbnQKLSNl bGlmIF9fU0laRU9GX1BPSU5URVJfXyA9PSBfX1NJWkVPRl9TSE9SVF9fCi0j ZGVmaW5lIHVpbnRwdHJfdCB1bnNpZ25lZCBzaG9ydAotI2Vsc2UKLSNlcnJv ciAiUG9pbnRlciB0eXBlIHdpdGggdW5leHBlY3RlZCBzaXplIgotI2VuZGlm Ci0jZW5kaWYKLQotCiAvKiBPbiBtaW5ndywgd29yayBhcm91bmQgdGhlIGJ1 Z2d5IFdpbmRvd3Mgc25wcmludGYoKSBieSB1c2luZyB0aGUgb25lCiAgICBt aW5ndyBwcm92aWRlcywgX19taW5nd19zbnByaW50ZigpLiAgV2UgYWxzbyBw cm92aWRlIGEgcHJvdG90eXBlIGZvcgogICAgX19taW5nd19zbnByaW50Zigp LCBiZWNhdXNlIHRoZSBtaW5ndyBoZWFkZXJzIGN1cnJlbnRseSBkb24ndCBo YXZlIG9uZS4gICovCkBAIC0yNjksNyArMjQyLDcgQEAgdHlwZWRlZiBHRkNf SU5URUdFUl80IEdGQ19JT19JTlQ7CiAvKiBUaGUgZm9sbG93aW5nIHR3byBk ZWZpbml0aW9ucyBtdXN0IGJlIGNvbnNpc3RlbnQgd2l0aCB0aGUgdHlwZXMg dXNlZAogICAgYnkgdGhlIGNvbXBpbGVyLiAgKi8KIC8qIFRoZSB0eXBlIHVz ZWQgb2YgYXJyYXkgaW5kaWNlcywgYW1vbmdzdCBvdGhlciB0aGluZ3MuICAq LwotdHlwZWRlZiBzc2l6ZV90IGluZGV4X3R5cGU7Cit0eXBlZGVmIHB0cmRp ZmZfdCBpbmRleF90eXBlOwogCiAvKiBUaGUgdHlwZSB1c2VkIGZvciB0aGUg bGVuZ3RocyBvZiBjaGFyYWN0ZXIgdmFyaWFibGVzLiAgKi8KIHR5cGVkZWYg R0ZDX0lOVEVHRVJfNCBnZmNfY2hhcmxlbl90eXBlOwpAQCAtMTMyMyw1MiAr MTI5Niw1MiBAQCBpbnRlcm5hbF9wcm90byhjb3VudF8wKTsKIAogLyogSW50 ZXJuYWwgYXV4aWxpYXJ5IGZ1bmN0aW9ucyBmb3IgY3NoaWZ0ICovCiAKLXZv aWQgY3NoaWZ0MF9pMSAoZ2ZjX2FycmF5X2kxICosIGNvbnN0IGdmY19hcnJh eV9pMSAqLCBzc2l6ZV90LCBpbnQpOwordm9pZCBjc2hpZnQwX2kxIChnZmNf YXJyYXlfaTEgKiwgY29uc3QgZ2ZjX2FycmF5X2kxICosIHB0cmRpZmZfdCwg aW50KTsKIGludGVybmFsX3Byb3RvKGNzaGlmdDBfaTEpOwogCi12b2lkIGNz aGlmdDBfaTIgKGdmY19hcnJheV9pMiAqLCBjb25zdCBnZmNfYXJyYXlfaTIg Kiwgc3NpemVfdCwgaW50KTsKK3ZvaWQgY3NoaWZ0MF9pMiAoZ2ZjX2FycmF5 X2kyICosIGNvbnN0IGdmY19hcnJheV9pMiAqLCBwdHJkaWZmX3QsIGludCk7 CiBpbnRlcm5hbF9wcm90byhjc2hpZnQwX2kyKTsKIAotdm9pZCBjc2hpZnQw X2k0IChnZmNfYXJyYXlfaTQgKiwgY29uc3QgZ2ZjX2FycmF5X2k0ICosIHNz aXplX3QsIGludCk7Cit2b2lkIGNzaGlmdDBfaTQgKGdmY19hcnJheV9pNCAq LCBjb25zdCBnZmNfYXJyYXlfaTQgKiwgcHRyZGlmZl90LCBpbnQpOwogaW50 ZXJuYWxfcHJvdG8oY3NoaWZ0MF9pNCk7CiAKLXZvaWQgY3NoaWZ0MF9pOCAo Z2ZjX2FycmF5X2k4ICosIGNvbnN0IGdmY19hcnJheV9pOCAqLCBzc2l6ZV90 LCBpbnQpOwordm9pZCBjc2hpZnQwX2k4IChnZmNfYXJyYXlfaTggKiwgY29u c3QgZ2ZjX2FycmF5X2k4ICosIHB0cmRpZmZfdCwgaW50KTsKIGludGVybmFs X3Byb3RvKGNzaGlmdDBfaTgpOwogCiAjaWZkZWYgSEFWRV9HRkNfSU5URUdF Ul8xNgotdm9pZCBjc2hpZnQwX2kxNiAoZ2ZjX2FycmF5X2kxNiAqLCBjb25z dCBnZmNfYXJyYXlfaTE2ICosIHNzaXplX3QsIGludCk7Cit2b2lkIGNzaGlm dDBfaTE2IChnZmNfYXJyYXlfaTE2ICosIGNvbnN0IGdmY19hcnJheV9pMTYg KiwgcHRyZGlmZl90LCBpbnQpOwogaW50ZXJuYWxfcHJvdG8oY3NoaWZ0MF9p MTYpOwogI2VuZGlmCiAKLXZvaWQgY3NoaWZ0MF9yNCAoZ2ZjX2FycmF5X3I0 ICosIGNvbnN0IGdmY19hcnJheV9yNCAqLCBzc2l6ZV90LCBpbnQpOwordm9p ZCBjc2hpZnQwX3I0IChnZmNfYXJyYXlfcjQgKiwgY29uc3QgZ2ZjX2FycmF5 X3I0ICosIHB0cmRpZmZfdCwgaW50KTsKIGludGVybmFsX3Byb3RvKGNzaGlm dDBfcjQpOwogCi12b2lkIGNzaGlmdDBfcjggKGdmY19hcnJheV9yOCAqLCBj b25zdCBnZmNfYXJyYXlfcjggKiwgc3NpemVfdCwgaW50KTsKK3ZvaWQgY3No aWZ0MF9yOCAoZ2ZjX2FycmF5X3I4ICosIGNvbnN0IGdmY19hcnJheV9yOCAq LCBwdHJkaWZmX3QsIGludCk7CiBpbnRlcm5hbF9wcm90byhjc2hpZnQwX3I4 KTsKIAogI2lmZGVmIEhBVkVfR0ZDX1JFQUxfMTAKLXZvaWQgY3NoaWZ0MF9y MTAgKGdmY19hcnJheV9yMTAgKiwgY29uc3QgZ2ZjX2FycmF5X3IxMCAqLCBz c2l6ZV90LCBpbnQpOwordm9pZCBjc2hpZnQwX3IxMCAoZ2ZjX2FycmF5X3Ix MCAqLCBjb25zdCBnZmNfYXJyYXlfcjEwICosIHB0cmRpZmZfdCwgaW50KTsK IGludGVybmFsX3Byb3RvKGNzaGlmdDBfcjEwKTsKICNlbmRpZgogCiAjaWZk ZWYgSEFWRV9HRkNfUkVBTF8xNgotdm9pZCBjc2hpZnQwX3IxNiAoZ2ZjX2Fy cmF5X3IxNiAqLCBjb25zdCBnZmNfYXJyYXlfcjE2ICosIHNzaXplX3QsIGlu dCk7Cit2b2lkIGNzaGlmdDBfcjE2IChnZmNfYXJyYXlfcjE2ICosIGNvbnN0 IGdmY19hcnJheV9yMTYgKiwgcHRyZGlmZl90LCBpbnQpOwogaW50ZXJuYWxf cHJvdG8oY3NoaWZ0MF9yMTYpOwogI2VuZGlmCiAKLXZvaWQgY3NoaWZ0MF9j NCAoZ2ZjX2FycmF5X2M0ICosIGNvbnN0IGdmY19hcnJheV9jNCAqLCBzc2l6 ZV90LCBpbnQpOwordm9pZCBjc2hpZnQwX2M0IChnZmNfYXJyYXlfYzQgKiwg Y29uc3QgZ2ZjX2FycmF5X2M0ICosIHB0cmRpZmZfdCwgaW50KTsKIGludGVy bmFsX3Byb3RvKGNzaGlmdDBfYzQpOwogCi12b2lkIGNzaGlmdDBfYzggKGdm Y19hcnJheV9jOCAqLCBjb25zdCBnZmNfYXJyYXlfYzggKiwgc3NpemVfdCwg aW50KTsKK3ZvaWQgY3NoaWZ0MF9jOCAoZ2ZjX2FycmF5X2M4ICosIGNvbnN0 IGdmY19hcnJheV9jOCAqLCBwdHJkaWZmX3QsIGludCk7CiBpbnRlcm5hbF9w cm90byhjc2hpZnQwX2M4KTsKIAogI2lmZGVmIEhBVkVfR0ZDX0NPTVBMRVhf MTAKLXZvaWQgY3NoaWZ0MF9jMTAgKGdmY19hcnJheV9jMTAgKiwgY29uc3Qg Z2ZjX2FycmF5X2MxMCAqLCBzc2l6ZV90LCBpbnQpOwordm9pZCBjc2hpZnQw X2MxMCAoZ2ZjX2FycmF5X2MxMCAqLCBjb25zdCBnZmNfYXJyYXlfYzEwICos IHB0cmRpZmZfdCwgaW50KTsKIGludGVybmFsX3Byb3RvKGNzaGlmdDBfYzEw KTsKICNlbmRpZgogCiAjaWZkZWYgSEFWRV9HRkNfQ09NUExFWF8xNgotdm9p ZCBjc2hpZnQwX2MxNiAoZ2ZjX2FycmF5X2MxNiAqLCBjb25zdCBnZmNfYXJy YXlfYzE2ICosIHNzaXplX3QsIGludCk7Cit2b2lkIGNzaGlmdDBfYzE2IChn ZmNfYXJyYXlfYzE2ICosIGNvbnN0IGdmY19hcnJheV9jMTYgKiwgcHRyZGlm Zl90LCBpbnQpOwogaW50ZXJuYWxfcHJvdG8oY3NoaWZ0MF9jMTYpOwogI2Vu ZGlmCiAKZGlmZiAtLWdpdCBhL2xpYmdmb3J0cmFuL200L2NzaGlmdDAubTQg Yi9saWJnZm9ydHJhbi9tNC9jc2hpZnQwLm00CmluZGV4IDBjNWUwMTUuLjVj MGQyMmUgMTAwNjQ0Ci0tLSBhL2xpYmdmb3J0cmFuL200L2NzaGlmdDAubTQK KysrIGIvbGliZ2ZvcnRyYW4vbTQvY3NoaWZ0MC5tNApAQCAtMzMsNyArMzMs NyBAQCBpbmNsdWRlKGlwYXJtLm00KWRubAogYCNpZiBkZWZpbmVkIChIQVZF XydydHlwZV9uYW1lYCkKIAogdm9pZAotY3NoaWZ0MF8ncnR5cGVfY29kZWAg KCdydHlwZWAgKnJldCwgY29uc3QgJ3J0eXBlYCAqYXJyYXksIHNzaXplX3Qg c2hpZnQsCitjc2hpZnQwXydydHlwZV9jb2RlYCAoJ3J0eXBlYCAqcmV0LCBj b25zdCAncnR5cGVgICphcnJheSwgcHRyZGlmZl90IHNoaWZ0LAogCQkgICAg IGludCB3aGljaCkKIHsKICAgLyogci4qIGluZGljYXRlcyB0aGUgcmV0dXJu IGFycmF5LiAgKi8KQEAgLTk4LDcgKzk4LDcgQEAgY3NoaWZ0MF8ncnR5cGVf Y29kZWAgKCdydHlwZWAgKnJldCwgY29uc3QgJ3J0eXBlYCAqYXJyYXksIHNz aXplX3Qgc2hpZnQsCiAgIHJwdHIgPSByZXQtPmRhdGE7CiAgIHNwdHIgPSBh cnJheS0+ZGF0YTsKIAotICBzaGlmdCA9IGxlbiA9PSAwID8gMCA6IHNoaWZ0 ICUgKHNzaXplX3QpbGVuOworICBzaGlmdCA9IGxlbiA9PSAwID8gMCA6IHNo aWZ0ICUgKHB0cmRpZmZfdClsZW47CiAgIGlmIChzaGlmdCA8IDApCiAgICAg c2hpZnQgKz0gbGVuOwogCg== --001636e0ae4cc911a504a0bd2e75--