From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mengyan1223.wang (mengyan1223.wang [89.208.246.23]) by sourceware.org (Postfix) with ESMTPS id 094F73858414 for ; Sun, 28 Nov 2021 08:37:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 094F73858414 Received: from [IPv6:240e:35a:1088:fa00:3101:921a:2d4a:db10] (unknown [IPv6:240e:35a:1088:fa00:3101:921a:2d4a:db10]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature ECDSA (P-384) server-digest SHA384) (Client did not present a certificate) (Authenticated sender: xry111@mengyan1223.wang) by mengyan1223.wang (Postfix) with ESMTPSA id 10955661F5; Sun, 28 Nov 2021 03:37:29 -0500 (EST) Message-ID: Subject: Re: LoongArch Port From: Xi Ruoyao To: chenglulu , gcc-patches@gcc.gnu.org Cc: yangyujie@loongson.cn, xuchenghua@loongson.cn Date: Sun, 28 Nov 2021 16:37:22 +0800 In-Reply-To: <20211127082735.4139682-1-chenglulu@loongson.cn> References: <20211127082735.4139682-1-chenglulu@loongson.cn> Content-Type: multipart/mixed; boundary="=-LJzcPpQifvRqFN3oYHnt" User-Agent: Evolution 3.42.1 MIME-Version: 1.0 X-Spam-Status: No, score=-3031.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, JMQ_SPF_NEUTRAL, KAM_SHORT, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=no autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Nov 2021 08:37:36 -0000 --=-LJzcPpQifvRqFN3oYHnt Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit On Sat, 2021-11-27 at 16:27 +0800, chenglulu wrote: > The LoongArch architecture (LoongArch) is an Instruction Set > Architecture (ISA) that has a Reduced Instruction Set Computer (RISC) > style. > The documents are on > https://loongson.github.io/LoongArch-Documentation/README-EN.html > > The ELF ABI Documents are on: > https://loongson.github.io/LoongArch-Documentation/LoongArch-ELF-ABI-EN.html > > The binutils has been merged into trunk: > https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=560b3fe208255ae909b4b1c88ba9c28b09043307 > > Note: this GCC port requires the following patch applied to binutils > to build. > https://github.com/loongson/binutils-gdb/commit/aacb0bf860f02aa5a7dcb76dd0e392bf871c7586 > (will be submitted to upstream soon) Native bootstrap succeeds at r12-5560, with the patches applied, problematic code thunk mentioned in https://gcc.gnu.org/pipermail/gcc-patches/2021-November/585586.html removed, and IN_LIBGCC2 -> IN_LIBGCC2 || IN_TARGET_LIBS change mentioned in https://gcc.gnu.org/pipermail/gcc-patches/2021-November/585589.html done. Test summary is attached. -- Xi Ruoyao School of Aerospace Science and Technology, Xidian University --=-LJzcPpQifvRqFN3oYHnt Content-Disposition: attachment; filename="summary.txt" Content-Type: text/plain; name="summary.txt"; charset="UTF-8" Content-Transfer-Encoding: base64 TmF0aXZlIGNvbmZpZ3VyYXRpb24gaXMgbG9vbmdhcmNoNjQtdW5rbm93bi1saW51eC1nbnUKCgkJ PT09IGdjYyB0ZXN0cyA9PT0KCgpSdW5uaW5nIHRhcmdldCB1bml4CkZBSUw6IGdjYy5kZy9hbmFs eXplci9hbmFseXplci12ZXJib3NpdHktMmEuYyAodGVzdCBmb3IgZXhjZXNzIGVycm9ycykKRkFJ TDogZ2NjLmRnL2FuYWx5emVyL2FuYWx5emVyLXZlcmJvc2l0eS0zYS5jICh0ZXN0IGZvciBleGNl c3MgZXJyb3JzKQpGQUlMOiBnY2MuZGcvYW5hbHl6ZXIvZWRnZXMtMS5jICh0ZXN0IGZvciBleGNl c3MgZXJyb3JzKQpGQUlMOiBnY2MuZGcvYW5hbHl6ZXIvZmlsZS0xLmMgKHRlc3QgZm9yIGV4Y2Vz cyBlcnJvcnMpCkZBSUw6IGdjYy5kZy9hbmFseXplci9maWxlLTIuYyAodGVzdCBmb3IgZXhjZXNz IGVycm9ycykKRkFJTDogZ2NjLmRnL2FuYWx5emVyL2ZpbGUtcGF0aHMtMS5jICh0ZXN0IGZvciBl eGNlc3MgZXJyb3JzKQpGQUlMOiBnY2MuZGcvYW5hbHl6ZXIvZmlsZS1wcjU4MjM3LmMgKHRlc3Qg Zm9yIGV4Y2VzcyBlcnJvcnMpCkZBSUw6IGdjYy5kZy9hbmFseXplci9wcjk5NzE2LTEuYyAodGVz dCBmb3IgZXhjZXNzIGVycm9ycykKRkFJTDogZ2NjLmRnL2NvbXBhdC9zY2FsYXItYnktdmFsdWUt MyBjX2NvbXBhdF94X3RzdC5vLWNfY29tcGF0X3lfdHN0Lm8gZXhlY3V0ZSAKRkFJTDogZ2NjLmRn L1dhcnJheS1ib3VuZHMtNDguYyBwcjEwMjcwNiAodGVzdCBmb3Igd2FybmluZ3MsIGxpbmUgMzMp CkZBSUw6IGdjYy5kZy9XYXJyYXktYm91bmRzLTQ4LmMgcHIxMDI3MDYgKHRlc3QgZm9yIHdhcm5p bmdzLCBsaW5lIDEzMykKRkFJTDogZ2NjLmRnL1d6ZXJvLWxlbmd0aC1hcnJheS1ib3VuZHMtMi5j ICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpYUEFTUzogZ2NjLmRnL2F0dHItYWxsb2Nfc2l6ZS0x MS5jIG1pc3NpbmcgcmFuZ2UgaW5mbyBmb3Igc2lnbmVkIGNoYXIgKHRlc3QgZm9yIHdhcm5pbmdz LCBsaW5lIDUwKQpYUEFTUzogZ2NjLmRnL2F0dHItYWxsb2Nfc2l6ZS0xMS5jIG1pc3NpbmcgcmFu Z2UgaW5mbyBmb3Igc2hvcnQgKHRlc3QgZm9yIHdhcm5pbmdzLCBsaW5lIDUxKQpGQUlMOiBnY2Mu ZGcvYnVpbHRpbi1hcHBseTIuYyBleGVjdXRpb24gdGVzdApGQUlMOiBnY2MuZGcvcHIxMDI4OTIt MS5jICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpGQUlMOiBnY2MuZGcvcHI0NDE5NC0xLmMgc2Nh bi1ydGwtZHVtcCBkc2UxICJnbG9iYWwgZGVsZXRpb25zID0gKDJ8MykiCkZBSUw6IGdjYy5kZy9w cjQ0MTk0LTEuYyBzY2FuLXJ0bC1kdW1wLW5vdCBmaW5hbCAiaW5zbls6IF1bXlxcbl0qc2V0IFxc XFwobWVtKD8hW15cXG5dKnNjcmF0Y2gpIgpGQUlMOiBnY2MuZGcvc3RhY2stdXNhZ2UtMS5jIHNj YW4tc3RhY2stdXNhZ2UgZm9vXFx0KDI1NnwyNjQpXFx0c3RhdGljClhQQVNTOiBnY2MuZGcvdW5p bml0LXByZWQtN19hLmMgYm9ndXMgd2FybmluZyAodGVzdCBmb3IgYm9ndXMgbWVzc2FnZXMsIGxp bmUgMjYpCkZBSUw6IGdjYy5kZy91bmluaXQtcHJlZC05X2IuYyBib2d1cyB3YXJuaW5nICh0ZXN0 IGZvciBib2d1cyBtZXNzYWdlcywgbGluZSAyMCkKRkFJTDogYy1jKystY29tbW9uL2F0dHItcmV0 YWluLTUuYyAgLVdjKystY29tcGF0ICAodGVzdCBmb3IgZXhjZXNzIGVycm9ycykKRkFJTDogYy1j KystY29tbW9uL2F0dHItcmV0YWluLTYuYyAgLVdjKystY29tcGF0ICAodGVzdCBmb3IgZXhjZXNz IGVycm9ycykKRkFJTDogYy1jKystY29tbW9uL2F0dHItcmV0YWluLTkuYyAgLVdjKystY29tcGF0 ICAodGVzdCBmb3IgZXhjZXNzIGVycm9ycykKRkFJTDogYy1jKystY29tbW9uL3NwZWMtYmFycmll ci0xLmMgIC1XYysrLWNvbXBhdCAgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZBSUw6IGdjYy5k Zy9maXhlZC1wb2ludC9jb21wb3NpdGUtdHlwZS5jICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpG QUlMOiBnY2MuZGcvdG9ydHVyZS9mcC11aW50NjQtY29udmVydC1kb3VibGUtMS5jICAgLU8zIC1n ICAoaW50ZXJuYWwgY29tcGlsZXIgZXJyb3IpCkZBSUw6IGdjYy5kZy90b3J0dXJlL2ZwLXVpbnQ2 NC1jb252ZXJ0LWRvdWJsZS0xLmMgICAtTzMgLWcgICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpV TlJFU09MVkVEOiBnY2MuZGcvdG9ydHVyZS9mcC11aW50NjQtY29udmVydC1kb3VibGUtMS5jICAg LU8zIC1nICBjb21waWxhdGlvbiBmYWlsZWQgdG8gcHJvZHVjZSBleGVjdXRhYmxlCkZBSUw6IGdj Yy5kZy90b3J0dXJlL2ZwLXVpbnQ2NC1jb252ZXJ0LWRvdWJsZS0yLmMgICAtTzMgLWcgIChpbnRl cm5hbCBjb21waWxlciBlcnJvcikKRkFJTDogZ2NjLmRnL3RvcnR1cmUvZnAtdWludDY0LWNvbnZl cnQtZG91YmxlLTIuYyAgIC1PMyAtZyAgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpClVOUkVTT0xW RUQ6IGdjYy5kZy90b3J0dXJlL2ZwLXVpbnQ2NC1jb252ZXJ0LWRvdWJsZS0yLmMgICAtTzMgLWcg IGNvbXBpbGF0aW9uIGZhaWxlZCB0byBwcm9kdWNlIGV4ZWN1dGFibGUKWFBBU1M6IGdjYy5kZy90 cmVlLXNzYS8yMDA0MDIwNC0xLmMgc2Nhbi10cmVlLWR1bXAtdGltZXMgb3B0aW1pemVkICJsaW5r X2Vycm9yIiAwCkZBSUw6IGdjYy5kZy90cmVlLXNzYS9zc2EtZG9tLWNzZS0yLmMgc2Nhbi10cmVl LWR1bXAgb3B0aW1pemVkICJyZXR1cm4gMjg7IgpGQUlMOiBnY2MuZGcvdHJlZS1zc2Evc3NhLXNp bmstMTguYyBzY2FuLXRyZWUtZHVtcC10aW1lcyBzaW5rMiAiU3VuayBzdGF0ZW1lbnRzOiA0IiAx CgoJCT09PSBnY2MgU3VtbWFyeSA9PT0KCiMgb2YgZXhwZWN0ZWQgcGFzc2VzCQkxMzAyNzAKIyBv ZiB1bmV4cGVjdGVkIGZhaWx1cmVzCTI5CiMgb2YgdW5leHBlY3RlZCBzdWNjZXNzZXMJNAojIG9m IGV4cGVjdGVkIGZhaWx1cmVzCQk4NjEKIyBvZiB1bnJlc29sdmVkIHRlc3RjYXNlcwkyCiMgb2Yg dW5zdXBwb3J0ZWQgdGVzdHMJCTIyMzUKL2hvbWUveHJ5MTExL2djYy10ZXN0L2djYy0xMi1sYXJj aC0yMDIxMTEyOC9idWlsZC9nY2MveGdjYyAgdmVyc2lvbiAxMi4wLjAgMjAyMTExMjcgKGV4cGVy aW1lbnRhbCkgKEdDQykgCgoJCT09PSBnZm9ydHJhbiB0ZXN0cyA9PT0KCgpSdW5uaW5nIHRhcmdl dCB1bml4CkZBSUw6IGdmb3J0cmFuLmRnL2JpbmRfY19hcnJheV9wYXJhbXNfMi5mOTAgICAtTyAg IHNjYW4tYXNzZW1ibGVyLXRpbWVzIFsgXFx0XVtcJCxfMC05XSpteUJpbmRDIDEKRkFJTDogZ2Zv cnRyYW4uZGcvcHI5NTY5MC5mOTAgICAtTyAgICh0ZXN0IGZvciBlcnJvcnMsIGxpbmUgNikKRkFJ TDogZ2ZvcnRyYW4uZGcvcHI5NTY5MC5mOTAgICAtTyAgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMp CkZBSUw6IGdmb3J0cmFuLmRnL3Jlc2hhcGVfc2hhcGVfMi5mOTAgICAtTyAgKGludGVybmFsIGNv bXBpbGVyIGVycm9yKQpGQUlMOiBnZm9ydHJhbi5kZy9yZXNoYXBlX3NoYXBlXzIuZjkwICAgLU8g ICAodGVzdCBmb3IgZXJyb3JzLCBsaW5lIDYpCkZBSUw6IGdmb3J0cmFuLmRnL3Jlc2hhcGVfc2hh cGVfMi5mOTAgICAtTyAgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZBSUw6IGdmb3J0cmFuLmRn L3ZlY3Rvcl9zdWJzY3JpcHRfMS5mOTAgICAtTzEgIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6IGdmb3J0 cmFuLmRnL3ZlY3Rvcl9zdWJzY3JpcHRfMS5mOTAgICAtTzIgIGV4ZWN1dGlvbiB0ZXN0CkZBSUw6 IGdmb3J0cmFuLmRnL3ZlY3Rvcl9zdWJzY3JpcHRfMS5mOTAgICAtTzMgLWZvbWl0LWZyYW1lLXBv aW50ZXIgLWZ1bnJvbGwtbG9vcHMgLWZwZWVsLWxvb3BzIC1mdHJhY2VyIC1maW5saW5lLWZ1bmN0 aW9ucyAgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2ZvcnRyYW4uZGcvdmVjdG9yX3N1YnNjcmlwdF8x LmY5MCAgIC1PMyAtZyAgZXhlY3V0aW9uIHRlc3QKRkFJTDogZ2ZvcnRyYW4uZGcvdmVjdG9yX3N1 YnNjcmlwdF8xLmY5MCAgIC1PcyAgZXhlY3V0aW9uIHRlc3QKCgkJPT09IGdmb3J0cmFuIFN1bW1h cnkgPT09CgojIG9mIGV4cGVjdGVkIHBhc3NlcwkJNjM4OTgKIyBvZiB1bmV4cGVjdGVkIGZhaWx1 cmVzCTExCiMgb2YgZXhwZWN0ZWQgZmFpbHVyZXMJCTI0MQojIG9mIHVuc3VwcG9ydGVkIHRlc3Rz CQkxODAKL2hvbWUveHJ5MTExL2djYy10ZXN0L2djYy0xMi1sYXJjaC0yMDIxMTEyOC9idWlsZC9n Y2MvZ2ZvcnRyYW4gIHZlcnNpb24gMTIuMC4wIDIwMjExMTI3IChleHBlcmltZW50YWwpIChHQ0Mp IAoKCQk9PT0gZysrIHRlc3RzID09PQoKClJ1bm5pbmcgdGFyZ2V0IHVuaXgKRkFJTDogdG1wZGly LWcrKy5kZy1zdHJ1Y3QtbGF5b3V0LTEvdDAzMyBjcF9jb21wYXRfeF90c3Quby1jcF9jb21wYXRf eV90c3QubyBleGVjdXRlIApGQUlMOiBjLWMrKy1jb21tb24vYXR0ci1yZXRhaW4tNS5jICAtc3Rk PWdudSsrOTggKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZBSUw6IGMtYysrLWNvbW1vbi9hdHRy LXJldGFpbi01LmMgIC1zdGQ9Z251KysxNCAodGVzdCBmb3IgZXhjZXNzIGVycm9ycykKRkFJTDog Yy1jKystY29tbW9uL2F0dHItcmV0YWluLTUuYyAgLXN0ZD1nbnUrKzE3ICh0ZXN0IGZvciBleGNl c3MgZXJyb3JzKQpGQUlMOiBjLWMrKy1jb21tb24vYXR0ci1yZXRhaW4tNS5jICAtc3RkPWdudSsr MmEgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZBSUw6IGMtYysrLWNvbW1vbi9hdHRyLXJldGFp bi02LmMgIC1zdGQ9Z251Kys5OCAodGVzdCBmb3IgZXhjZXNzIGVycm9ycykKRkFJTDogYy1jKyst Y29tbW9uL2F0dHItcmV0YWluLTYuYyAgLXN0ZD1nbnUrKzE0ICh0ZXN0IGZvciBleGNlc3MgZXJy b3JzKQpGQUlMOiBjLWMrKy1jb21tb24vYXR0ci1yZXRhaW4tNi5jICAtc3RkPWdudSsrMTcgKHRl c3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZBSUw6IGMtYysrLWNvbW1vbi9hdHRyLXJldGFpbi02LmMg IC1zdGQ9Z251KysyYSAodGVzdCBmb3IgZXhjZXNzIGVycm9ycykKRkFJTDogYy1jKystY29tbW9u L2F0dHItcmV0YWluLTkuYyAgLXN0ZD1nbnUrKzk4ICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpG QUlMOiBjLWMrKy1jb21tb24vYXR0ci1yZXRhaW4tOS5jICAtc3RkPWdudSsrMTQgKHRlc3QgZm9y IGV4Y2VzcyBlcnJvcnMpCkZBSUw6IGMtYysrLWNvbW1vbi9hdHRyLXJldGFpbi05LmMgIC1zdGQ9 Z251KysxNyAodGVzdCBmb3IgZXhjZXNzIGVycm9ycykKRkFJTDogYy1jKystY29tbW9uL2F0dHIt cmV0YWluLTkuYyAgLXN0ZD1nbnUrKzJhICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpGQUlMOiBj LWMrKy1jb21tb24vc3BlYy1iYXJyaWVyLTEuYyAgLXN0ZD1nbnUrKzk4ICh0ZXN0IGZvciBleGNl c3MgZXJyb3JzKQpGQUlMOiBjLWMrKy1jb21tb24vc3BlYy1iYXJyaWVyLTEuYyAgLXN0ZD1nbnUr KzE0ICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpGQUlMOiBjLWMrKy1jb21tb24vc3BlYy1iYXJy aWVyLTEuYyAgLXN0ZD1nbnUrKzE3ICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpGQUlMOiBjLWMr Ky1jb21tb24vc3BlYy1iYXJyaWVyLTEuYyAgLXN0ZD1nbnUrKzJhICh0ZXN0IGZvciBleGNlc3Mg ZXJyb3JzKQpGQUlMOiBnKysuZGcvdHJlZS1zc2EvcHI5MDg4My5DICAgc2Nhbi10cmVlLWR1bXAg ZHNlMSAiRGVsZXRlZCByZWR1bmRhbnQgc3RvcmU6IC4qLmEgPSB7fSIKRkFJTDogZysrLmRnL3dh cm4vV2FkZHJlc3MtNS5DICAtc3RkPWdudSsrOTggKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZB SUw6IGcrKy5kZy93YXJuL1dhZGRyZXNzLTUuQyAgLXN0ZD1nbnUrKzE0ICh0ZXN0IGZvciBleGNl c3MgZXJyb3JzKQpGQUlMOiBnKysuZGcvd2Fybi9XYWRkcmVzcy01LkMgIC1zdGQ9Z251KysxNyAo dGVzdCBmb3IgZXhjZXNzIGVycm9ycykKRkFJTDogZysrLmRnL3dhcm4vV2FkZHJlc3MtNS5DICAt c3RkPWdudSsrMmEgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZBSUw6IGcrKy5kZy9sdG8vcHI2 NDA3NiBjcF9sdG9fcHI2NDA3Nl8wLm8tY3BfbHRvX3ByNjQwNzZfMS5vIGxpbmssICAtTzAgLWZs dG8gLXNoYXJlZCAtZlBJQyAKRkFJTDogZysrLmRnL21vZHVsZXMvYmFkLW1hcHBlci0zLkMgLXN0 ZD1jKysxNyAgKHRlc3QgZm9yIGVycm9ycywgbGluZSApCkZBSUw6IGcrKy5kZy9tb2R1bGVzL2Jh ZC1tYXBwZXItMy5DIC1zdGQ9YysrMTcgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZBSUw6IGcr Ky5kZy9tb2R1bGVzL2JhZC1tYXBwZXItMy5DIC1zdGQ9YysrMmEgICh0ZXN0IGZvciBlcnJvcnMs IGxpbmUgKQpGQUlMOiBnKysuZGcvbW9kdWxlcy9iYWQtbWFwcGVyLTMuQyAtc3RkPWMrKzJhICh0 ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpGQUlMOiBnKysuZGcvbW9kdWxlcy9iYWQtbWFwcGVyLTMu QyAtc3RkPWMrKzJiICAodGVzdCBmb3IgZXJyb3JzLCBsaW5lICkKRkFJTDogZysrLmRnL21vZHVs ZXMvYmFkLW1hcHBlci0zLkMgLXN0ZD1jKysyYiAodGVzdCBmb3IgZXhjZXNzIGVycm9ycykKRkFJ TDogZysrLmRnL21vZHVsZXMveHRyZW1lLWhlYWRlci0zX2EuSCAtc3RkPWMrKzE3IChpbnRlcm5h bCBjb21waWxlciBlcnJvcikKRkFJTDogZysrLmRnL21vZHVsZXMveHRyZW1lLWhlYWRlci0zX2Eu SCAtc3RkPWMrKzE3ICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpGQUlMOiBnKysuZGcvbW9kdWxl cy94dHJlbWUtaGVhZGVyLTNfYS5IIG1vZHVsZS1jbWkgIChnY20uY2FjaGUvXCRzcmNkaXIvZysr LmRnL21vZHVsZXMveHRyZW1lLWhlYWRlci0zX2EuSC5nY20pCkZBSUw6IGcrKy5kZy9tb2R1bGVz L3h0cmVtZS1oZWFkZXItM19hLkggLXN0ZD1jKysyYSAoaW50ZXJuYWwgY29tcGlsZXIgZXJyb3Ip CkZBSUw6IGcrKy5kZy9tb2R1bGVzL3h0cmVtZS1oZWFkZXItM19hLkggLXN0ZD1jKysyYSAodGVz dCBmb3IgZXhjZXNzIGVycm9ycykKRkFJTDogZysrLmRnL21vZHVsZXMveHRyZW1lLWhlYWRlci0z X2EuSCBtb2R1bGUtY21pICAoZ2NtLmNhY2hlL1wkc3JjZGlyL2crKy5kZy9tb2R1bGVzL3h0cmVt ZS1oZWFkZXItM19hLkguZ2NtKQpGQUlMOiBnKysuZGcvbW9kdWxlcy94dHJlbWUtaGVhZGVyLTNf YS5IIC1zdGQ9YysrMmIgKGludGVybmFsIGNvbXBpbGVyIGVycm9yKQpGQUlMOiBnKysuZGcvbW9k dWxlcy94dHJlbWUtaGVhZGVyLTNfYS5IIC1zdGQ9YysrMmIgKHRlc3QgZm9yIGV4Y2VzcyBlcnJv cnMpCkZBSUw6IGcrKy5kZy9tb2R1bGVzL3h0cmVtZS1oZWFkZXItM19hLkggbW9kdWxlLWNtaSAg KGdjbS5jYWNoZS9cJHNyY2Rpci9nKysuZGcvbW9kdWxlcy94dHJlbWUtaGVhZGVyLTNfYS5ILmdj bSkKRkFJTDogZysrLmRnL21vZHVsZXMveHRyZW1lLWhlYWRlci0zX2IuQyAtc3RkPWMrKzE3ICh0 ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpGQUlMOiBnKysuZGcvbW9kdWxlcy94dHJlbWUtaGVhZGVy LTNfYi5DIC1zdGQ9YysrMmEgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZBSUw6IGcrKy5kZy9t b2R1bGVzL3h0cmVtZS1oZWFkZXItM19iLkMgLXN0ZD1jKysyYiAodGVzdCBmb3IgZXhjZXNzIGVy cm9ycykKRkFJTDogZysrLmRnL21vZHVsZXMveHRyZW1lLWhlYWRlci0zX2MuQyAtc3RkPWMrKzE3 ICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpGQUlMOiBnKysuZGcvbW9kdWxlcy94dHJlbWUtaGVh ZGVyLTNfYy5DIC1zdGQ9YysrMmEgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZBSUw6IGcrKy5k Zy9tb2R1bGVzL3h0cmVtZS1oZWFkZXItM19jLkMgLXN0ZD1jKysyYiAodGVzdCBmb3IgZXhjZXNz IGVycm9ycykKRkFJTDogZysrLmRnL21vZHVsZXMveHRyZW1lLWhlYWRlci01X2EuSCAtc3RkPWMr KzJhIChpbnRlcm5hbCBjb21waWxlciBlcnJvcikKRkFJTDogZysrLmRnL21vZHVsZXMveHRyZW1l LWhlYWRlci01X2EuSCAtc3RkPWMrKzJhICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpGQUlMOiBn KysuZGcvbW9kdWxlcy94dHJlbWUtaGVhZGVyLTVfYS5IIG1vZHVsZS1jbWkgIChnY20uY2FjaGUv XCRzcmNkaXIvZysrLmRnL21vZHVsZXMveHRyZW1lLWhlYWRlci01X2EuSC5nY20pCkZBSUw6IGcr Ky5kZy9tb2R1bGVzL3h0cmVtZS1oZWFkZXItNV9hLkggLXN0ZD1jKysyYiAoaW50ZXJuYWwgY29t cGlsZXIgZXJyb3IpCkZBSUw6IGcrKy5kZy9tb2R1bGVzL3h0cmVtZS1oZWFkZXItNV9hLkggLXN0 ZD1jKysyYiAodGVzdCBmb3IgZXhjZXNzIGVycm9ycykKRkFJTDogZysrLmRnL21vZHVsZXMveHRy ZW1lLWhlYWRlci01X2EuSCBtb2R1bGUtY21pICAoZ2NtLmNhY2hlL1wkc3JjZGlyL2crKy5kZy9t b2R1bGVzL3h0cmVtZS1oZWFkZXItNV9hLkguZ2NtKQpGQUlMOiBnKysuZGcvbW9kdWxlcy94dHJl bWUtaGVhZGVyLTVfYi5DIC1zdGQ9YysrMmEgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZBSUw6 IGcrKy5kZy9tb2R1bGVzL3h0cmVtZS1oZWFkZXItNV9iLkMgLXN0ZD1jKysyYiAodGVzdCBmb3Ig ZXhjZXNzIGVycm9ycykKRkFJTDogZysrLmRnL21vZHVsZXMveHRyZW1lLWhlYWRlci01X2MuQyAt c3RkPWMrKzJhICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpGQUlMOiBnKysuZGcvbW9kdWxlcy94 dHJlbWUtaGVhZGVyLTVfYy5DIC1zdGQ9YysrMmIgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZB SUw6IGcrKy5kZy9tb2R1bGVzL3h0cmVtZS1oZWFkZXJfYS5IIC1zdGQ9YysrMTcgKGludGVybmFs IGNvbXBpbGVyIGVycm9yKQpGQUlMOiBnKysuZGcvbW9kdWxlcy94dHJlbWUtaGVhZGVyX2EuSCAt c3RkPWMrKzE3ICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQpGQUlMOiBnKysuZGcvbW9kdWxlcy94 dHJlbWUtaGVhZGVyX2EuSCBtb2R1bGUtY21pICAoZ2NtLmNhY2hlL1wkc3JjZGlyL2crKy5kZy9t b2R1bGVzL3h0cmVtZS1oZWFkZXJfYS5ILmdjbSkKRkFJTDogZysrLmRnL21vZHVsZXMveHRyZW1l LWhlYWRlcl9hLkggLXN0ZD1jKysyYSAoaW50ZXJuYWwgY29tcGlsZXIgZXJyb3IpCkZBSUw6IGcr Ky5kZy9tb2R1bGVzL3h0cmVtZS1oZWFkZXJfYS5IIC1zdGQ9YysrMmEgKHRlc3QgZm9yIGV4Y2Vz cyBlcnJvcnMpCkZBSUw6IGcrKy5kZy9tb2R1bGVzL3h0cmVtZS1oZWFkZXJfYS5IIG1vZHVsZS1j bWkgIChnY20uY2FjaGUvXCRzcmNkaXIvZysrLmRnL21vZHVsZXMveHRyZW1lLWhlYWRlcl9hLkgu Z2NtKQpGQUlMOiBnKysuZGcvbW9kdWxlcy94dHJlbWUtaGVhZGVyX2EuSCAtc3RkPWMrKzJiIChp bnRlcm5hbCBjb21waWxlciBlcnJvcikKRkFJTDogZysrLmRnL21vZHVsZXMveHRyZW1lLWhlYWRl cl9hLkggLXN0ZD1jKysyYiAodGVzdCBmb3IgZXhjZXNzIGVycm9ycykKRkFJTDogZysrLmRnL21v ZHVsZXMveHRyZW1lLWhlYWRlcl9hLkggbW9kdWxlLWNtaSAgKGdjbS5jYWNoZS9cJHNyY2Rpci9n KysuZGcvbW9kdWxlcy94dHJlbWUtaGVhZGVyX2EuSC5nY20pCkZBSUw6IGcrKy5kZy9tb2R1bGVz L3h0cmVtZS1oZWFkZXJfYi5DIC1zdGQ9YysrMTcgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCkZB SUw6IGcrKy5kZy9tb2R1bGVzL3h0cmVtZS1oZWFkZXJfYi5DIC1zdGQ9YysrMmEgKHRlc3QgZm9y IGV4Y2VzcyBlcnJvcnMpCkZBSUw6IGcrKy5kZy9tb2R1bGVzL3h0cmVtZS1oZWFkZXJfYi5DIC1z dGQ9YysrMmIgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpCgoJCT09PSBnKysgU3VtbWFyeSA9PT0K CiMgb2YgZXhwZWN0ZWQgcGFzc2VzCQkyMTI4NDQKIyBvZiB1bmV4cGVjdGVkIGZhaWx1cmVzCTY2 CiMgb2YgZXhwZWN0ZWQgZmFpbHVyZXMJCTE0MDkKIyBvZiB1bnN1cHBvcnRlZCB0ZXN0cwkJOTc0 MQovaG9tZS94cnkxMTEvZ2NjLXRlc3QvZ2NjLTEyLWxhcmNoLTIwMjExMTI4L2J1aWxkL2djYy94 ZysrICB2ZXJzaW9uIDEyLjAuMCAyMDIxMTEyNyAoZXhwZXJpbWVudGFsKSAoR0NDKSAKCgkJPT09 IG9iamMgdGVzdHMgPT09CgoKUnVubmluZyB0YXJnZXQgdW5peAoKCQk9PT0gb2JqYyBTdW1tYXJ5 ID09PQoKIyBvZiBleHBlY3RlZCBwYXNzZXMJCTI4MjgKIyBvZiB1bnN1cHBvcnRlZCB0ZXN0cwkJ NzEKL2hvbWUveHJ5MTExL2djYy10ZXN0L2djYy0xMi1sYXJjaC0yMDIxMTEyOC9idWlsZC9nY2Mv eGdjYyAgdmVyc2lvbiAxMi4wLjAgMjAyMTExMjcgKGV4cGVyaW1lbnRhbCkgKEdDQykgCgoJCT09 PSBsaWJhdG9taWMgdGVzdHMgPT09CgoKUnVubmluZyB0YXJnZXQgdW5peAoKCQk9PT0gbGliYXRv bWljIFN1bW1hcnkgPT09CgojIG9mIGV4cGVjdGVkIHBhc3NlcwkJNTQKCQk9PT0gbGliZ29tcCB0 ZXN0cyA9PT0KCgpSdW5uaW5nIHRhcmdldCB1bml4CgoJCT09PSBsaWJnb21wIFN1bW1hcnkgPT09 CgojIG9mIGV4cGVjdGVkIHBhc3NlcwkJMTE3MDQKIyBvZiBleHBlY3RlZCBmYWlsdXJlcwkJMTAz CiMgb2YgdW5zdXBwb3J0ZWQgdGVzdHMJCTYyMAoJCT09PSBsaWJzdGRjKysgdGVzdHMgPT09CgoK UnVubmluZyB0YXJnZXQgdW5peApGQUlMOiAyMl9sb2NhbGUvbnVtcHVuY3QvbWVtYmVycy9jaGFy LzMuY2MgZXhlY3V0aW9uIHRlc3QKRkFJTDogMjJfbG9jYWxlL3RpbWVfZ2V0L2dldF90aW1lL2No YXIvMi5jYyBleGVjdXRpb24gdGVzdApGQUlMOiAyMl9sb2NhbGUvdGltZV9nZXQvZ2V0X3RpbWUv Y2hhci93cmFwcGVkX2Vudi5jYyBleGVjdXRpb24gdGVzdApGQUlMOiAyMl9sb2NhbGUvdGltZV9n ZXQvZ2V0X3RpbWUvY2hhci93cmFwcGVkX2xvY2FsZS5jYyBleGVjdXRpb24gdGVzdApGQUlMOiAy Ml9sb2NhbGUvdGltZV9nZXQvZ2V0X3RpbWUvd2NoYXJfdC8yLmNjIGV4ZWN1dGlvbiB0ZXN0CkZB SUw6IDIyX2xvY2FsZS90aW1lX2dldC9nZXRfdGltZS93Y2hhcl90L3dyYXBwZWRfZW52LmNjIGV4 ZWN1dGlvbiB0ZXN0CkZBSUw6IDIyX2xvY2FsZS90aW1lX2dldC9nZXRfdGltZS93Y2hhcl90L3dy YXBwZWRfbG9jYWxlLmNjIGV4ZWN1dGlvbiB0ZXN0CgoJCT09PSBsaWJzdGRjKysgU3VtbWFyeSA9 PT0KCiMgb2YgZXhwZWN0ZWQgcGFzc2VzCQkxNDgwMQojIG9mIHVuZXhwZWN0ZWQgZmFpbHVyZXMJ NwojIG9mIGV4cGVjdGVkIGZhaWx1cmVzCQk5NQojIG9mIHVuc3VwcG9ydGVkIHRlc3RzCQkzOTkK CkNvbXBpbGVyIHZlcnNpb246IDEyLjAuMCAyMDIxMTEyNyAoZXhwZXJpbWVudGFsKSAoR0NDKSAK UGxhdGZvcm06IGxvb25nYXJjaDY0LXVua25vd24tbGludXgtZ251CmNvbmZpZ3VyZSBmbGFnczog LS1wcmVmaXg9L2hvbWUveHJ5MTExL2djYy0xMi1sYXJjaC12MSAtLWRpc2FibGUtbXVsdGlsaWIg LS13aXRoLXN5c3RlbS16bGliIC0tZW5hYmxlLXdlcnJvci1hbHdheXMK --=-LJzcPpQifvRqFN3oYHnt--