From: Tom Hughes Date: Sat, 11 Feb 2017 10:44:29 +0000 (+0000) Subject: Handle unknown HINT instructions on aarch64 by ignoring them. BZ#376279. X-Git-Tag: svn/VALGRIND_3_13_0^2~53 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3b8b6867d6c595c901cae86d1b838f3c8f6a67e1;p=thirdparty%2Fvalgrind.git Handle unknown HINT instructions on aarch64 by ignoring them. BZ#376279. git-svn-id: svn://svn.valgrind.org/vex/trunk@3302 --- diff --git a/VEX/priv/guest_arm64_toIR.c b/VEX/priv/guest_arm64_toIR.c index e5274474dc..484a26ea8d 100644 --- a/VEX/priv/guest_arm64_toIR.c +++ b/VEX/priv/guest_arm64_toIR.c @@ -7022,6 +7022,19 @@ Bool dis_ARM64_branch_etc(/*MB_OUT*/DisResult* dres, UInt insn, return True; } + /* -------------------- HINT ------------------- */ + /* 31 23 15 11 4 3 + 1101 0101 0000 0011 0010 imm7 1 1111 + */ + if (INSN(31,24) == BITS8(1,1,0,1,0,1,0,1) + && INSN(23,16) == BITS8(0,0,0,0,0,0,1,1) + && INSN(15,12) == BITS4(0,0,1,0) + && INSN(4,0) == BITS5(1,1,1,1,1)) { + UInt imm7 = INSN(11,5); + DIP("hint #%u\n", imm7); + return True; + } + /* ------------------- CLREX ------------------ */ /* 31 23 15 11 7 1101 0101 0000 0011 0011 m 0101 1111 CLREX CRm