aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Pall <mike>2011-04-10 16:50:04 +0200
committerMike Pall <mike>2011-04-10 16:50:04 +0200
commit161bc379f059bc903873b67da603b48d50cb8ffe (patch)
tree7cc6b9815f2c7f315e27ab66833db81c80ded50e
parent27bf481669c13f37becfc4e4044b1d3557253d4d (diff)
downloadluajit-161bc379f059bc903873b67da603b48d50cb8ffe.tar.gz
luajit-161bc379f059bc903873b67da603b48d50cb8ffe.tar.bz2
luajit-161bc379f059bc903873b67da603b48d50cb8ffe.zip
ARM: Add GPR variants for shift aliases to DynASM.
-rw-r--r--dynasm/dasm_arm.lua15
1 files changed, 11 insertions, 4 deletions
diff --git a/dynasm/dasm_arm.lua b/dynasm/dasm_arm.lua
index 1876078b..19bc94b8 100644
--- a/dynasm/dasm_arm.lua
+++ b/dynasm/dasm_arm.lua
@@ -278,10 +278,10 @@ local map_op = {
278 bic_4 = "e1c00000DNMps", 278 bic_4 = "e1c00000DNMps",
279 mvn_3 = "e1e00000DMps", 279 mvn_3 = "e1e00000DMps",
280 280
281 lsl_3 = "e1a00000DMvs", 281 lsl_3 = "e1a00000DMws",
282 lsr_3 = "e1a00020DMvs", 282 lsr_3 = "e1a00020DMws",
283 asr_3 = "e1a00040DMvs", 283 asr_3 = "e1a00040DMws",
284 ror_3 = "e1a00060DMvs", 284 ror_3 = "e1a00060DMws",
285 rrx_2 = "e1a00060DMs", 285 rrx_2 = "e1a00060DMs",
286 286
287 -- Multiply and multiply-accumulate. 287 -- Multiply and multiply-accumulate.
@@ -747,6 +747,13 @@ map_op[".template__"] = function(params, template, nparams)
747 op = op + parse_imm16(params[n]); n = n + 1 747 op = op + parse_imm16(params[n]); n = n + 1
748 elseif p == "v" then 748 elseif p == "v" then
749 op = op + parse_imm(params[n], 5, 7, 0, false); n = n + 1 749 op = op + parse_imm(params[n], 5, 7, 0, false); n = n + 1
750 elseif p == "w" then
751 local imm = match(params[n], "^#(.*)$")
752 if imm then
753 op = op + parse_imm(params[n], 5, 7, 0, false); n = n + 1
754 else
755 op = op + parse_gpr(params[n]) * 256 + 16
756 end
750 elseif p == "X" then 757 elseif p == "X" then
751 op = op + parse_imm(params[n], 5, 16, 0, false); n = n + 1 758 op = op + parse_imm(params[n], 5, 16, 0, false); n = n + 1
752 elseif p == "K" then 759 elseif p == "K" then