diff options
Diffstat (limited to 'lib/dis_x86.lua')
-rw-r--r-- | lib/dis_x86.lua | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/dis_x86.lua b/lib/dis_x86.lua index eb447eb0..f489a861 100644 --- a/lib/dis_x86.lua +++ b/lib/dis_x86.lua | |||
@@ -813,6 +813,16 @@ local function disass64_(code, addr, out) | |||
813 | create64_(code, addr, out):disass() | 813 | create64_(code, addr, out):disass() |
814 | end | 814 | end |
815 | 815 | ||
816 | -- Return register name for RID. | ||
817 | local function regname_(r) | ||
818 | if r < 8 then return map_regs.D[r+1] end | ||
819 | return map_regs.X[r-7] | ||
820 | end | ||
821 | |||
822 | local function regname64_(r) | ||
823 | if r < 16 then return map_regs.Q[r+1] end | ||
824 | return map_regs.X[r-15] | ||
825 | end | ||
816 | 826 | ||
817 | -- Public module functions. | 827 | -- Public module functions. |
818 | module(...) | 828 | module(...) |
@@ -821,4 +831,6 @@ create = create_ | |||
821 | create64 = create64_ | 831 | create64 = create64_ |
822 | disass = disass_ | 832 | disass = disass_ |
823 | disass64 = disass64_ | 833 | disass64 = disass64_ |
834 | regname = regname_ | ||
835 | regname64 = regname64_ | ||
824 | 836 | ||