From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kim Phillips Subject: [PATCH 2/3] powerpc: make copyuser_power7.S 64-byte cacheline friendly Date: Tue, 24 Mar 2015 17:44:26 -0500 Message-ID: <20150324174426.acde5e836bcc8e71ee93055d@freescale.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: linuxppc-dev-bounces+glppe-linuxppc-embedded-2=m.gmane.org@lists.ozlabs.org Sender: "Linuxppc-dev" To: Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman , Scott Wood , Joel Stanley , Anton Blanchard , Paul Bolle , Jiri Kosina , Ulrich Weigand , Alexander Graf , Stewart Smith , Kyle Moffett Cc: linux-api@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, Shuah Khan , linux-kernel@vger.kernel.org List-Id: linux-api@vger.kernel.org VGhlIGlubmVybW9zdCBjb3B5bG9vcHMgd2VyZSBvcHRpbWl6ZWQgZm9yIFBPV0VSNydzIDEyOC1i eXRlIGNhY2hlbGluZS4KVGhpcyBwYXRjaCBhZGRzIG9wdGltaXphdGlvbiBmb3IgdGhlIGU2NTAw LCB3aGljaCBoYXMgYSA2NC1ieXRlCmNhY2hlbGluZS4KCldlIGJhc2ljYWxseSBkbyB0aGlzIGJ5 IHN0cmlwcGluZyBsb29wIGJvZGllcyB1c2luZyBMMV9DQUNIRV9CWVRFUwppZmRlZmVycnksIHJl cGxhY2UgMTI4IHdpdGggTDFfQ0FDSEVfQllURVMsIGFuZCA3J3Mgd2l0aCBMMV9DQUNIRV9TSElG VHMuCgpXZSBhbHNvIGFkZCBhbiBlNjUwMCBjb3B5dXNlciB0byBjb3B5bG9vcHMgdGVzdHMsIHdo aWNoIHJlcXVpcmVzIHdlIGNvcHkKYXNtL2NhY2hlLmggaW50byBjb3B5bG9vcHMsIGp1c3QgdG8g c2F0aXNmeSB0aGUgI2luY2x1ZGU6ICBXZSBkZWZpbmUKdGhlIGRlZmluZSBzeW1ib2xzIG1hbnVh bGx5IGluIHRoZSB0ZXN0aW5nIG1ha2VmaWxlLgoKSW5jbHVkZXMgYSBtaW5vciBzcGVsbGluZyBm aXg6IGRlc2luYXRpb24tPmRlc3RpbmF0aW9uLgoKU2lnbmVkLW9mZi1ieTogS2ltIFBoaWxsaXBz IDxraW0ucGhpbGxpcHNAZnJlZXNjYWxlLmNvbT4KQ2M6IFNodWFoIEtoYW4gPHNodWFoa2hAb3Nn LnNhbXN1bmcuY29tPiBbU0VMRlRFU1RTXQpDYzogbGludXgtYXBpQHZnZXIua2VybmVsLm9yZyBb U0VMRlRFU1RTXQotLS0KIGFyY2gvcG93ZXJwYy9saWIvY29weXVzZXJfcG93ZXI3LlMgICAgICAg ICAgICAgICAgIHwgNzQgKysrKysrKysrKysrKy0tLS0tLQogdG9vbHMvdGVzdGluZy9zZWxmdGVz dHMvcG93ZXJwYy9jb3B5bG9vcHMvTWFrZWZpbGUgfCAxMSArKy0KIC4uLi9zZWxmdGVzdHMvcG93 ZXJwYy9jb3B5bG9vcHMvYXNtL2NhY2hlLmggICAgICAgIHwgODQgKysrKysrKysrKysrKysrKysr KysrKwogMyBmaWxlcyBjaGFuZ2VkLCAxNDQgaW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0p CiBjcmVhdGUgbW9kZSAxMDA2NDQgdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvcG93ZXJwYy9jb3B5 bG9vcHMvYXNtL2NhY2hlLmgKCmRpZmYgLS1naXQgYS9hcmNoL3Bvd2VycGMvbGliL2NvcHl1c2Vy X3Bvd2VyNy5TIGIvYXJjaC9wb3dlcnBjL2xpYi9jb3B5dXNlcl9wb3dlcjcuUwppbmRleCA5MmVl ODQwLi4yZDIyZTU4IDEwMDY0NAotLS0gYS9hcmNoL3Bvd2VycGMvbGliL2NvcHl1c2VyX3Bvd2Vy Ny5TCisrKyBiL2FyY2gvcG93ZXJwYy9saWIvY29weXVzZXJfcG93ZXI3LlMKQEAgLTE4LDYgKzE4 LDcgQEAKICAqIEF1dGhvcjogQW50b24gQmxhbmNoYXJkIDxhbnRvbkBhdS5pYm0uY29tPgogICov CiAjaW5jbHVkZSA8YXNtL3BwY19hc20uaD4KKyNpbmNsdWRlIDxhc20vY2FjaGUuaD4KIAogI2lm ZGVmIF9fQklHX0VORElBTl9fCiAjZGVmaW5lIExWUyhWUlQsUkEsUkIpCQlsdnNsCVZSVCxSQSxS QgpAQCAtMTM3LDcgKzEzOCw3IEBAIGVycjE7CXN0dwlyMCwwKHIzKQogCWFkZGkJcjMscjMsNAog CiAzOglzdWIJcjUscjUscjYKLQljbXBsZGkJcjUsMTI4CisJY21wbGRpCXI1LEwxX0NBQ0hFX0JZ VEVTCiAJYmx0CTVmCiAKIAltZmxyCXIwCkBAIC0xNTMsMTAgKzE1NCwxMCBAQCBlcnIxOwlzdHcJ cjAsMChyMykKIAlzdGQJcjIyLFNUS19SRUcoUjIyKShyMSkKIAlzdGQJcjAsU1RBQ0tGUkFNRVNJ WkUrMTYocjEpCiAKLQlzcmRpCXI2LHI1LDcKKwlzcmRpCXI2LHI1LEwxX0NBQ0hFX1NISUZUCiAJ bXRjdHIJcjYKIAotCS8qIE5vdyBkbyBjYWNoZWxpbmUgKDEyOEIpIHNpemVkIGxvYWRzIGFuZCBz dG9yZXMuICovCisJLyogTm93IGRvIGNhY2hlbGluZSBzaXplZCBsb2FkcyBhbmQgc3RvcmVzLiAq LwogCS5hbGlnbgk1CiA0OgogZXJyMjsJbGQJcjAsMChyNCkKQEAgLTE2Nyw2ICsxNjgsNyBAQCBl cnIyOwlsZAlyOSwzMihyNCkKIGVycjI7CWxkCXIxMCw0MChyNCkKIGVycjI7CWxkCXIxMSw0OChy NCkKIGVycjI7CWxkCXIxMiw1NihyNCkKKyNpZiBMMV9DQUNIRV9CWVRFUyA+PSAxMjgKIGVycjI7 CWxkCXIxNCw2NChyNCkKIGVycjI7CWxkCXIxNSw3MihyNCkKIGVycjI7CWxkCXIxNiw4MChyNCkK QEAgLTE3NSw3ICsxNzcsOCBAQCBlcnIyOwlsZAlyMTgsOTYocjQpCiBlcnIyOwlsZAlyMTksMTA0 KHI0KQogZXJyMjsJbGQJcjIwLDExMihyNCkKIGVycjI7CWxkCXIyMSwxMjAocjQpCi0JYWRkaQly NCxyNCwxMjgKKyNlbmRpZgorCWFkZGkJcjQscjQsTDFfQ0FDSEVfQllURVMKIGVycjI7CXN0ZAly MCwwKHIzKQogZXJyMjsJc3RkCXI2LDgocjMpCiBlcnIyOwlzdGQJcjcsMTYocjMpCkBAIC0xODQs NiArMTg3LDcgQEAgZXJyMjsJc3RkCXI5LDMyKHIzKQogZXJyMjsJc3RkCXIxMCw0MChyMykKIGVy cjI7CXN0ZAlyMTEsNDgocjMpCiBlcnIyOwlzdGQJcjEyLDU2KHIzKQorI2lmIEwxX0NBQ0hFX0JZ VEVTID49IDEyOAogZXJyMjsJc3RkCXIxNCw2NChyMykKIGVycjI7CXN0ZAlyMTUsNzIocjMpCiBl cnIyOwlzdGQJcjE2LDgwKHIzKQpAQCAtMTkyLDEwICsxOTYsMTEgQEAgZXJyMjsJc3RkCXIxOCw5 NihyMykKIGVycjI7CXN0ZAlyMTksMTA0KHIzKQogZXJyMjsJc3RkCXIyMCwxMTIocjMpCiBlcnIy OwlzdGQJcjIxLDEyMChyMykKLQlhZGRpCXIzLHIzLDEyOAorI2VuZGlmCisJYWRkaQlyMyxyMyxM MV9DQUNIRV9CWVRFUwogCWJkbnoJNGIKIAotCWNscmxkaQlyNSxyNSwoNjQtNykKKwljbHJsZGkJ cjUscjUsKDY0LUwxX0NBQ0hFX1NISUZUKQogCiAJbGQJcjE0LFNUS19SRUcoUjE0KShyMSkKIAls ZAlyMTUsU1RLX1JFRyhSMTUpKHIxKQpAQCAtMjA4LDEwICsyMTMsMTEgQEAgZXJyMjsJc3RkCXIy MSwxMjAocjMpCiAJbGQJcjIyLFNUS19SRUcoUjIyKShyMSkKIAlhZGRpCXIxLHIxLFNUQUNLRlJB TUVTSVpFCiAKLQkvKiBVcCB0byAxMjdCIHRvIGdvICovCisJLyogVXAgdG8gTDFfQ0FDSEVfQllU RVMgLSAxIHRvIGdvICovCiA1OglzcmRpCXI2LHI1LDQKIAltdG9jcmYJMHgwMSxyNgogCisjaWYg TDFfQ0FDSEVfQllURVMgPj0gMTI4CiA2OgliZgljcjcqNCsxLDdmCiBlcnIxOwlsZAlyMCwwKHI0 KQogZXJyMTsJbGQJcjYsOChyNCkKQEAgLTIzMSw2ICsyMzcsNyBAQCBlcnIxOwlzdGQJcjEwLDQw KHIzKQogZXJyMTsJc3RkCXIxMSw0OChyMykKIGVycjE7CXN0ZAlyMTIsNTYocjMpCiAJYWRkaQly MyxyMyw2NAorI2VuZGlmCiAKIAkvKiBVcCB0byA2M0IgdG8gZ28gKi8KIDc6CWJmCWNyNyo0KzIs OGYKQEAgLTM3NywxMSArMzg0LDExIEBAIGVycjM7CXN0ZAlyMCwwKHIzKQogCiA0OglzdWIJcjUs cjUscjYKIAotCS8qIEdldCB0aGUgZGVzaW5hdGlvbiAxMjhCIGFsaWduZWQgKi8KKwkvKiBHZXQg dGhlIGRlc3RpbmF0aW9uIEwxX0NBQ0hFX0JZVEVTIGFsaWduZWQgKi8KIAluZWcJcjYscjMKIAlz cmRpCXI3LHI2LDQKIAltdG9jcmYJMHgwMSxyNwotCWNscmxkaQlyNixyNiwoNjQtNykKKwljbHJs ZGkJcjYscjYsKDY0LUwxX0NBQ0hFX1NISUZUKQogCiAJbGkJcjksMTYKIAlsaQlyMTAsMzIKQEAg LTQwMSw3ICs0MDgsOSBAQCBlcnIzOwlzdHZ4CXZyMSxyMCxyMwogZXJyMzsJc3R2eAl2cjAscjMs cjkKIAlhZGRpCXIzLHIzLDMyCiAKLTY6CWJmCWNyNyo0KzEsN2YKKzY6CisjaWYgTDFfQ0FDSEVf QllURVMgPj0gMTI4CisJYmYJY3I3KjQrMSw3ZgogZXJyMzsJbHZ4CXZyMyxyMCxyNAogZXJyMzsJ bHZ4CXZyMixyNCxyOQogZXJyMzsJbHZ4CXZyMSxyNCxyMTAKQEAgLTQxMiw5ICs0MjEsMTAgQEAg ZXJyMzsJc3R2eAl2cjIscjMscjkKIGVycjM7CXN0dngJdnIxLHIzLHIxMAogZXJyMzsJc3R2eAl2 cjAscjMscjExCiAJYWRkaQlyMyxyMyw2NAorI2VuZGlmCiAKIDc6CXN1YglyNSxyNSxyNgotCXNy ZGkJcjYscjUsNworCXNyZGkJcjYscjUsTDFfQ0FDSEVfU0hJRlQKIAogCXN0ZAlyMTQsU1RLX1JF RyhSMTQpKHIxKQogCXN0ZAlyMTUsU1RLX1JFRyhSMTUpKHIxKQpAQCAtNDM3LDMxICs0NDcsMzYg QEAgZXJyNDsJbHZ4CXZyNyxyMCxyNAogZXJyNDsJbHZ4CXZyNixyNCxyOQogZXJyNDsJbHZ4CXZy NSxyNCxyMTAKIGVycjQ7CWx2eAl2cjQscjQscjExCisjaWYgTDFfQ0FDSEVfQllURVMgPj0gMTI4 CiBlcnI0OwlsdngJdnIzLHI0LHIxMgogZXJyNDsJbHZ4CXZyMixyNCxyMTQKIGVycjQ7CWx2eAl2 cjEscjQscjE1CiBlcnI0OwlsdngJdnIwLHI0LHIxNgotCWFkZGkJcjQscjQsMTI4CisjZW5kaWYK KwlhZGRpCXI0LHI0LEwxX0NBQ0hFX0JZVEVTCiBlcnI0OwlzdHZ4CXZyNyxyMCxyMwogZXJyNDsJ c3R2eAl2cjYscjMscjkKIGVycjQ7CXN0dngJdnI1LHIzLHIxMAogZXJyNDsJc3R2eAl2cjQscjMs cjExCisjaWYgTDFfQ0FDSEVfQllURVMgPj0gMTI4CiBlcnI0OwlzdHZ4CXZyMyxyMyxyMTIKIGVy cjQ7CXN0dngJdnIyLHIzLHIxNAogZXJyNDsJc3R2eAl2cjEscjMscjE1CiBlcnI0OwlzdHZ4CXZy MCxyMyxyMTYKLQlhZGRpCXIzLHIzLDEyOAorI2VuZGlmCisJYWRkaQlyMyxyMyxMMV9DQUNIRV9C WVRFUwogCWJkbnoJOGIKIAogCWxkCXIxNCxTVEtfUkVHKFIxNCkocjEpCiAJbGQJcjE1LFNUS19S RUcoUjE1KShyMSkKIAlsZAlyMTYsU1RLX1JFRyhSMTYpKHIxKQogCi0JLyogVXAgdG8gMTI3QiB0 byBnbyAqLwotCWNscmxkaQlyNSxyNSwoNjQtNykKKwkvKiBVcCB0byBMMV9DQUNIRV9CWVRFUyAt IDEgdG8gZ28gKi8KKwljbHJsZGkJcjUscjUsKDY0LUwxX0NBQ0hFX1NISUZUKQogCXNyZGkJcjYs cjUsNAogCW10b2NyZgkweDAxLHI2CiAKKyNpZiBMMV9DQUNIRV9CWVRFUyA+PSAxMjgKIAliZglj cjcqNCsxLDlmCiBlcnIzOwlsdngJdnIzLHIwLHI0CiBlcnIzOwlsdngJdnIyLHI0LHI5CkBAIC00 NzMsNiArNDg4LDcgQEAgZXJyMzsJc3R2eAl2cjIscjMscjkKIGVycjM7CXN0dngJdnIxLHIzLHIx MAogZXJyMzsJc3R2eAl2cjAscjMscjExCiAJYWRkaQlyMyxyMyw2NAorI2VuZGlmCiAKIDk6CWJm CWNyNyo0KzIsMTBmCiBlcnIzOwlsdngJdnIxLHIwLHI0CkBAIC01NTAsMTEgKzU2NiwxMSBAQCBl cnIzOwlzdHcJcjcsNChyMykKIAogNDoJc3ViCXI1LHI1LHI2CiAKLQkvKiBHZXQgdGhlIGRlc2lu YXRpb24gMTI4QiBhbGlnbmVkICovCisJLyogR2V0IHRoZSBkZXN0aW5hdGlvbiBMMV9DQUNIRV9C WVRFUyBhbGlnbmVkICovCiAJbmVnCXI2LHIzCiAJc3JkaQlyNyxyNiw0CiAJbXRvY3JmCTB4MDEs cjcKLQljbHJsZGkJcjYscjYsKDY0LTcpCisJY2xybGRpCXI2LHI2LCg2NC1MMV9DQUNIRV9TSElG VCkKIAogCWxpCXI5LDE2CiAJbGkJcjEwLDMyCkBAIC01ODIsNyArNTk4LDkgQEAgZXJyMzsJc3R2 eAl2cjgscjAscjMKIGVycjM7CXN0dngJdnI5LHIzLHI5CiAJYWRkaQlyMyxyMywzMgogCi02Ogli ZgljcjcqNCsxLDdmCis2OgorI2lmIEwxX0NBQ0hFX0JZVEVTID49IDEyOAorCWJmCWNyNyo0KzEs N2YKIGVycjM7CWx2eAl2cjMscjAscjQKIAlWUEVSTSh2cjgsdnIwLHZyMyx2cjE2KQogZXJyMzsJ bHZ4CXZyMixyNCxyOQpAQCAtNTk3LDkgKzYxNSwxMCBAQCBlcnIzOwlzdHZ4CXZyOSxyMyxyOQog ZXJyMzsJc3R2eAl2cjEwLHIzLHIxMAogZXJyMzsJc3R2eAl2cjExLHIzLHIxMQogCWFkZGkJcjMs cjMsNjQKKyNlbmRpZgogCiA3OglzdWIJcjUscjUscjYKLQlzcmRpCXI2LHI1LDcKKwlzcmRpCXI2 LHI1LEwxX0NBQ0hFX1NISUZUCiAKIAlzdGQJcjE0LFNUS19SRUcoUjE0KShyMSkKIAlzdGQJcjE1 LFNUS19SRUcoUjE1KShyMSkKQEAgLTYyNiw2ICs2NDUsMTAgQEAgZXJyNDsJbHZ4CXZyNSxyNCxy MTAKIAlWUEVSTSh2cjEwLHZyNix2cjUsdnIxNikKIGVycjQ7CWx2eAl2cjQscjQscjExCiAJVlBF Uk0odnIxMSx2cjUsdnI0LHZyMTYpCisjaWYgTDFfQ0FDSEVfQllURVMgPT0gNjQKK2VycjQ7CWx2 eAl2cjAscjQscjExCisJVlBFUk0odnIxMSx2cjUsdnIwLHZyMTYpCisjZWxzZQogZXJyNDsJbHZ4 CXZyMyxyNCxyMTIKIAlWUEVSTSh2cjEyLHZyNCx2cjMsdnIxNikKIGVycjQ7CWx2eAl2cjIscjQs cjE0CkBAIC02MzQsMjcgKzY1NywzMSBAQCBlcnI0OwlsdngJdnIxLHI0LHIxNQogCVZQRVJNKHZy MTQsdnIyLHZyMSx2cjE2KQogZXJyNDsJbHZ4CXZyMCxyNCxyMTYKIAlWUEVSTSh2cjE1LHZyMSx2 cjAsdnIxNikKLQlhZGRpCXI0LHI0LDEyOAorI2VuZGlmCisJYWRkaQlyNCxyNCxMMV9DQUNIRV9C WVRFUwogZXJyNDsJc3R2eAl2cjgscjAscjMKIGVycjQ7CXN0dngJdnI5LHIzLHI5CiBlcnI0Owlz dHZ4CXZyMTAscjMscjEwCiBlcnI0OwlzdHZ4CXZyMTEscjMscjExCisjaWYgTDFfQ0FDSEVfQllU RVMgPj0gMTI4CiBlcnI0OwlzdHZ4CXZyMTIscjMscjEyCiBlcnI0OwlzdHZ4CXZyMTMscjMscjE0 CiBlcnI0OwlzdHZ4CXZyMTQscjMscjE1CiBlcnI0OwlzdHZ4CXZyMTUscjMscjE2Ci0JYWRkaQly MyxyMywxMjgKKyNlbmRpZgorCWFkZGkJcjMscjMsTDFfQ0FDSEVfQllURVMKIAliZG56CThiCiAK IAlsZAlyMTQsU1RLX1JFRyhSMTQpKHIxKQogCWxkCXIxNSxTVEtfUkVHKFIxNSkocjEpCiAJbGQJ cjE2LFNUS19SRUcoUjE2KShyMSkKIAotCS8qIFVwIHRvIDEyN0IgdG8gZ28gKi8KLQljbHJsZGkJ cjUscjUsKDY0LTcpCisJLyogVXAgdG8gTDFfQ0FDSEVfQllURVMgLSAxIHRvIGdvICovCisJY2xy bGRpCXI1LHI1LCg2NC1MMV9DQUNIRV9TSElGVCkKIAlzcmRpCXI2LHI1LDQKIAltdG9jcmYJMHgw MSxyNgogCisjaWYgTDFfQ0FDSEVfQllURVMgPj0gMTI4CiAJYmYJY3I3KjQrMSw5ZgogZXJyMzsJ bHZ4CXZyMyxyMCxyNAogCVZQRVJNKHZyOCx2cjAsdnIzLHZyMTYpCkBAIC02NzAsNiArNjk3LDcg QEAgZXJyMzsJc3R2eAl2cjkscjMscjkKIGVycjM7CXN0dngJdnIxMCxyMyxyMTAKIGVycjM7CXN0 dngJdnIxMSxyMyxyMTEKIAlhZGRpCXIzLHIzLDY0CisjZW5kaWYKIAogOToJYmYJY3I3KjQrMiwx MGYKIGVycjM7CWx2eAl2cjEscjAscjQKZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRl c3RzL3Bvd2VycGMvY29weWxvb3BzL01ha2VmaWxlIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMv cG93ZXJwYy9jb3B5bG9vcHMvTWFrZWZpbGUKaW5kZXggNmYyZDNiZS4uZWI5MTJjNSAxMDA2NDQK LS0tIGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvcG93ZXJwYy9jb3B5bG9vcHMvTWFrZWZpbGUK KysrIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvcG93ZXJwYy9jb3B5bG9vcHMvTWFrZWZpbGUK QEAgLTYsMTggKzYsMjUgQEAgQ0ZMQUdTICs9IC1EIFNFTEZURVNUCiAjIFVzZSBvdXIgQ0ZMQUdT IGZvciB0aGUgaW1wbGljaXQgLlMgcnVsZQogQVNGTEFHUyA9ICQoQ0ZMQUdTKQogCi1QUk9HUyA6 PSBjb3B5dXNlcl82NCBjb3B5dXNlcl9wb3dlcjcgbWVtY3B5XzY0IG1lbWNweV9wb3dlcjcKK1BS T0dTIDo9IGNvcHl1c2VyXzY0IGNvcHl1c2VyX3Bvd2VyNyBjb3B5dXNlcl9lNjUwMCBtZW1jcHlf NjQgbWVtY3B5X3Bvd2VyNwogRVhUUkFfU09VUkNFUyA6PSB2YWxpZGF0ZS5jIC4uL2hhcm5lc3Mu YwogCiBhbGw6ICQoUFJPR1MpCiAKIGNvcHl1c2VyXzY0OiAgICAgQ1BQRkxBR1MgKz0gLUQgQ09Q WV9MT09QPXRlc3RfX19jb3B5X3RvZnJvbV91c2VyX2Jhc2UKLWNvcHl1c2VyX3Bvd2VyNzogQ1BQ RkxBR1MgKz0gLUQgQ09QWV9MT09QPXRlc3RfX19jb3B5X3RvZnJvbV91c2VyX3Bvd2VyNworY29w eXVzZXJfcG93ZXI3OiBDUFBGTEFHUyArPSAtRCBDT1BZX0xPT1A9dGVzdF9fX2NvcHlfdG9mcm9t X3VzZXJfcG93ZXI3IFwKKwkJCSAgICAgLUQgQ09ORklHX1BQQ19CT09LM1NfNjQgLUQgTDFfQ0FD SEVfU0hJRlQ9NyBcCisJCQkgICAgIC1EIEwxX0NBQ0hFX0JZVEVTPTEyOAogbWVtY3B5XzY0OiAg ICAgICBDUFBGTEFHUyArPSAtRCBDT1BZX0xPT1A9dGVzdF9tZW1jcHkKIG1lbWNweV9wb3dlcjc6 ICAgQ1BQRkxBR1MgKz0gLUQgQ09QWV9MT09QPXRlc3RfbWVtY3B5X3Bvd2VyNwogCiAkKFBST0dT KTogJChFWFRSQV9TT1VSQ0VTKQogCitjb3B5dXNlcl9lNjUwMDogY29weXVzZXJfcG93ZXI3LlMK KwkkKENDKSAkKENGTEFHUykgLUQgQ09QWV9MT09QPXRlc3RfX19jb3B5X3RvZnJvbV91c2VyX3Bv d2VyNyBcCisJCS1EIENPTkZJR19QUENfQk9PSzNFXzY0IC1EIEwxX0NBQ0hFX1NISUZUPTYgXAor CQktRCBMMV9DQUNIRV9CWVRFUz02NCBjb3B5dXNlcl9wb3dlcjcuUyAkKEVYVFJBX1NPVVJDRVMp IC1vICRACisKIHJ1bl90ZXN0czogYWxsCiAJQC1mb3IgUFJPRyBpbiAkKFBST0dTKTsgZG8gXAog CQkuLyQkUFJPRzsgXApkaWZmIC0tZ2l0IGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvcG93ZXJw Yy9jb3B5bG9vcHMvYXNtL2NhY2hlLmggYi90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9wb3dlcnBj L2NvcHlsb29wcy9hc20vY2FjaGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw Li4zNGEwNWExCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvcG93 ZXJwYy9jb3B5bG9vcHMvYXNtL2NhY2hlLmgKQEAgLTAsMCArMSw4NCBAQAorI2lmbmRlZiBfQVNN X1BPV0VSUENfQ0FDSEVfSAorI2RlZmluZSBfQVNNX1BPV0VSUENfQ0FDSEVfSAorCisjaWZkZWYg X19LRVJORUxfXworCisjaW5jbHVkZSA8YXNtL3JlZy5oPgorCisvKiBieXRlcyBwZXIgTDEgY2Fj aGUgbGluZSAqLworI2lmIGRlZmluZWQoQ09ORklHXzh4eCkgfHwgZGVmaW5lZChDT05GSUdfNDAz R0NYKQorI2RlZmluZSBMMV9DQUNIRV9TSElGVAkJNAorI2RlZmluZSBNQVhfQ09QWV9QUkVGRVRD SAkxCisjZWxpZiBkZWZpbmVkKENPTkZJR19QUENfRTUwME1DKQorI2RlZmluZSBMMV9DQUNIRV9T SElGVAkJNgorI2RlZmluZSBNQVhfQ09QWV9QUkVGRVRDSAk0CisjZWxpZiBkZWZpbmVkKENPTkZJ R19QUEMzMikKKyNkZWZpbmUgTUFYX0NPUFlfUFJFRkVUQ0gJNAorI2lmIGRlZmluZWQoQ09ORklH X1BQQ180N3gpCisjZGVmaW5lIEwxX0NBQ0hFX1NISUZUCQk3CisjZWxzZQorI2RlZmluZSBMMV9D QUNIRV9TSElGVAkJNQorI2VuZGlmCisjZWxzZSAvKiBDT05GSUdfUFBDNjQgKi8KKyNkZWZpbmUg TDFfQ0FDSEVfU0hJRlQJCTcKKyNlbmRpZgorCisjZGVmaW5lCUwxX0NBQ0hFX0JZVEVTCQkoMSA8 PCBMMV9DQUNIRV9TSElGVCkKKworI2RlZmluZQlTTVBfQ0FDSEVfQllURVMJCUwxX0NBQ0hFX0JZ VEVTCisKKyNpZiBkZWZpbmVkKF9fcG93ZXJwYzY0X18pICYmICFkZWZpbmVkKF9fQVNTRU1CTFlf XykKK3N0cnVjdCBwcGM2NF9jYWNoZXMgeworCXUzMglkc2l6ZTsJCQkvKiBMMSBkLWNhY2hlIHNp emUgKi8KKwl1MzIJZGxpbmVfc2l6ZTsJCS8qIEwxIGQtY2FjaGUgbGluZSBzaXplCSovCisJdTMy CWxvZ19kbGluZV9zaXplOworCXUzMglkbGluZXNfcGVyX3BhZ2U7CisJdTMyCWlzaXplOwkJCS8q IEwxIGktY2FjaGUgc2l6ZSAqLworCXUzMglpbGluZV9zaXplOwkJLyogTDEgaS1jYWNoZSBsaW5l IHNpemUJKi8KKwl1MzIJbG9nX2lsaW5lX3NpemU7CisJdTMyCWlsaW5lc19wZXJfcGFnZTsKK307 CisKK2V4dGVybiBzdHJ1Y3QgcHBjNjRfY2FjaGVzIHBwYzY0X2NhY2hlczsKKworc3RhdGljIGlu bGluZSB2b2lkIGxvZ21wcCh1NjQgeCkKK3sKKwlhc20gdm9sYXRpbGUoUFBDX0xPR01QUChSMSkg OiA6ICJyIiAoeCkpOworfQorCisjZW5kaWYgLyogX19wb3dlcnBjNjRfXyAmJiAhIF9fQVNTRU1C TFlfXyAqLworCisjaWYgZGVmaW5lZChfX0FTU0VNQkxZX18pCisvKgorICogRm9yIGEgc25vb3Bp bmcgaWNhY2hlLCB3ZSBzdGlsbCBuZWVkIGEgZHVtbXkgaWNiaSB0byBwdXJnZSBhbGwgdGhlCisg KiBwcmVmZXRjaGVkIGluc3RydWN0aW9ucyBmcm9tIHRoZSBpZmV0Y2ggYnVmZmVycy4gV2UgYWxz byBuZWVkIGEgc3luYworICogYmVmb3JlIHRoZSBpY2JpIHRvIG9yZGVyIHRoZSB0aGUgYWN0dWFs IHN0b3JlcyB0byBtZW1vcnkgdGhhdCBtaWdodAorICogaGF2ZSBtb2RpZmllZCBpbnN0cnVjdGlv bnMgd2l0aCB0aGUgaWNiaS4KKyAqLworI2RlZmluZSBQVVJHRV9QUkVGRVRDSEVEX0lOUwlcCisJ c3luYzsJCQlcCisJaWNiaQkwLHIzOwkJXAorCXN5bmM7CQkJXAorCWlzeW5jCisKKyNlbHNlCisj ZGVmaW5lIF9fcmVhZF9tb3N0bHkgX19hdHRyaWJ1dGVfXygoX19zZWN0aW9uX18oIi5kYXRhLi5y ZWFkX21vc3RseSIpKSkKKworI2lmZGVmIENPTkZJR182eHgKK2V4dGVybiBsb25nIF9nZXRfTDJD Uih2b2lkKTsKK2V4dGVybiBsb25nIF9nZXRfTDNDUih2b2lkKTsKK2V4dGVybiB2b2lkIF9zZXRf TDJDUih1bnNpZ25lZCBsb25nKTsKK2V4dGVybiB2b2lkIF9zZXRfTDNDUih1bnNpZ25lZCBsb25n KTsKKyNlbHNlCisjZGVmaW5lIF9nZXRfTDJDUigpCTBMCisjZGVmaW5lIF9nZXRfTDNDUigpCTBM CisjZGVmaW5lIF9zZXRfTDJDUih2YWwpCWRvIHsgfSB3aGlsZSgwKQorI2RlZmluZSBfc2V0X0wz Q1IodmFsKQlkbyB7IH0gd2hpbGUoMCkKKyNlbmRpZgorCitleHRlcm4gdm9pZCBjYWNoZWFibGVf bWVtemVybyh2b2lkICpwLCB1bnNpZ25lZCBpbnQgbmIpOworZXh0ZXJuIHZvaWQgKmNhY2hlYWJs ZV9tZW1jcHkodm9pZCAqLCBjb25zdCB2b2lkICosIHVuc2lnbmVkIGludCk7CisKKyNlbmRpZiAv KiAhX19BU1NFTUJMWV9fICovCisjZW5kaWYgLyogX19LRVJORUxfXyAqLworI2VuZGlmIC8qIF9B U01fUE9XRVJQQ19DQUNIRV9IICovCi0tIAoyLjMuMwoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KTGludXhwcGMtZGV2IG1haWxpbmcgbGlzdApMaW51eHBw Yy1kZXZAbGlzdHMub3psYWJzLm9yZwpodHRwczovL2xpc3RzLm96bGFicy5vcmcvbGlzdGluZm8v bGludXhwcGMtZGV2