|
From: <sv...@va...> - 2005-11-04 16:46:29
|
Author: tom
Date: 2005-11-04 16:46:19 +0000 (Fri, 04 Nov 2005)
New Revision: 5003
Log:
Allow rax/rbx/rcx/rdx (and their narrower counterparts) to be used
again but only after the high registers are exhausted or (and this is
the important point) if they are explicitly requested.
Also, don't use r8 as it confuses things as we can't tell an explicit
request from a generic request for a byte register.
Modified:
trunk/none/tests/amd64/gen_insn_test.pl
Modified: trunk/none/tests/amd64/gen_insn_test.pl
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/none/tests/amd64/gen_insn_test.pl 2005-11-04 15:36:05 UTC (rev =
5002)
+++ trunk/none/tests/amd64/gen_insn_test.pl 2005-11-04 16:46:19 UTC (rev =
5003)
@@ -49,14 +49,18 @@
);
=20
our %RegNums =3D (
- al =3D> 0, ax =3D> 0, eax =3D> 0, rax =3D> 0,
- bl =3D> 1, bx =3D> 1, ebx =3D> 1, rbx =3D> 1,
- cl =3D> 2, cx =3D> 2, ecx =3D> 2, rcx =3D> 2,
- dl =3D> 3, dx =3D> 3, edx =3D> 3, rdx =3D> 3,
- ah =3D> 4,
- bh =3D> 5,
- ch =3D> 6,
- dh =3D> 7,
+ r9b =3D> 0, r9w =3D> 0, r9d =3D> 0, r9 =3D> 0,
+ r10b =3D> 1, r10w =3D> 1, r10d =3D> 1, r10 =3D> 1,
+ r11b =3D> 2, r11w =3D> 2, r11d =3D> 2, r11 =3D> 2,
+ r12b =3D> 3, r12w =3D> 3, r12d =3D> 3, r12 =3D> 3,
+ al =3D> 4, ax =3D> 4, eax =3D> 4, rax =3D> 4,
+ bl =3D> 5, bx =3D> 5, ebx =3D> 5, rbx =3D> 5,
+ cl =3D> 6, cx =3D> 6, ecx =3D> 6, rcx =3D> 6,
+ dl =3D> 7, dx =3D> 7, edx =3D> 7, rdx =3D> 7,
+ ah =3D> 8,
+ bh =3D> 9,
+ ch =3D> 10,
+ dh =3D> 11,
st0 =3D> 0, st1 =3D> 1, st2 =3D> 2, st3 =3D> 3,
st4 =3D> 4, st5 =3D> 5, st6 =3D> 6, st7 =3D> 7
);
@@ -80,10 +84,14 @@
# );
=20
our @IntRegs =3D (
- { r8 =3D> "r8b", r16 =3D> "r8w", r32 =3D> "r8d", r64 =3D=
> "r8" },
{ r8 =3D> "r9b", r16 =3D> "r9w", r32 =3D> "r9d", r64 =3D=
> "r9" },
{ r8 =3D> "r10b", r16 =3D> "r10w", r32 =3D> "r10d", r64 =
=3D> "r10" },
{ r8 =3D> "r11b", r16 =3D> "r11w", r32 =3D> "r11d", r64 =
=3D> "r11" },
+ { r8 =3D> "r12b", r16 =3D> "r12w", r32 =3D> "r12d", r64 =
=3D> "r12" },
+ { r8 =3D> "al", r16 =3D> "ax", r32 =3D> "eax", r64 =3D> =
"rax" },
+ { r8 =3D> "bl", r16 =3D> "bx", r32 =3D> "ebx", r64 =3D> =
"rbx" },
+ { r8 =3D> "cl", r16 =3D> "cx", r32 =3D> "ecx", r64 =3D> =
"rcx" },
+ { r8 =3D> "dl", r16 =3D> "dx", r32 =3D> "edx", r64 =3D> =
"rdx" },
{ r8 =3D> "ah" },
{ r8 =3D> "bh" },
{ r8 =3D> "ch" },
|