From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-sender-0.a4lg.com (mail-sender-0.a4lg.com [IPv6:2401:2500:203:30b:4000:6bfe:4757:0]) by sourceware.org (Postfix) with ESMTPS id A291B3858402 for ; Fri, 25 Feb 2022 07:07:33 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org A291B3858402 Received: from [127.0.0.1] (localhost [127.0.0.1]) by mail-sender-0.a4lg.com (Postfix) with ESMTPSA id C2D61300089; Fri, 25 Feb 2022 07:07:31 +0000 (UTC) Content-Type: multipart/mixed; boundary="------------vG0Y101S1Swf9qfyya6paEdm" Message-ID: <66686bc9-09c0-4b1b-9d06-c51270eb04c2@irq.a4lg.com> Date: Fri, 25 Feb 2022 16:07:30 +0900 Mime-Version: 1.0 Subject: Re: [PATCH 4/5] RISC-V: Prefetch hint instructions and operand set Content-Language: en-US To: Nelson Chu References: <01effa16d153dd291c54d1020d30460b45580080.1644373764.git.research_trasio@irq.a4lg.com> From: Tsukasa OI Cc: Binutils In-Reply-To: X-Spam-Status: No, score=-12.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, GIT_PATCH_0, KAM_LOTSOFHASH, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Feb 2022 07:07:37 -0000 This is a multi-part message in MIME format. --------------vG0Y101S1Swf9qfyya6paEdm Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Hi Nelson, I attached new rebased version of my CMO patches (for reference and NOT an actual submission) so that you can test an example below. | (Submission) (Attachment) | PATCH 1/5 -> PATCH 1-2/2 (splitted and squashed) | PATCH 4-5/5 -> PATCH 1/2 (squashed and order changed) p | PATCH 2-3/5 -> PATCH 2/2 (squashed and order changed) m/z This reorganization is mainly caused by following open issue: I hope this is resolved soon so that I can submit the next version without extra footnotes. On 2022/02/25 11:50, Nelson Chu wrote: > Hi Tsukasa, > > Reusing the q operand should be enough. Though we may add relocation > when the offset is a symbol, I think this should be fine. > > Consider Christoph patch, > https://sourceware.org/pipermail/binutils/2022-January/119262.html > > His patch is closer to the implementation I will do, just consider the > compatibility of amo instructions should be perfect. However, you are > adding more testcases than us. It would be always good to add more > testcases, so except the f operand, your patches LGTM. > > Thanks > Nelson Unfortunately, simply reusing 'q' doesn't work. For overflow checking, 'q' is fine. On 2022/02/25 11:50, Nelson Chu wrote:>> case 'q': used_bits |= ENCODE_STYPE_IMM (-1U); break; >> + case 'f': used_bits |= ENCODE_STYPE_IMM (-1U); break; > > I prefer to reuse the q operand here. We may use simple fall-through here. However, 32-byte alignment constraint requires a new operand type. Let's see... assume that we change to use "q(s)" instead of "f(s)" (you can just patch the patches I attached). # BTW, I use minimal playground to test my GNU Binutils patches # # so that this example can be built and linked. .globl _start .section .entry, "ax", %progbits _start: .option arch,+zicbop prefetch.i 0(t0) # Remove Zicbop extension from final ELF # to disassemble above instruction as `ori', not `prefetch.i'. .option arch,-zicbop ret If we assemble above example (test.bare.S) and disassemble the result, it should look like this: 0000000080000028 <_start>: 80000028: 0002e013 ori zero,t0,0 8000002c: 8082 ret Looks great. But if we change 0(t0) to 1(t0), we DON'T get an error and the result will look like... 0000000080000028 <_start>: 80000028: 0002e093 ori ra,t0,0 8000002c: 8082 ret Oh no, a side effect (assignment to ra[x1]) without "illegal operands". It happens because `match_opcode' for prefetch instructions (to test instruction validity in `riscv_ip') is called before instruction bits are modified. For store addresses, actual value insertion happens in `md_apply_fix' function after "successfully assembled" in `riscv_ip'. So, we need to test validity of the immediate constant (32-byte aligned) somewhere. Even if we test it on fixup, it (at least) requires new BFD relocation type (preventing reuse of case 'q' code path). Of course, if we consider using relocations on prefetch instructions, we could move, for instance, address insertion. Still, we absolutely need something new to handle special 32-byte alignment or we will risk generating corrupted programs. Thanks, Tsukasa --------------vG0Y101S1Swf9qfyya6paEdm Content-Type: text/plain; charset=UTF-8; name="0001-RISC-V-Prefetch-hint-instructions-and-operand-set.patch" Content-Disposition: attachment; filename*0="0001-RISC-V-Prefetch-hint-instructions-and-operand-set.patch" Content-Transfer-Encoding: base64 RnJvbSAyY2Y0NTFjNjUzMzUyZTZmNWQxNzY5ZjM2YTJhNDhmMWQ1ODIwYWUxIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpNZXNzYWdlLUlkOiA8MmNmNDUxYzY1MzM1MmU2ZjVkMTc2OWYz NmEyYTQ4ZjFkNTgyMGFlMS4xNjQ1NzcxODk1LmdpdC5yZXNlYXJjaF90cmFzaW9AaXJxLmE0 bGcuY29tPgpGcm9tOiBUc3VrYXNhIE9JIDxyZXNlYXJjaF90cmFzaW9AaXJxLmE0bGcuY29t PgpEYXRlOiBUdWUsIDExIEphbiAyMDIyIDE5OjE0OjAyICswOTAwClN1YmplY3Q6IFtQQVRD SCAxLzJdIFJJU0MtVjogUHJlZmV0Y2ggaGludCBpbnN0cnVjdGlvbnMgYW5kIG9wZXJhbmQg c2V0CgpUaGlzIGNvbW1pdCBhZGRzICdaaWNib3AnIGhpbnQgaW5zdHJ1Y3Rpb25zIGFuZCB0 ZXN0Y2FzZXMuCgpiZmQvQ2hhbmdlTG9nOgoKCSogZWxmeHgtcmlzY3YuYyAocmlzY3Zfc3Vw cG9ydGVkX3N0ZF96X2V4dCk6IEFkZCAnWmljYm9wJwoJc3RhbmRhcmQgJ1onIGV4dGVuc2lv bi4gKHJpc2N2X211bHRpX3N1YnNldF9zdXBwb3J0cyk6IEFkZAoJaGFuZGxpbmcgZm9yIG5l dyBpbnN0cnVjdGlvbiBjbGFzcy4KCmdhcy9DaGFuZ2VMb2c6CgoJKiBjb25maWcvdGMtcmlz Y3YuYyAocmlzY3ZfaXApOiBBZGQgaGFuZGxpbmcgZm9yIG5ldyBvcGVyYW5kCgl0eXBlICdm JyAoMzItYnl0ZSBhbGlnbmVkIHBzZXVkbyBTLXR5cGUgaW1tZWRpYXRlIGZvciBwcmVmZXRj aAoJaGludHMpLgoJKHZhbGlkYXRlX3Jpc2N2X2luc24pOiBMaWtld2lzZS4KCSogdGVzdHN1 aXRlL2dhcy9yaXNjdi96aWNib3AtZmFpbC5kOiBOZXcgdGVzdGNhc2UgZm9yIGludmFsaWQK CXByZWZldGNoIGhpbnQgaW5zdHJ1Y3Rpb25zLgoJKiB0ZXN0c3VpdGUvZ2FzL3Jpc2N2L3pp Y2JvcC1mYWlsLmw6IExpa2V3aXNlLgoJKiB0ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2JvcC1m YWlsLnM6IExpa2V3aXNlLgoJKiB0ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2JvcC5kOiBOZXcg dGVzdGNhc2UgZm9yIHByZWZldGNoIGhpbnQKCWluc3RydWN0aW9ucy4KCSogdGVzdHN1aXRl L2dhcy9yaXNjdi96aWNib3AuczogTGlrZXdpc2UuCgppbmNsdWRlL0NoYW5nZUxvZzoKCgkq IG9wY29kZS9yaXNjdi1vcGMuaCAoTUFUQ0hfUFJFRkVUQ0hfSSwgTUFTS19QUkVGRVRDSF9J LAoJTUFUQ0hfUFJFRkVUQ0hfUiwgTUFTS19QUkVGRVRDSF9SLCBNQVRDSF9QUkVGRVRDSF9X LAoJTUFTS19QUkVGRVRDSF9XKTogTmV3IG1hY3Jvcy4KCSogb3Bjb2RlL3Jpc2N2LmggKGVu dW0gcmlzY3ZfaW5zbl9jbGFzcyk6IEFkZCBuZXcgaW5zdHJ1Y3Rpb24KCWNsYXNzIElOU05f Q0xBU1NfWklDQk9QLgoKb3Bjb2Rlcy9DaGFuZ2VMb2c6CgoJKiByaXNjdi1kaXMuYyAocHJp bnRfaW5zbl9hcmdzKTogQWRkIGhhbmRsaW5nIGZvciBuZXcgb3BlcmFuZAoJdHlwZS4KCSog cmlzY3Ytb3BjLmMgKHJpc2N2X29wY29kZXMpOiBBZGQgcHJlZmV0Y2ggaGludCBpbnN0cnVj dGlvbnMuCi0tLQogYmZkL2VsZnh4LXJpc2N2LmMgICAgICAgICAgICAgICAgICAgICB8ICAz ICsrKwogZ2FzL2NvbmZpZy90Yy1yaXNjdi5jICAgICAgICAgICAgICAgICB8IDE4ICsrKysr KysrKysrKysrKysrKwogZ2FzL3Rlc3RzdWl0ZS9nYXMvcmlzY3YvemljYm9wLWZhaWwuZCB8 ICAzICsrKwogZ2FzL3Rlc3RzdWl0ZS9nYXMvcmlzY3YvemljYm9wLWZhaWwubCB8ICA0ICsr KysKIGdhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2JvcC1mYWlsLnMgfCAgNCArKysrCiBn YXMvdGVzdHN1aXRlL2dhcy9yaXNjdi96aWNib3AuZCAgICAgIHwgMTIgKysrKysrKysrKysr CiBnYXMvdGVzdHN1aXRlL2dhcy9yaXNjdi96aWNib3AucyAgICAgIHwgIDQgKysrKwogaW5j bHVkZS9vcGNvZGUvcmlzY3Ytb3BjLmggICAgICAgICAgICB8ICA3ICsrKysrKysKIGluY2x1 ZGUvb3Bjb2RlL3Jpc2N2LmggICAgICAgICAgICAgICAgfCAgMSArCiBvcGNvZGVzL3Jpc2N2 LWRpcy5jICAgICAgICAgICAgICAgICAgIHwgIDQgKysrKwogb3Bjb2Rlcy9yaXNjdi1vcGMu YyAgICAgICAgICAgICAgICAgICB8ICAzICsrKwogMTEgZmlsZXMgY2hhbmdlZCwgNjMgaW5z ZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGdhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2 L3ppY2JvcC1mYWlsLmQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnYXMvdGVzdHN1aXRlL2dhcy9y aXNjdi96aWNib3AtZmFpbC5sCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2FzL3Rlc3RzdWl0ZS9n YXMvcmlzY3YvemljYm9wLWZhaWwucwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdhcy90ZXN0c3Vp dGUvZ2FzL3Jpc2N2L3ppY2JvcC5kCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2FzL3Rlc3RzdWl0 ZS9nYXMvcmlzY3YvemljYm9wLnMKCmRpZmYgLS1naXQgYS9iZmQvZWxmeHgtcmlzY3YuYyBi L2JmZC9lbGZ4eC1yaXNjdi5jCmluZGV4IGQ3NGU3YTU4NGViLi44M2NkOTBkMDA2YSAxMDA2 NDQKLS0tIGEvYmZkL2VsZnh4LXJpc2N2LmMKKysrIGIvYmZkL2VsZnh4LXJpc2N2LmMKQEAg LTExNzIsNiArMTE3Miw3IEBAIHN0YXRpYyBzdHJ1Y3QgcmlzY3Zfc3VwcG9ydGVkX2V4dCBy aXNjdl9zdXBwb3J0ZWRfc3RkX2V4dFtdID0KIAogc3RhdGljIHN0cnVjdCByaXNjdl9zdXBw b3J0ZWRfZXh0IHJpc2N2X3N1cHBvcnRlZF9zdGRfel9leHRbXSA9CiB7CisgIHsiemljYm9w IiwJCUlTQV9TUEVDX0NMQVNTX0RSQUZULAkJMSwgMCwgIDAgfSwKICAgeyJ6aWNzciIsCQlJ U0FfU1BFQ19DTEFTU18yMDE5MTIxMywJMiwgMCwgIDAgfSwKICAgeyJ6aWNzciIsCQlJU0Ff U1BFQ19DTEFTU18yMDE5MDYwOCwJMiwgMCwgIDAgfSwKICAgeyJ6aWZlbmNlaSIsCQlJU0Ff U1BFQ19DTEFTU18yMDE5MTIxMywJMiwgMCwgIDAgfSwKQEAgLTIzMTksNiArMjMyMCw4IEBA IHJpc2N2X211bHRpX3N1YnNldF9zdXBwb3J0cyAocmlzY3ZfcGFyc2Vfc3Vic2V0X3QgKnJw cywKICAgICB7CiAgICAgY2FzZSBJTlNOX0NMQVNTX0k6CiAgICAgICByZXR1cm4gcmlzY3Zf c3Vic2V0X3N1cHBvcnRzIChycHMsICJpIik7CisgICAgY2FzZSBJTlNOX0NMQVNTX1pJQ0JP UDoKKyAgICAgIHJldHVybiByaXNjdl9zdWJzZXRfc3VwcG9ydHMgKHJwcywgInppY2JvcCIp OwogICAgIGNhc2UgSU5TTl9DTEFTU19aSUNTUjoKICAgICAgIHJldHVybiByaXNjdl9zdWJz ZXRfc3VwcG9ydHMgKHJwcywgInppY3NyIik7CiAgICAgY2FzZSBJTlNOX0NMQVNTX1pJRkVO Q0VJOgpkaWZmIC0tZ2l0IGEvZ2FzL2NvbmZpZy90Yy1yaXNjdi5jIGIvZ2FzL2NvbmZpZy90 Yy1yaXNjdi5jCmluZGV4IDMyMmUwZjA3MGJhLi45NjZkMDhjZWQ4MiAxMDA2NDQKLS0tIGEv Z2FzL2NvbmZpZy90Yy1yaXNjdi5jCisrKyBiL2dhcy9jb25maWcvdGMtcmlzY3YuYwpAQCAt MTE4MCw2ICsxMTgwLDcgQEAgdmFsaWRhdGVfcmlzY3ZfaW5zbiAoY29uc3Qgc3RydWN0IHJp c2N2X29wY29kZSAqb3BjLCBpbnQgbGVuZ3RoKQogCWNhc2UgJ2EnOiB1c2VkX2JpdHMgfD0g RU5DT0RFX0pUWVBFX0lNTSAoLTFVKTsgYnJlYWs7CiAJY2FzZSAncCc6IHVzZWRfYml0cyB8 PSBFTkNPREVfQlRZUEVfSU1NICgtMVUpOyBicmVhazsKIAljYXNlICdxJzogdXNlZF9iaXRz IHw9IEVOQ09ERV9TVFlQRV9JTU0gKC0xVSk7IGJyZWFrOworCWNhc2UgJ2YnOiB1c2VkX2Jp dHMgfD0gRU5DT0RFX1NUWVBFX0lNTSAoLTFVKTsgYnJlYWs7CiAJY2FzZSAndSc6IHVzZWRf Yml0cyB8PSBFTkNPREVfVVRZUEVfSU1NICgtMVUpOyBicmVhazsKIAljYXNlICd6JzogYnJl YWs7IC8qIFplcm8gaW1tZWRpYXRlLiAgKi8KIAljYXNlICdbJzogYnJlYWs7IC8qIFVudXNl ZCBvcGVyYW5kLiAgKi8KQEAgLTMxOTEsNiArMzE5MiwyMyBAQCByaXNjdl9pcCAoY2hhciAq c3RyLCBzdHJ1Y3QgcmlzY3ZfY2xfaW5zbiAqaXAsIGV4cHJlc3Npb25TICppbW1fZXhwciwK IAkgICAgICBpbW1fZXhwci0+WF9vcCA9IE9fYWJzZW50OwogCSAgICAgIGNvbnRpbnVlOwog CisJICAgIGNhc2UgJ2YnOiAvKiBQcmVmZXRjaCBvZmZzZXQsIHBzZXVkbyBTLXR5cGUgYnV0 IGxvd2VyIDUtYml0cyB6ZXJvLiAgKi8KKwkgICAgICBpZiAocmlzY3ZfaGFuZGxlX2ltcGxp Y2l0X3plcm9fb2Zmc2V0IChpbW1fZXhwciwgYXNhcmcpKQorCQljb250aW51ZTsKKwkgICAg ICBteV9nZXRFeHByZXNzaW9uIChpbW1fZXhwciwgYXNhcmcpOworCSAgICAgIGNoZWNrX2Fi c29sdXRlX2V4cHIgKGlwLCBpbW1fZXhwciwgZmFsc2UpOworCSAgICAgIGlmICgoKHVuc2ln bmVkKSAoaW1tX2V4cHItPlhfYWRkX251bWJlcikgJiAweDFmVSkKKwkJICB8fCBpbW1fZXhw ci0+WF9hZGRfbnVtYmVyID49IChzaWduZWQpIFJJU0NWX0lNTV9SRUFDSCAvIDIKKwkJICB8 fCBpbW1fZXhwci0+WF9hZGRfbnVtYmVyIDwgLShzaWduZWQpIFJJU0NWX0lNTV9SRUFDSCAv IDIpCisJCWFzX2JhZCAoXygiaW1wcm9wZXIgcHJlZmV0Y2ggb2Zmc2V0ICglbGQpIiksCisJ CQkobG9uZykgaW1tX2V4cHItPlhfYWRkX251bWJlcik7CisJICAgICAgaXAtPmluc25fb3Bj b2RlIHw9CisJCUVOQ09ERV9TVFlQRV9JTU0gKCh1bnNpZ25lZCkgKGltbV9leHByLT5YX2Fk ZF9udW1iZXIpICYKKwkJCQkgIH4gMHgxZlUpOworCSAgICAgIGltbV9leHByLT5YX29wID0g T19hYnNlbnQ7CisJICAgICAgYXNhcmcgPSBleHByX2VuZDsKKwkgICAgICBjb250aW51ZTsK KwogCSAgICBkZWZhdWx0OgogCSAgICB1bmtub3duX3Jpc2N2X2lwX29wZXJhbmQ6CiAJICAg ICAgYXNfZmF0YWwgKF8oImludGVybmFsOiB1bmtub3duIGFyZ3VtZW50IHR5cGUgYCVzJyIp LApkaWZmIC0tZ2l0IGEvZ2FzL3Rlc3RzdWl0ZS9nYXMvcmlzY3YvemljYm9wLWZhaWwuZCBi L2dhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2JvcC1mYWlsLmQKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmQ3MzRjN2Q0ZDE1Ci0tLSAvZGV2L251bGwKKysr IGIvZ2FzL3Rlc3RzdWl0ZS9nYXMvcmlzY3YvemljYm9wLWZhaWwuZApAQCAtMCwwICsxLDMg QEAKKyNhczogLW1hcmNoPXJ2NjRnX3ppY2JvcAorI3NvdXJjZTogemljYm9wLWZhaWwucwor I2Vycm9yX291dHB1dDogemljYm9wLWZhaWwubApkaWZmIC0tZ2l0IGEvZ2FzL3Rlc3RzdWl0 ZS9nYXMvcmlzY3YvemljYm9wLWZhaWwubCBiL2dhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3pp Y2JvcC1mYWlsLmwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjRi NWQ1ZmM4NGZhCi0tLSAvZGV2L251bGwKKysrIGIvZ2FzL3Rlc3RzdWl0ZS9nYXMvcmlzY3Yv emljYm9wLWZhaWwubApAQCAtMCwwICsxLDQgQEAKKy4qOiBBc3NlbWJsZXIgbWVzc2FnZXM6 CisuKjogRXJyb3I6IGltcHJvcGVyIHByZWZldGNoIG9mZnNldCBcKDIwNDhcKQorLio6IEVy cm9yOiBpbXByb3BlciBwcmVmZXRjaCBvZmZzZXQgXCgtMjA4MFwpCisuKjogRXJyb3I6IGlt cHJvcGVyIHByZWZldGNoIG9mZnNldCBcKDI1NVwpCmRpZmYgLS1naXQgYS9nYXMvdGVzdHN1 aXRlL2dhcy9yaXNjdi96aWNib3AtZmFpbC5zIGIvZ2FzL3Rlc3RzdWl0ZS9nYXMvcmlzY3Yv emljYm9wLWZhaWwucwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4u MDM1M2M1ZmY4MGEKLS0tIC9kZXYvbnVsbAorKysgYi9nYXMvdGVzdHN1aXRlL2dhcy9yaXNj di96aWNib3AtZmFpbC5zCkBAIC0wLDAgKzEsNCBAQAordGFyZ2V0OgorCXByZWZldGNoLmkJ MjA0OCh4MSkKKwlwcmVmZXRjaC5yCS0weDgyMCh4MTYpCisJcHJlZmV0Y2gudwkrMHhmZih4 MzEpCmRpZmYgLS1naXQgYS9nYXMvdGVzdHN1aXRlL2dhcy9yaXNjdi96aWNib3AuZCBiL2dh cy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2JvcC5kCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwLi4wNTZhOGE1MDFmZgotLS0gL2Rldi9udWxsCisrKyBiL2dhcy90 ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2JvcC5kCkBAIC0wLDAgKzEsMTIgQEAKKyNhczogLW1h cmNoPXJ2NjRnX3ppY2JvcAorI3NvdXJjZTogemljYm9wLnMKKyNvYmpkdW1wOiAtZHIKKwor Lio6WyAJXStmaWxlIGZvcm1hdCAuKgorCitEaXNhc3NlbWJseSBvZiBzZWN0aW9uIC50ZXh0 OgorCiswKzAwMCA8dGFyZ2V0PjoKK1sgCV0rWzAtOWEtZl0rOlsgCV0rMDIwMGUwMTNbIAld K3ByZWZldGNoXC5pWyAJXSszMlwocmFcKQorWyAJXStbMC05YS1mXSs6WyAJXSs4MDE4NjAx M1sgCV0rcHJlZmV0Y2hcLnJbIAldKy0yMDQ4XChhNlwpCitbIAldK1swLTlhLWZdKzpbIAld KzdlM2ZlMDEzWyAJXStwcmVmZXRjaFwud1sgCV0rMjAxNlwodDZcKQpkaWZmIC0tZ2l0IGEv Z2FzL3Rlc3RzdWl0ZS9nYXMvcmlzY3YvemljYm9wLnMgYi9nYXMvdGVzdHN1aXRlL2dhcy9y aXNjdi96aWNib3AucwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4u ZmZlMjAxNGJlNmYKLS0tIC9kZXYvbnVsbAorKysgYi9nYXMvdGVzdHN1aXRlL2dhcy9yaXNj di96aWNib3AucwpAQCAtMCwwICsxLDQgQEAKK3RhcmdldDoKKwlwcmVmZXRjaC5pCTB4MjAo eDEpCisJcHJlZmV0Y2gucgktMjA0OCh4MTYpCisJcHJlZmV0Y2gudwkrMHg3ZTAoeDMxKQpk aWZmIC0tZ2l0IGEvaW5jbHVkZS9vcGNvZGUvcmlzY3Ytb3BjLmggYi9pbmNsdWRlL29wY29k ZS9yaXNjdi1vcGMuaAppbmRleCAwMWNkM2E0ZTlkZC4uMTU3MmM4NGYwYmUgMTAwNjQ0Ci0t LSBhL2luY2x1ZGUvb3Bjb2RlL3Jpc2N2LW9wYy5oCisrKyBiL2luY2x1ZGUvb3Bjb2RlL3Jp c2N2LW9wYy5oCkBAIC0yMDI5LDYgKzIwMjksMTMgQEAKICNkZWZpbmUgTUFTS19IU1ZfVyAw eGZlMDA3ZmZmCiAjZGVmaW5lIE1BVENIX0hTVl9EIDB4NmUwMDQwNzMKICNkZWZpbmUgTUFT S19IU1ZfRCAweGZlMDA3ZmZmCisvKiBaaWNib3AgaGludCBpbnN0cnVjdGlvbnMuICovCisj ZGVmaW5lIE1BVENIX1BSRUZFVENIX0kgMHg2MDEzCisjZGVmaW5lIE1BU0tfUFJFRkVUQ0hf SSAweDFmMDdmZmYKKyNkZWZpbmUgTUFUQ0hfUFJFRkVUQ0hfUiAweDEwNjAxMworI2RlZmlu ZSBNQVNLX1BSRUZFVENIX1IgMHgxZjA3ZmZmCisjZGVmaW5lIE1BVENIX1BSRUZFVENIX1cg MHgzMDYwMTMKKyNkZWZpbmUgTUFTS19QUkVGRVRDSF9XIDB4MWYwN2ZmZgogLyogVW5wcml2 aWxlZ2VkIENvdW50ZXIvVGltZXJzIENTUiBhZGRyZXNzZXMuICAqLwogI2RlZmluZSBDU1Jf Q1lDTEUgMHhjMDAKICNkZWZpbmUgQ1NSX1RJTUUgMHhjMDEKZGlmZiAtLWdpdCBhL2luY2x1 ZGUvb3Bjb2RlL3Jpc2N2LmggYi9pbmNsdWRlL29wY29kZS9yaXNjdi5oCmluZGV4IDA0OGFi MGE1ZDY4Li41NDYyYjVlY2VhYiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9vcGNvZGUvcmlzY3Yu aAorKysgYi9pbmNsdWRlL29wY29kZS9yaXNjdi5oCkBAIC0zODgsNiArMzg4LDcgQEAgZW51 bSByaXNjdl9pbnNuX2NsYXNzCiAgIElOU05fQ0xBU1NfViwKICAgSU5TTl9DTEFTU19aVkVG LAogICBJTlNOX0NMQVNTX1NWSU5WQUwsCisgIElOU05fQ0xBU1NfWklDQk9QLAogfTsKIAog LyogVGhpcyBzdHJ1Y3R1cmUgaG9sZHMgaW5mb3JtYXRpb24gZm9yIGEgcGFydGljdWxhciBp bnN0cnVjdGlvbi4gICovCmRpZmYgLS1naXQgYS9vcGNvZGVzL3Jpc2N2LWRpcy5jIGIvb3Bj b2Rlcy9yaXNjdi1kaXMuYwppbmRleCAzNDcyNGQ0YWVjNS4uNTdiNzk4ZDhlMTQgMTAwNjQ0 Ci0tLSBhL29wY29kZXMvcmlzY3YtZGlzLmMKKysrIGIvb3Bjb2Rlcy9yaXNjdi1kaXMuYwpA QCAtNDI0LDYgKzQyNCwxMCBAQCBwcmludF9pbnNuX2FyZ3MgKGNvbnN0IGNoYXIgKm9wYXJn LCBpbnNuX3QgbCwgYmZkX3ZtYSBwYywgZGlzYXNzZW1ibGVfaW5mbyAqaW5mbwogCSAgcHJp bnQgKGluZm8tPnN0cmVhbSwgIiVkIiwgKGludClFWFRSQUNUX1NUWVBFX0lNTSAobCkpOwog CSAgYnJlYWs7CiAKKwljYXNlICdmJzoKKwkgIHByaW50IChpbmZvLT5zdHJlYW0sICIlZCIs IChpbnQpRVhUUkFDVF9TVFlQRV9JTU0gKGwpKTsKKwkgIGJyZWFrOworCiAJY2FzZSAnYSc6 CiAJICBpbmZvLT50YXJnZXQgPSBFWFRSQUNUX0pUWVBFX0lNTSAobCkgKyBwYzsKIAkgICgq aW5mby0+cHJpbnRfYWRkcmVzc19mdW5jKSAoaW5mby0+dGFyZ2V0LCBpbmZvKTsKZGlmZiAt LWdpdCBhL29wY29kZXMvcmlzY3Ytb3BjLmMgYi9vcGNvZGVzL3Jpc2N2LW9wYy5jCmluZGV4 IDJkYTBmN2NmMGE0Li5iZDIwMGQ3MzZlNSAxMDA2NDQKLS0tIGEvb3Bjb2Rlcy9yaXNjdi1v cGMuYworKysgYi9vcGNvZGVzL3Jpc2N2LW9wYy5jCkBAIC0zODgsNiArMzg4LDkgQEAgY29u c3Qgc3RydWN0IHJpc2N2X29wY29kZSByaXNjdl9vcGNvZGVzW10gPQogeyJsdyIsICAgICAg ICAgIDAsIElOU05fQ0xBU1NfSSwgImQsbyhzKSIsICAgIE1BVENIX0xXLCBNQVNLX0xXLCBt YXRjaF9vcGNvZGUsIElOU05fRFJFRnxJTlNOXzRfQllURSB9LAogeyJsdyIsICAgICAgICAg IDAsIElOU05fQ0xBU1NfSSwgImQsQSIsICAgICAgIDAsIChpbnQpIE1fTFcsIG1hdGNoX25l dmVyLCBJTlNOX01BQ1JPIH0sCiB7Im5vdCIsICAgICAgICAgMCwgSU5TTl9DTEFTU19JLCAi ZCxzIiwgICAgICAgTUFUQ0hfWE9SSXxNQVNLX0lNTSwgTUFTS19YT1JJfE1BU0tfSU1NLCBt YXRjaF9vcGNvZGUsIElOU05fQUxJQVMgfSwKK3sicHJlZmV0Y2guaSIsICAwLCBJTlNOX0NM QVNTX1pJQ0JPUCwgImYocykiLCBNQVRDSF9QUkVGRVRDSF9JLCBNQVNLX1BSRUZFVENIX0ks IG1hdGNoX29wY29kZSwgMCB9LAoreyJwcmVmZXRjaC5yIiwgIDAsIElOU05fQ0xBU1NfWklD Qk9QLCAiZihzKSIsIE1BVENIX1BSRUZFVENIX1IsIE1BU0tfUFJFRkVUQ0hfUiwgbWF0Y2hf b3Bjb2RlLCAwIH0sCit7InByZWZldGNoLnciLCAgMCwgSU5TTl9DTEFTU19aSUNCT1AsICJm KHMpIiwgTUFUQ0hfUFJFRkVUQ0hfVywgTUFTS19QUkVGRVRDSF9XLCBtYXRjaF9vcGNvZGUs IDAgfSwKIHsib3JpIiwgICAgICAgICAwLCBJTlNOX0NMQVNTX0ksICJkLHMsaiIsICAgICBN QVRDSF9PUkksIE1BU0tfT1JJLCBtYXRjaF9vcGNvZGUsIDAgfSwKIHsib3IiLCAgICAgICAg ICAwLCBJTlNOX0NMQVNTX0MsICJDcyxDdyxDdCIsICBNQVRDSF9DX09SLCBNQVNLX0NfT1Is IG1hdGNoX29wY29kZSwgSU5TTl9BTElBUyB9LAogeyJvciIsICAgICAgICAgIDAsIElOU05f Q0xBU1NfQywgIkNzLEN0LEN3IiwgIE1BVENIX0NfT1IsIE1BU0tfQ19PUiwgbWF0Y2hfb3Bj b2RlLCBJTlNOX0FMSUFTIH0sCi0tIAoyLjMyLjAKCg== --------------vG0Y101S1Swf9qfyya6paEdm Content-Type: text/plain; charset=UTF-8; name="0002-RISC-V-Cache-management-instructions.patch" Content-Disposition: attachment; filename="0002-RISC-V-Cache-management-instructions.patch" Content-Transfer-Encoding: base64 RnJvbSA1OTZjYWJhOTUwNDgyZGQ2YTZkYzBmNTY0ZTliZTlkNTZjODFiYjQ4IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpNZXNzYWdlLUlkOiA8NTk2Y2FiYTk1MDQ4MmRkNmE2ZGMwZjU2 NGU5YmU5ZDU2YzgxYmI0OC4xNjQ1NzcxODk1LmdpdC5yZXNlYXJjaF90cmFzaW9AaXJxLmE0 bGcuY29tPgpJbi1SZXBseS1UbzogPDJjZjQ1MWM2NTMzNTJlNmY1ZDE3NjlmMzZhMmE0OGYx ZDU4MjBhZTEuMTY0NTc3MTg5NS5naXQucmVzZWFyY2hfdHJhc2lvQGlycS5hNGxnLmNvbT4K UmVmZXJlbmNlczogPDJjZjQ1MWM2NTMzNTJlNmY1ZDE3NjlmMzZhMmE0OGYxZDU4MjBhZTEu MTY0NTc3MTg5NS5naXQucmVzZWFyY2hfdHJhc2lvQGlycS5hNGxnLmNvbT4KRnJvbTogVHN1 a2FzYSBPSSA8cmVzZWFyY2hfdHJhc2lvQGlycS5hNGxnLmNvbT4KRGF0ZTogVHVlLCAxMSBK YW4gMjAyMiAxOToxNDowMiArMDkwMApTdWJqZWN0OiBbUEFUQ0ggMi8yXSBSSVNDLVY6IENh Y2hlIG1hbmFnZW1lbnQgaW5zdHJ1Y3Rpb25zCgpUaGlzIGNvbW1pdCBhZGRzICdaaWNib20n IC8gJ1ppY2JveicgaW5zdHJ1Y3Rpb25zIGFuZCB0ZXN0Y2FzZXMuCgpiZmQvQ2hhbmdlTG9n OgoKCSogZWxmeHgtcmlzY3YuYyAocmlzY3Zfc3VwcG9ydGVkX3N0ZF96X2V4dCk6IEFkZCAn WmljYm9tJyBhbmQKCSdaaWNib3onIHN0YW5kYXJkICdaJyBleHRlbnNpb25zLiAocmlzY3Zf bXVsdGlfc3Vic2V0X3N1cHBvcnRzKToKCUFkZCBoYW5kbGluZyBmb3IgbmV3IGluc3RydWN0 aW9uIGNsYXNzZXMuCgppbmNsdWRlL0NoYW5nZUxvZzoKCgkqIG9wY29kZS9yaXNjdi1vcGMu aCAoTUFUQ0hfQ0JPX0NMRUFOLCBNQVNLX0NCT19DTEVBTiwKCU1BVENIX0NCT19GTFVTSCwg TUFTS19DQk9fRkxVU0gsIE1BVENIX0NCT19JTlZBTCwKCU1BU0tfQ0JPX0lOVkFMLCBNQVRD SF9DQk9fWkVSTywgTUFTS19DQk9fWkVSTyk6IE5ldyBtYWNyb3MuCgkqIG9wY29kZS9yaXNj di5oIChlbnVtIHJpc2N2X2luc25fY2xhc3MpOiBBZGQgbmV3IGluc3RydWN0aW9uCgljbGFz c2VzIElOU05fQ0xBU1NfWklDQk9NIGFuZCBJTlNOX0NMQVNTX1pJQ0JPWi4KCmdhcy9DaGFu Z2VMb2c6CgoJKiB0ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2JvbS5kOiBOZXcgY2FjaGUtYmxv Y2sgbWFuYWdlbWVudAoJaW5zdHJ1Y3Rpb24gdGVzdHMuCgkqIHRlc3RzdWl0ZS9nYXMvcmlz Y3YvemljYm9tLnM6IExpa2V3aXNlLgoJKiB0ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2Jvei5k OiBOZXcgY2FjaGUtYmxvY2sgemVybyBpbnN0cnVjdGlvbgoJdGVzdHMuCgkqIHRlc3RzdWl0 ZS9nYXMvcmlzY3YvemljYm96LnM6IExpa2V3aXNlLgoKb3Bjb2Rlcy9DaGFuZ2VMb2c6CgoJ KiByaXNjdi1vcGMuYyAocmlzY3Zfb3Bjb2Rlcyk6IEFkZCBjYWNoZS1ibG9jayBtYW5hZ2Vt ZW50CglpbnN0cnVjdGlvbnMuCi0tLQogYmZkL2VsZnh4LXJpc2N2LmMgICAgICAgICAgICAg ICAgfCAgNiArKysrKysKIGdhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2JvbS5kIHwgMTUg KysrKysrKysrKysrKysrCiBnYXMvdGVzdHN1aXRlL2dhcy9yaXNjdi96aWNib20ucyB8ICA3 ICsrKysrKysKIGdhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2Jvei5kIHwgMTEgKysrKysr KysrKysKIGdhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2Jvei5zIHwgIDMgKysrCiBpbmNs dWRlL29wY29kZS9yaXNjdi1vcGMuaCAgICAgICB8ICA5ICsrKysrKysrKwogaW5jbHVkZS9v cGNvZGUvcmlzY3YuaCAgICAgICAgICAgfCAgMiArKwogb3Bjb2Rlcy9yaXNjdi1vcGMuYyAg ICAgICAgICAgICAgfCAgNiArKysrKysKIDggZmlsZXMgY2hhbmdlZCwgNTkgaW5zZXJ0aW9u cygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGdhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2Jv bS5kCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2FzL3Rlc3RzdWl0ZS9nYXMvcmlzY3YvemljYm9t LnMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnYXMvdGVzdHN1aXRlL2dhcy9yaXNjdi96aWNib3ou ZAogY3JlYXRlIG1vZGUgMTAwNjQ0IGdhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2Jvei5z CgpkaWZmIC0tZ2l0IGEvYmZkL2VsZnh4LXJpc2N2LmMgYi9iZmQvZWxmeHgtcmlzY3YuYwpp bmRleCA4M2NkOTBkMDA2YS4uYjc2MWI1OTBkZDAgMTAwNjQ0Ci0tLSBhL2JmZC9lbGZ4eC1y aXNjdi5jCisrKyBiL2JmZC9lbGZ4eC1yaXNjdi5jCkBAIC0xMTcyLDcgKzExNzIsOSBAQCBz dGF0aWMgc3RydWN0IHJpc2N2X3N1cHBvcnRlZF9leHQgcmlzY3Zfc3VwcG9ydGVkX3N0ZF9l eHRbXSA9CiAKIHN0YXRpYyBzdHJ1Y3QgcmlzY3Zfc3VwcG9ydGVkX2V4dCByaXNjdl9zdXBw b3J0ZWRfc3RkX3pfZXh0W10gPQogeworICB7InppY2JvbSIsCQlJU0FfU1BFQ19DTEFTU19E UkFGVCwJCTEsIDAsICAwIH0sCiAgIHsiemljYm9wIiwJCUlTQV9TUEVDX0NMQVNTX0RSQUZU LAkJMSwgMCwgIDAgfSwKKyAgeyJ6aWNib3oiLAkJSVNBX1NQRUNfQ0xBU1NfRFJBRlQsCQkx LCAwLCAgMCB9LAogICB7InppY3NyIiwJCUlTQV9TUEVDX0NMQVNTXzIwMTkxMjEzLAkyLCAw LCAgMCB9LAogICB7InppY3NyIiwJCUlTQV9TUEVDX0NMQVNTXzIwMTkwNjA4LAkyLCAwLCAg MCB9LAogICB7InppZmVuY2VpIiwJCUlTQV9TUEVDX0NMQVNTXzIwMTkxMjEzLAkyLCAwLCAg MCB9LApAQCAtMjMyMCw4ICsyMzIyLDEyIEBAIHJpc2N2X211bHRpX3N1YnNldF9zdXBwb3J0 cyAocmlzY3ZfcGFyc2Vfc3Vic2V0X3QgKnJwcywKICAgICB7CiAgICAgY2FzZSBJTlNOX0NM QVNTX0k6CiAgICAgICByZXR1cm4gcmlzY3Zfc3Vic2V0X3N1cHBvcnRzIChycHMsICJpIik7 CisgICAgY2FzZSBJTlNOX0NMQVNTX1pJQ0JPTToKKyAgICAgIHJldHVybiByaXNjdl9zdWJz ZXRfc3VwcG9ydHMgKHJwcywgInppY2JvbSIpOwogICAgIGNhc2UgSU5TTl9DTEFTU19aSUNC T1A6CiAgICAgICByZXR1cm4gcmlzY3Zfc3Vic2V0X3N1cHBvcnRzIChycHMsICJ6aWNib3Ai KTsKKyAgICBjYXNlIElOU05fQ0xBU1NfWklDQk9aOgorICAgICAgcmV0dXJuIHJpc2N2X3N1 YnNldF9zdXBwb3J0cyAocnBzLCAiemljYm96Iik7CiAgICAgY2FzZSBJTlNOX0NMQVNTX1pJ Q1NSOgogICAgICAgcmV0dXJuIHJpc2N2X3N1YnNldF9zdXBwb3J0cyAocnBzLCAiemljc3Ii KTsKICAgICBjYXNlIElOU05fQ0xBU1NfWklGRU5DRUk6CmRpZmYgLS1naXQgYS9nYXMvdGVz dHN1aXRlL2dhcy9yaXNjdi96aWNib20uZCBiL2dhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3pp Y2JvbS5kCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4zYTE5NGNm NmVkZgotLS0gL2Rldi9udWxsCisrKyBiL2dhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2Jv bS5kCkBAIC0wLDAgKzEsMTUgQEAKKyNhczogLW1hcmNoPXJ2NjRnX3ppY2JvbQorI3NvdXJj ZTogemljYm9tLnMKKyNvYmpkdW1wOiAtZHIKKworLio6WyAJXStmaWxlIGZvcm1hdCAuKgor CitEaXNhc3NlbWJseSBvZiBzZWN0aW9uIC50ZXh0OgorCiswKzAwMCA8dGFyZ2V0PjoKK1sg CV0rWzAtOWEtZl0rOlsgCV0rMDAxMGEwMGZbIAldK2Nib1wuY2xlYW5bIAldK3JhCitbIAld K1swLTlhLWZdKzpbIAldKzAwMWYyMDBmWyAJXStjYm9cLmNsZWFuWyAJXSt0NQorWyAJXStb MC05YS1mXSs6WyAJXSswMDIwYTAwZlsgCV0rY2JvXC5mbHVzaFsgCV0rcmEKK1sgCV0rWzAt OWEtZl0rOlsgCV0rMDAyZjIwMGZbIAldK2Nib1wuZmx1c2hbIAldK3Q1CitbIAldK1swLTlh LWZdKzpbIAldKzAwMDBhMDBmWyAJXStjYm9cLmludmFsWyAJXStyYQorWyAJXStbMC05YS1m XSs6WyAJXSswMDBmMjAwZlsgCV0rY2JvXC5pbnZhbFsgCV0rdDUKZGlmZiAtLWdpdCBhL2dh cy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2JvbS5zIGIvZ2FzL3Rlc3RzdWl0ZS9nYXMvcmlz Y3YvemljYm9tLnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjc3 OGE2MWU3NmYzCi0tLSAvZGV2L251bGwKKysrIGIvZ2FzL3Rlc3RzdWl0ZS9nYXMvcmlzY3Yv emljYm9tLnMKQEAgLTAsMCArMSw3IEBACit0YXJnZXQ6CisJY2JvLmNsZWFuCXgxCisJY2Jv LmNsZWFuCXgzMAorCWNiby5mbHVzaAl4MQorCWNiby5mbHVzaAl4MzAKKwljYm8uaW52YWwJ eDEKKwljYm8uaW52YWwJeDMwCmRpZmYgLS1naXQgYS9nYXMvdGVzdHN1aXRlL2dhcy9yaXNj di96aWNib3ouZCBiL2dhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2Jvei5kCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi43Njg2ZWRiZTY3NwotLS0gL2Rldi9u dWxsCisrKyBiL2dhcy90ZXN0c3VpdGUvZ2FzL3Jpc2N2L3ppY2Jvei5kCkBAIC0wLDAgKzEs MTEgQEAKKyNhczogLW1hcmNoPXJ2NjRnX3ppY2JvegorI3NvdXJjZTogemljYm96LnMKKyNv YmpkdW1wOiAtZHIKKworLio6WyAJXStmaWxlIGZvcm1hdCAuKgorCitEaXNhc3NlbWJseSBv ZiBzZWN0aW9uIC50ZXh0OgorCiswKzAwMCA8dGFyZ2V0PjoKK1sgCV0rWzAtOWEtZl0rOlsg CV0rMDA0MGEwMGZbIAldK2Nib1wuemVyb1sgCV0rcmEKK1sgCV0rWzAtOWEtZl0rOlsgCV0r MDA0ZjIwMGZbIAldK2Nib1wuemVyb1sgCV0rdDUKZGlmZiAtLWdpdCBhL2dhcy90ZXN0c3Vp dGUvZ2FzL3Jpc2N2L3ppY2Jvei5zIGIvZ2FzL3Rlc3RzdWl0ZS9nYXMvcmlzY3YvemljYm96 LnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmJhNzViNzg3YjAw Ci0tLSAvZGV2L251bGwKKysrIGIvZ2FzL3Rlc3RzdWl0ZS9nYXMvcmlzY3YvemljYm96LnMK QEAgLTAsMCArMSwzIEBACit0YXJnZXQ6CisJY2JvLnplcm8JeDEKKwljYm8uemVybwl4MzAK ZGlmZiAtLWdpdCBhL2luY2x1ZGUvb3Bjb2RlL3Jpc2N2LW9wYy5oIGIvaW5jbHVkZS9vcGNv ZGUvcmlzY3Ytb3BjLmgKaW5kZXggMTU3MmM4NGYwYmUuLjNlZWEzM2E1ZGFlIDEwMDY0NAot LS0gYS9pbmNsdWRlL29wY29kZS9yaXNjdi1vcGMuaAorKysgYi9pbmNsdWRlL29wY29kZS9y aXNjdi1vcGMuaApAQCAtMjAzNiw2ICsyMDM2LDE1IEBACiAjZGVmaW5lIE1BU0tfUFJFRkVU Q0hfUiAweDFmMDdmZmYKICNkZWZpbmUgTUFUQ0hfUFJFRkVUQ0hfVyAweDMwNjAxMwogI2Rl ZmluZSBNQVNLX1BSRUZFVENIX1cgMHgxZjA3ZmZmCisvKiBaaWNib20vWmljYm96IGluc3Ry dWN0aW9ucy4gKi8KKyNkZWZpbmUgTUFUQ0hfQ0JPX0NMRUFOIDB4MTAyMDBmCisjZGVmaW5l IE1BU0tfQ0JPX0NMRUFOIDB4ZmZmMDdmZmYKKyNkZWZpbmUgTUFUQ0hfQ0JPX0ZMVVNIIDB4 MjAyMDBmCisjZGVmaW5lIE1BU0tfQ0JPX0ZMVVNIIDB4ZmZmMDdmZmYKKyNkZWZpbmUgTUFU Q0hfQ0JPX0lOVkFMIDB4MjAwZgorI2RlZmluZSBNQVNLX0NCT19JTlZBTCAweGZmZjA3ZmZm CisjZGVmaW5lIE1BVENIX0NCT19aRVJPIDB4NDAyMDBmCisjZGVmaW5lIE1BU0tfQ0JPX1pF Uk8gMHhmZmYwN2ZmZgogLyogVW5wcml2aWxlZ2VkIENvdW50ZXIvVGltZXJzIENTUiBhZGRy ZXNzZXMuICAqLwogI2RlZmluZSBDU1JfQ1lDTEUgMHhjMDAKICNkZWZpbmUgQ1NSX1RJTUUg MHhjMDEKZGlmZiAtLWdpdCBhL2luY2x1ZGUvb3Bjb2RlL3Jpc2N2LmggYi9pbmNsdWRlL29w Y29kZS9yaXNjdi5oCmluZGV4IDU0NjJiNWVjZWFiLi5iNzY5NzY5YjRlYyAxMDA2NDQKLS0t IGEvaW5jbHVkZS9vcGNvZGUvcmlzY3YuaAorKysgYi9pbmNsdWRlL29wY29kZS9yaXNjdi5o CkBAIC0zODgsNyArMzg4LDkgQEAgZW51bSByaXNjdl9pbnNuX2NsYXNzCiAgIElOU05fQ0xB U1NfViwKICAgSU5TTl9DTEFTU19aVkVGLAogICBJTlNOX0NMQVNTX1NWSU5WQUwsCisgIElO U05fQ0xBU1NfWklDQk9NLAogICBJTlNOX0NMQVNTX1pJQ0JPUCwKKyAgSU5TTl9DTEFTU19a SUNCT1osCiB9OwogCiAvKiBUaGlzIHN0cnVjdHVyZSBob2xkcyBpbmZvcm1hdGlvbiBmb3Ig YSBwYXJ0aWN1bGFyIGluc3RydWN0aW9uLiAgKi8KZGlmZiAtLWdpdCBhL29wY29kZXMvcmlz Y3Ytb3BjLmMgYi9vcGNvZGVzL3Jpc2N2LW9wYy5jCmluZGV4IGJkMjAwZDczNmU1Li5jNDcy YzZkMzI1MiAxMDA2NDQKLS0tIGEvb3Bjb2Rlcy9yaXNjdi1vcGMuYworKysgYi9vcGNvZGVz L3Jpc2N2LW9wYy5jCkBAIC04NTIsNiArODUyLDEyIEBAIGNvbnN0IHN0cnVjdCByaXNjdl9v cGNvZGUgcmlzY3Zfb3Bjb2Rlc1tdID0KIHsic2ZlbmNlLnZtYSIsIDAsIElOU05fQ0xBU1Nf SSwgICAgInMsdCIsICAgICAgTUFUQ0hfU0ZFTkNFX1ZNQSwgTUFTS19TRkVOQ0VfVk1BLCBt YXRjaF9vcGNvZGUsIDAgfSwKIHsid2ZpIiwgICAgICAgIDAsIElOU05fQ0xBU1NfSSwgICAg IiIsICAgICAgICAgTUFUQ0hfV0ZJLCBNQVNLX1dGSSwgbWF0Y2hfb3Bjb2RlLCAwIH0sCiAK Ky8qIFppY2JvbSBhbmQgWmljYm96IGluc3RydWN0aW9ucy4gICovCit7ImNiby5jbGVhbiIs ICAwLCBJTlNOX0NMQVNTX1pJQ0JPTSwgInMiLCBNQVRDSF9DQk9fQ0xFQU4sIE1BU0tfQ0JP X0NMRUFOLCBtYXRjaF9vcGNvZGUsIDAgfSwKK3siY2JvLmZsdXNoIiwgIDAsIElOU05fQ0xB U1NfWklDQk9NLCAicyIsIE1BVENIX0NCT19GTFVTSCwgTUFTS19DQk9fRkxVU0gsIG1hdGNo X29wY29kZSwgMCB9LAoreyJjYm8uaW52YWwiLCAgMCwgSU5TTl9DTEFTU19aSUNCT00sICJz IiwgTUFUQ0hfQ0JPX0lOVkFMLCBNQVNLX0NCT19JTlZBTCwgbWF0Y2hfb3Bjb2RlLCAwIH0s Cit7ImNiby56ZXJvIiwgICAwLCBJTlNOX0NMQVNTX1pJQ0JPWiwgInMiLCBNQVRDSF9DQk9f WkVSTywgTUFTS19DQk9fWkVSTywgbWF0Y2hfb3Bjb2RlLCAwIH0sCisKIC8qIFpiYiBvciB6 YmtiIGluc3RydWN0aW9ucy4gICovCiB7ImNseiIsICAgICAgICAwLCBJTlNOX0NMQVNTX1pC QiwgICJkLHMiLCAgIE1BVENIX0NMWiwgTUFTS19DTFosIG1hdGNoX29wY29kZSwgMCB9LAog eyJjdHoiLCAgICAgICAgMCwgSU5TTl9DTEFTU19aQkIsICAiZCxzIiwgICBNQVRDSF9DVFos IE1BU0tfQ1RaLCBtYXRjaF9vcGNvZGUsIDAgfSwKLS0gCjIuMzIuMAoK --------------vG0Y101S1Swf9qfyya6paEdm--