From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: [PATCH v1 5/9] arm64/insn: introduce aarch64_insn_gen_{nop|branch_imm}() helper functions Date: Sun, 14 Aug 2016 19:07:50 -0400 Message-ID: <1471216074-3007-6-git-send-email-konrad.wilk@oracle.com> References: <1471216074-3007-1-git-send-email-konrad.wilk@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bZ4W7-000173-Pl for xen-devel@lists.xenproject.org; Sun, 14 Aug 2016 23:08:31 +0000 In-Reply-To: <1471216074-3007-1-git-send-email-konrad.wilk@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org, konrad@kernel.org, ross.lagerwall@citrix.com Cc: julien.grall@arm.com, sstabellini@kernel.org, Konrad Rzeszutek Wilk List-Id: xen-devel@lists.xenproject.org VGhpcyBpcyBjb3BpZWQgZnJvbSBMaW51eCA0LjcsIGFuZCB0aGUgaW5pdGlhbCBjb21taXQKdGhh dCBwdXQgdGhpcyBpbiBpcyA1YzViZjI1ZDRmN2E5NTAzODJmOTRmYzEyMGE1ODE4MTk3YjQ4ZmU5 CiJhcm02NDogaW50cm9kdWNlIGFhcmNoNjRfaW5zbl9nZW5fe25vcHxicmFuY2hfaW1tfSgpIGhl bHBlciBmdW5jdGlvbnMiCgpUaGlzIGxheXMgdGhlIGdyb3VuZHdvcmsgZm9yIExpdmVwYXRjaCB0 byBnZW5lcmF0ZSB0aGUKdHJhbXBvbGluZSB0byBqdW1wIHRvIHRoZSBuZXcgcmVwbGFjZW1lbnQg ZnVuY3Rpb24uCkFsc28gYWxsb3dzIHVzIHRvIE5PUCB0aGUgY2FsbHNpdGVzLgoKVGhpcyBsYXlz IHRoZSBncm91bmR3b3JrIGZvciBMaXZlcGF0Y2ggdG8gZ2VuZXJhdGUgdGhlCnRyYW1wb2xpbmUg dG8ganVtcCB0byB0aGUgbmV3IHJlcGxhY2VtZW50IGZ1bmN0aW9uLgpBbmQgYWxzbyB0byBOT1Ag aW5zbnMuCgpTaWduZWQtb2ZmLWJ5OiBLb25yYWQgUnplc3p1dGVrIFdpbGsgPGtvbnJhZC53aWxr QG9yYWNsZS5jb20+Ci0tCkNjOiBSb3NzIExhZ2Vyd2FsbCA8cm9zcy5sYWdlcndhbGxAY2l0cml4 LmNvbT4KQ2M6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4KQ2M6 IEp1bGllbiBHcmFsbCA8anVsaWVuLmdyYWxsQGFybS5jb20+CgpSRkM6IEZpcnN0IHN1Ym1pc3Np b24KdjE6IFRoZSBmdWxsIGNvcHkgb2YgaW5zbl9nZW5fYnJhbmNoIGluc3RlYWQgb2YganVzdCB0 aGUgY29kZSB0byBtYWtlIGJyYW5jaAotLS0KIHhlbi9hcmNoL2FybS9hcm02NC9pbnNuLmMgICAg ICAgIHwgNjEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogeGVuL2lu Y2x1ZGUvYXNtLWFybS9hcm02NC9pbnNuLmggfCAyMyArKysrKysrKysrKysrKysKIDIgZmlsZXMg Y2hhbmdlZCwgODQgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9hcm02 NC9pbnNuLmMgYi94ZW4vYXJjaC9hcm0vYXJtNjQvaW5zbi5jCmluZGV4IDEyYjRkOTYuLmM1Zjdl OTMgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL2FybS9hcm02NC9pbnNuLmMKKysrIGIveGVuL2FyY2gv YXJtL2FybTY0L2luc24uYwpAQCAtMTU3LDYgKzE1Nyw2NyBAQCB1MzIgX19rcHJvYmVzIGFhcmNo NjRfaW5zbl9lbmNvZGVfaW1tZWRpYXRlKGVudW0gYWFyY2g2NF9pbnNuX2ltbV90eXBlIHR5cGUs CiAJcmV0dXJuIGluc247CiB9CiAKK3N0YXRpYyBpbmxpbmUgbG9uZyBicmFuY2hfaW1tX2NvbW1v bih1bnNpZ25lZCBsb25nIHBjLCB1bnNpZ25lZCBsb25nIGFkZHIsCisJCQkJICAgICBsb25nIHJh bmdlKQoreworCWxvbmcgb2Zmc2V0OworCisJaWYgKChwYyAmIDB4MykgfHwgKGFkZHIgJiAweDMp KSB7CisJCXByX2VycigiJXM6IEE2NCBpbnN0cnVjdGlvbnMgbXVzdCBiZSB3b3JkIGFsaWduZWRc biIsIF9fZnVuY19fKTsKKwkJcmV0dXJuIHJhbmdlOworCX0KKworCW9mZnNldCA9ICgobG9uZylh ZGRyIC0gKGxvbmcpcGMpOworCisJaWYgKG9mZnNldCA8IC1yYW5nZSB8fCBvZmZzZXQgPj0gcmFu Z2UpIHsKKwkJcHJfZXJyKCIlczogb2Zmc2V0IG91dCBvZiByYW5nZVxuIiwgX19mdW5jX18pOwor CQlyZXR1cm4gcmFuZ2U7CisJfQorCisJcmV0dXJuIG9mZnNldDsKK30KKwordTMyIF9fa3Byb2Jl cyBhYXJjaDY0X2luc25fZ2VuX2JyYW5jaF9pbW0odW5zaWduZWQgbG9uZyBwYywgdW5zaWduZWQg bG9uZyBhZGRyLAorCQkJCQkgIGVudW0gYWFyY2g2NF9pbnNuX2JyYW5jaF90eXBlIHR5cGUpCit7 CisJdTMyIGluc247CisJbG9uZyBvZmZzZXQ7CisKKwkvKgorCSAqIEIvQkwgc3VwcG9ydCBbLTEy OE0sIDEyOE0pIG9mZnNldAorCSAqIEFSTTY0IHZpcnR1YWwgYWRkcmVzcyBhcnJhbmdlbWVudCBn dWFyYW50ZWVzIGFsbCBrZXJuZWwgYW5kIG1vZHVsZQorCSAqIHRleHRzIGFyZSB3aXRoaW4gKy8t MTI4TS4KKwkgKi8KKwlvZmZzZXQgPSBicmFuY2hfaW1tX2NvbW1vbihwYywgYWRkciwgU1pfMTI4 TSk7CisJaWYgKG9mZnNldCA+PSBTWl8xMjhNKQorCQlyZXR1cm4gQUFSQ0g2NF9CUkVBS19GQVVM VDsKKworCXN3aXRjaCAodHlwZSkgeworCWNhc2UgQUFSQ0g2NF9JTlNOX0JSQU5DSF9MSU5LOgor CQlpbnNuID0gYWFyY2g2NF9pbnNuX2dldF9ibF92YWx1ZSgpOworCQlicmVhazsKKwljYXNlIEFB UkNINjRfSU5TTl9CUkFOQ0hfTk9MSU5LOgorCQlpbnNuID0gYWFyY2g2NF9pbnNuX2dldF9iX3Zh bHVlKCk7CisJCWJyZWFrOworCWRlZmF1bHQ6CisJCXByX2VycigiJXM6IHVua25vd24gYnJhbmNo IGVuY29kaW5nICVkXG4iLCBfX2Z1bmNfXywgdHlwZSk7CisJCXJldHVybiBBQVJDSDY0X0JSRUFL X0ZBVUxUOworCX0KKworCXJldHVybiBhYXJjaDY0X2luc25fZW5jb2RlX2ltbWVkaWF0ZShBQVJD SDY0X0lOU05fSU1NXzI2LCBpbnNuLAorCQkJCQkgICAgIG9mZnNldCA+PiAyKTsKK30KKwordTMy IF9fa3Byb2JlcyBhYXJjaDY0X2luc25fZ2VuX2hpbnQoZW51bSBhYXJjaDY0X2luc25faGludF9v cCBvcCkKK3sKKwlyZXR1cm4gYWFyY2g2NF9pbnNuX2dldF9oaW50X3ZhbHVlKCkgfCBvcDsKK30K KwordTMyIF9fa3Byb2JlcyBhYXJjaDY0X2luc25fZ2VuX25vcCh2b2lkKQoreworCXJldHVybiBh YXJjaDY0X2luc25fZ2VuX2hpbnQoQUFSQ0g2NF9JTlNOX0hJTlRfTk9QKTsKK30KKwogLyoKICAq IERlY29kZSB0aGUgaW1tIGZpZWxkIG9mIGEgYnJhbmNoLCBhbmQgcmV0dXJuIHRoZSBieXRlIG9m ZnNldCBhcyBhCiAgKiBzaWduZWQgdmFsdWUgKHNvIGl0IGNhbiBiZSB1c2VkIHdoZW4gY29tcHV0 aW5nIGEgbmV3IGJyYW5jaApkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLWFybS9hcm02NC9p bnNuLmggYi94ZW4vaW5jbHVkZS9hc20tYXJtL2FybTY0L2luc24uaAppbmRleCA2Y2UzN2JlLi5j ODM2MmU1IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20tYXJtL2FybTY0L2luc24uaAorKysg Yi94ZW4vaW5jbHVkZS9hc20tYXJtL2FybTY0L2luc24uaApAQCAtMjMsNiArMjMsMTUgQEAKICNp bmNsdWRlIDx4ZW4vdHlwZXMuaD4KICNpbmNsdWRlIDx4ZW4vc3RkYm9vbC5oPgogCitlbnVtIGFh cmNoNjRfaW5zbl9oaW50X29wIHsKKwlBQVJDSDY0X0lOU05fSElOVF9OT1AJPSAweDAgPDwgNSwK KwlBQVJDSDY0X0lOU05fSElOVF9ZSUVMRAk9IDB4MSA8PCA1LAorCUFBUkNINjRfSU5TTl9ISU5U X1dGRQk9IDB4MiA8PCA1LAorCUFBUkNINjRfSU5TTl9ISU5UX1dGSQk9IDB4MyA8PCA1LAorCUFB UkNINjRfSU5TTl9ISU5UX1NFVgk9IDB4NCA8PCA1LAorCUFBUkNINjRfSU5TTl9ISU5UX1NFVkwJ PSAweDUgPDwgNSwKK307CisKIGVudW0gYWFyY2g2NF9pbnNuX2ltbV90eXBlIHsKIAlBQVJDSDY0 X0lOU05fSU1NX0FEUiwKIAlBQVJDSDY0X0lOU05fSU1NXzI2LApAQCAtMzgsNiArNDcsMTQgQEAg ZW51bSBhYXJjaDY0X2luc25faW1tX3R5cGUgewogCUFBUkNINjRfSU5TTl9JTU1fTUFYCiB9Owog CitlbnVtIGFhcmNoNjRfaW5zbl9icmFuY2hfdHlwZSB7CisJQUFSQ0g2NF9JTlNOX0JSQU5DSF9O T0xJTkssCisJQUFSQ0g2NF9JTlNOX0JSQU5DSF9MSU5LLAorCUFBUkNINjRfSU5TTl9CUkFOQ0hf UkVUVVJOLAorCUFBUkNINjRfSU5TTl9CUkFOQ0hfQ09NUF9aRVJPLAorCUFBUkNINjRfSU5TTl9C UkFOQ0hfQ09NUF9OT05aRVJPLAorfTsKKwogI2RlZmluZQlfX0FBUkNINjRfSU5TTl9GVU5DUyhh YmJyLCBtYXNrLCB2YWwpCVwKIHN0YXRpYyBhbHdheXNfaW5saW5lIGJvb2xfdCBhYXJjaDY0X2lu c25faXNfIyNhYmJyKHUzMiBjb2RlKSBcCiB7IHJldHVybiAoY29kZSAmIChtYXNrKSkgPT0gKHZh bCk7IH0gXApAQCAtNTEsNiArNjgsNyBAQCBfX0FBUkNINjRfSU5TTl9GVU5DUyhjYm56LAkweDdG MDAwMDAwLCAweDM1MDAwMDAwKQogX19BQVJDSDY0X0lOU05fRlVOQ1ModGJ6LAkweDdGMDAwMDAw LCAweDM2MDAwMDAwKQogX19BQVJDSDY0X0lOU05fRlVOQ1ModGJueiwJMHg3RjAwMDAwMCwgMHgz NzAwMDAwMCkKIF9fQUFSQ0g2NF9JTlNOX0ZVTkNTKGJjb25kLAkweEZGMDAwMDEwLCAweDU0MDAw MDAwKQorX19BQVJDSDY0X0lOU05fRlVOQ1MoaGludCwJMHhGRkZGRjAxRiwgMHhENTAzMjAxRikK IAogYm9vbCBhYXJjaDY0X2luc25faXNfYnJhbmNoX2ltbSh1MzIgaW5zbik7CiAKQEAgLTYxLDYg Kzc5LDExIEBAIHUzMiBhYXJjaDY0X2luc25fZW5jb2RlX2ltbWVkaWF0ZShlbnVtIGFhcmNoNjRf aW5zbl9pbW1fdHlwZSB0eXBlLAogczMyIGFhcmNoNjRfZ2V0X2JyYW5jaF9vZmZzZXQodTMyIGlu c24pOwogdTMyIGFhcmNoNjRfc2V0X2JyYW5jaF9vZmZzZXQodTMyIGluc24sIHMzMiBvZmZzZXQp OwogCit1MzIgYWFyY2g2NF9pbnNuX2dlbl9icmFuY2hfaW1tKHVuc2lnbmVkIGxvbmcgcGMsIHVu c2lnbmVkIGxvbmcgYWRkciwKKwkJCQllbnVtIGFhcmNoNjRfaW5zbl9icmFuY2hfdHlwZSB0eXBl KTsKK3UzMiBhYXJjaDY0X2luc25fZ2VuX2hpbnQoZW51bSBhYXJjaDY0X2luc25faGludF9vcCBv cCk7Cit1MzIgYWFyY2g2NF9pbnNuX2dlbl9ub3Aodm9pZCk7CisKIC8qIFdyYXBwZXIgZm9yIGNv bW1vbiBjb2RlICovCiBzdGF0aWMgaW5saW5lIGJvb2wgaW5zbl9pc19icmFuY2hfaW1tKHUzMiBp bnNuKQogewotLSAKMi40LjExCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9y ZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==