From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Adalbert=20Laz=C4=83r?= Subject: [RFC PATCH v6 79/92] kvm: x86: emulate movsd xmm, m64 Date: Fri, 9 Aug 2019 19:00:34 +0300 Message-ID: <20190809160047.8319-80-alazar@bitdefender.com> References: <20190809160047.8319-1-alazar@bitdefender.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190809160047.8319-1-alazar@bitdefender.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: virtualization-bounces@lists.linux-foundation.org Errors-To: virtualization-bounces@lists.linux-foundation.org To: kvm@vger.kernel.org Cc: Tamas K Lengyel , Weijiang Yang , Yu C , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= , Jan Kiszka , =?UTF-8?q?Samuel=20Laur=C3=A9n?= , Konrad Rzeszutek Wilk , virtualization@lists.linux-foundation.org, =?UTF-8?q?Adalbert=20Laz=C4=83r?= , linux-mm@kvack.org, Patrick Colp , Mathieu Tarral , Stefan Hajnoczi , Paolo Bonzini , Zhang@mail.linuxfoundation.org, =?UTF-8?q?Mihai=20Don=C8=9Bu?= List-Id: virtualization@lists.linuxfoundation.org RnJvbTogTWloYWkgRG9uyJt1IDxtZG9udHVAYml0ZGVmZW5kZXIuY29tPgoKVGhpcyBpcyBuZWVk ZWQgaW4gb3JkZXIgdG8gYmUgYWJsZSB0byBzdXBwb3J0IGd1ZXN0IGNvZGUgdGhhdCB1c2VzIG1v dnNkIHRvCndyaXRlIGludG8gcGFnZXMgdGhhdCBhcmUgbWFya2VkIGZvciB3cml0ZSB0cmFja2lu Zy4KClNpZ25lZC1vZmYtYnk6IE1paGFpIERvbsibdSA8bWRvbnR1QGJpdGRlZmVuZGVyLmNvbT4K U2lnbmVkLW9mZi1ieTogQWRhbGJlcnQgTGF6xINyIDxhbGF6YXJAYml0ZGVmZW5kZXIuY29tPgot LS0KIGFyY2gveDg2L2t2bS9lbXVsYXRlLmMgfCAzMiArKysrKysrKysrKysrKysrKysrKysrKysr KystLS0tLQogMSBmaWxlIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvYXJjaC94ODYva3ZtL2VtdWxhdGUuYyBiL2FyY2gveDg2L2t2bS9lbXVs YXRlLmMKaW5kZXggMzQ0MzFjZjMxZjc0Li45ZDM4Zjg5MmJlZWEgMTAwNjQ0Ci0tLSBhL2FyY2gv eDg2L2t2bS9lbXVsYXRlLmMKKysrIGIvYXJjaC94ODYva3ZtL2VtdWxhdGUuYwpAQCAtMTE3Nyw2 ICsxMTc3LDI3IEBAIHN0YXRpYyBpbnQgZW1fZm5zdHN3KHN0cnVjdCB4ODZfZW11bGF0ZV9jdHh0 ICpjdHh0KQogCXJldHVybiBYODZFTVVMX0NPTlRJTlVFOwogfQogCitzdGF0aWMgdTggc2ltZF9w cmVmaXhfdG9fYnl0ZXMoY29uc3Qgc3RydWN0IHg4Nl9lbXVsYXRlX2N0eHQgKmN0eHQsCisJCQkg ICAgICAgaW50IHNpbWRfcHJlZml4KQoreworCXU4IGJ5dGVzOworCisJc3dpdGNoIChjdHh0LT5i KSB7CisJY2FzZSAweDExOgorCQkvKiBtb3ZzZCB4bW0sIG02NCAqLworCQkvKiBtb3Z1cHMgeG1t LCBtMTI4ICovCisJCWlmIChzaW1kX3ByZWZpeCA9PSAweGYyKSB7CisJCQlieXRlcyA9IDg7CisJ CQlicmVhazsKKwkJfQorCQkvKiBmYWxsdGhyb3VnaCAqLworCWRlZmF1bHQ6CisJCWJ5dGVzID0g MTY7CisJCWJyZWFrOworCX0KKwlyZXR1cm4gYnl0ZXM7Cit9CisKIHN0YXRpYyB2b2lkIGRlY29k ZV9yZWdpc3Rlcl9vcGVyYW5kKHN0cnVjdCB4ODZfZW11bGF0ZV9jdHh0ICpjdHh0LAogCQkJCSAg ICBzdHJ1Y3Qgb3BlcmFuZCAqb3ApCiB7CkBAIC0xMTg3LDcgKzEyMDgsNyBAQCBzdGF0aWMgdm9p ZCBkZWNvZGVfcmVnaXN0ZXJfb3BlcmFuZChzdHJ1Y3QgeDg2X2VtdWxhdGVfY3R4dCAqY3R4dCwK IAogCWlmIChjdHh0LT5kICYgU3NlKSB7CiAJCW9wLT50eXBlID0gT1BfWE1NOwotCQlvcC0+Ynl0 ZXMgPSAxNjsKKwkJb3AtPmJ5dGVzID0gY3R4dC0+b3BfYnl0ZXM7CiAJCW9wLT5hZGRyLnhtbSA9 IHJlZzsKIAkJcmVhZF9zc2VfcmVnKGN0eHQsICZvcC0+dmVjX3ZhbCwgcmVnKTsKIAkJcmV0dXJu OwpAQCAtMTIzOCw3ICsxMjU5LDcgQEAgc3RhdGljIGludCBkZWNvZGVfbW9kcm0oc3RydWN0IHg4 Nl9lbXVsYXRlX2N0eHQgKmN0eHQsCiAJCQkJY3R4dC0+ZCAmIEJ5dGVPcCk7CiAJCWlmIChjdHh0 LT5kICYgU3NlKSB7CiAJCQlvcC0+dHlwZSA9IE9QX1hNTTsKLQkJCW9wLT5ieXRlcyA9IDE2Owor CQkJb3AtPmJ5dGVzID0gY3R4dC0+b3BfYnl0ZXM7CiAJCQlvcC0+YWRkci54bW0gPSBjdHh0LT5t b2RybV9ybTsKIAkJCXJlYWRfc3NlX3JlZyhjdHh0LCAmb3AtPnZlY192YWwsIGN0eHQtPm1vZHJt X3JtKTsKIAkJCXJldHVybiByYzsKQEAgLTQ1MjksNyArNDU1MCw3IEBAIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZ3ByZWZpeCBwZnhfMGZfMmIgPSB7CiB9OwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGdw cmVmaXggcGZ4XzBmXzEwXzBmXzExID0gewotCUkoVW5hbGlnbmVkLCBlbV9tb3YpLCBJKFVuYWxp Z25lZCwgZW1fbW92KSwgTiwgTiwKKwlJKFVuYWxpZ25lZCwgZW1fbW92KSwgSShVbmFsaWduZWQs IGVtX21vdiksIEkoVW5hbGlnbmVkLCBlbV9tb3YpLCBOLAogfTsKIAogc3RhdGljIGNvbnN0IHN0 cnVjdCBncHJlZml4IHBmeF8wZl8yOF8wZl8yOSA9IHsKQEAgLTUwOTcsNyArNTExOCw3IEBAIGlu dCB4ODZfZGVjb2RlX2luc24oc3RydWN0IHg4Nl9lbXVsYXRlX2N0eHQgKmN0eHQsIHZvaWQgKmlu c24sIGludCBpbnNuX2xlbikKIHsKIAlpbnQgcmMgPSBYODZFTVVMX0NPTlRJTlVFOwogCWludCBt b2RlID0gY3R4dC0+bW9kZTsKLQlpbnQgZGVmX29wX2J5dGVzLCBkZWZfYWRfYnl0ZXMsIGdvZmZz ZXQsIHNpbWRfcHJlZml4OworCWludCBkZWZfb3BfYnl0ZXMsIGRlZl9hZF9ieXRlcywgZ29mZnNl dCwgc2ltZF9wcmVmaXggPSAwOwogCWJvb2wgb3BfcHJlZml4ID0gZmFsc2U7CiAJYm9vbCBoYXNf c2VnX292ZXJyaWRlID0gZmFsc2U7CiAJc3RydWN0IG9wY29kZSBvcGNvZGU7CkBAIC01MzIwLDcg KzUzNDEsOCBAQCBpbnQgeDg2X2RlY29kZV9pbnNuKHN0cnVjdCB4ODZfZW11bGF0ZV9jdHh0ICpj dHh0LCB2b2lkICppbnNuLCBpbnQgaW5zbl9sZW4pCiAJCQljdHh0LT5vcF9ieXRlcyA9IDQ7CiAK IAkJaWYgKGN0eHQtPmQgJiBTc2UpCi0JCQljdHh0LT5vcF9ieXRlcyA9IDE2OworCQkJY3R4dC0+ b3BfYnl0ZXMgPSBzaW1kX3ByZWZpeF90b19ieXRlcyhjdHh0LAorCQkJCQkJCSAgICAgIHNpbWRf cHJlZml4KTsKIAkJZWxzZSBpZiAoY3R4dC0+ZCAmIE1teCkKIAkJCWN0eHQtPm9wX2J5dGVzID0g ODsKIAl9Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClZp cnR1YWxpemF0aW9uIG1haWxpbmcgbGlzdApWaXJ0dWFsaXphdGlvbkBsaXN0cy5saW51eC1mb3Vu ZGF0aW9uLm9yZwpodHRwczovL2xpc3RzLmxpbnV4Zm91bmRhdGlvbi5vcmcvbWFpbG1hbi9saXN0 aW5mby92aXJ0dWFsaXphdGlvbg==