aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Pall <mike>2016-04-05 15:10:14 +0200
committerMike Pall <mike>2016-04-05 15:10:14 +0200
commitac9193cfebb1793c54cfcab90376249dac44a4b3 (patch)
treeed86a3cd793a689519108e24133f7adabd61b259
parentd150fbf4411a7e6b098b7af026f77d6b93a26c99 (diff)
downloadluajit-ac9193cfebb1793c54cfcab90376249dac44a4b3.tar.gz
luajit-ac9193cfebb1793c54cfcab90376249dac44a4b3.tar.bz2
luajit-ac9193cfebb1793c54cfcab90376249dac44a4b3.zip
x86: Improve disassembly of BMI2 instructions.
Thanks to Peter Cawley.
-rw-r--r--src/jit/dis_x86.lua8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/jit/dis_x86.lua b/src/jit/dis_x86.lua
index d564988e..0bbd198f 100644
--- a/src/jit/dis_x86.lua
+++ b/src/jit/dis_x86.lua
@@ -244,7 +244,7 @@ nil,"||psrlvVSXrvm","||psravdXrvm","||psllvVSXrvm",
244[0xde] = "||aesdecXrvm", [0xdf] = "||aesdeclastXrvm", 244[0xde] = "||aesdecXrvm", [0xdf] = "||aesdeclastXrvm",
245--Fx 245--Fx
246[0xf0] = "|||crc32TrBmt",[0xf1] = "|||crc32TrVmt", 246[0xf0] = "|||crc32TrBmt",[0xf1] = "|||crc32TrVmt",
247[0xf7] = "|sarxVrmv|shlxVrmv|shrxVrmv", 247[0xf7] = "| sarxVrmv| shlxVrmv| shrxVrmv",
248}, 248},
249 249
250["3a"] = { -- [66] 0f 3a xx 250["3a"] = { -- [66] 0f 3a xx
@@ -275,7 +275,7 @@ nil,nil,nil,nil,
275[0x62] = "||pcmpistrmXrmu",[0x63] = "||pcmpistriXrmu", 275[0x62] = "||pcmpistrmXrmu",[0x63] = "||pcmpistriXrmu",
276[0xdf] = "||aeskeygenassistXrmu", 276[0xdf] = "||aeskeygenassistXrmu",
277--Fx 277--Fx
278[0xf0] = "|||rorxVrmu", 278[0xf0] = "||| rorxVrmu",
279}, 279},
280} 280}
281 281
@@ -417,8 +417,8 @@ local function putop(ctx, text, operands)
417 (ctx.rexx and "x" or "")..(ctx.rexb and "b" or "").. 417 (ctx.rexx and "x" or "")..(ctx.rexb and "b" or "")..
418 (ctx.vexl and "l" or "") 418 (ctx.vexl and "l" or "")
419 if ctx.vexv and ctx.vexv ~= 0 then t = t.."v"..ctx.vexv end 419 if ctx.vexv and ctx.vexv ~= 0 then t = t.."v"..ctx.vexv end
420 if t ~= "" then text = ctx.rex.."."..t.." "..text 420 if t ~= "" then text = ctx.rex.."."..t.." "..gsub(text, "^ ", "")
421 elseif ctx.rex == "vex" then text = "v"..text end 421 elseif ctx.rex == "vex" then text = gsub("v"..text, "^v ", "") end
422 ctx.rexw = false; ctx.rexr = false; ctx.rexx = false; ctx.rexb = false 422 ctx.rexw = false; ctx.rexr = false; ctx.rexx = false; ctx.rexb = false
423 ctx.rex = false; ctx.vexl = false; ctx.vexv = false 423 ctx.rex = false; ctx.vexl = false; ctx.vexv = false
424 end 424 end