mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-19 07:49:10 +02:00
* fix for jcxz, jecxz and jrcxz on 64 bit platforms
git-svn-id: trunk@6400 -
This commit is contained in:
parent
9813a8708c
commit
a19ed91cc3
@ -163,6 +163,7 @@
|
|||||||
'iretw',
|
'iretw',
|
||||||
'jcxz',
|
'jcxz',
|
||||||
'jecxz',
|
'jecxz',
|
||||||
|
'jrcxz',
|
||||||
'jmp',
|
'jmp',
|
||||||
'lahf',
|
'lahf',
|
||||||
'lar',
|
'lar',
|
||||||
|
@ -163,6 +163,7 @@ attsufNONE,
|
|||||||
attsufNONE,
|
attsufNONE,
|
||||||
attsufNONE,
|
attsufNONE,
|
||||||
attsufNONE,
|
attsufNONE,
|
||||||
|
attsufNONE,
|
||||||
attsufINT,
|
attsufINT,
|
||||||
attsufNONE,
|
attsufNONE,
|
||||||
attsufINT,
|
attsufINT,
|
||||||
|
@ -163,6 +163,7 @@
|
|||||||
'iretw',
|
'iretw',
|
||||||
'jcxz',
|
'jcxz',
|
||||||
'jecxz',
|
'jecxz',
|
||||||
|
'jrcxz',
|
||||||
'jmp',
|
'jmp',
|
||||||
'lahf',
|
'lahf',
|
||||||
'lar',
|
'lar',
|
||||||
|
@ -163,6 +163,7 @@ A_IRETD,
|
|||||||
A_IRETW,
|
A_IRETW,
|
||||||
A_JCXZ,
|
A_JCXZ,
|
||||||
A_JECXZ,
|
A_JECXZ,
|
||||||
|
A_JRCXZ,
|
||||||
A_JMP,
|
A_JMP,
|
||||||
A_LAHF,
|
A_LAHF,
|
||||||
A_LAR,
|
A_LAR,
|
||||||
|
@ -163,6 +163,7 @@
|
|||||||
(Ch: (Ch_All, Ch_None, Ch_None)),
|
(Ch: (Ch_All, Ch_None, Ch_None)),
|
||||||
(Ch: (Ch_RECX, Ch_None, Ch_None)),
|
(Ch: (Ch_RECX, Ch_None, Ch_None)),
|
||||||
(Ch: (Ch_RECX, Ch_None, Ch_None)),
|
(Ch: (Ch_RECX, Ch_None, Ch_None)),
|
||||||
|
(Ch: (Ch_RECX, Ch_None, Ch_None)),
|
||||||
(Ch: (Ch_ROp1, Ch_None, Ch_None)),
|
(Ch: (Ch_ROp1, Ch_None, Ch_None)),
|
||||||
(Ch: (Ch_WEAX, Ch_RFlags, Ch_None)),
|
(Ch: (Ch_WEAX, Ch_RFlags, Ch_None)),
|
||||||
(Ch: (Ch_Wop2, Ch_None, Ch_None)),
|
(Ch: (Ch_Wop2, Ch_None, Ch_None)),
|
||||||
|
@ -2517,15 +2517,15 @@
|
|||||||
opcode : A_JCXZ;
|
opcode : A_JCXZ;
|
||||||
ops : 1;
|
ops : 1;
|
||||||
optypes : (ot_immediate,ot_none,ot_none);
|
optypes : (ot_immediate,ot_none,ot_none);
|
||||||
code : #200#1#227#40;
|
code : #2#103#227#40;
|
||||||
flags : if_8086
|
flags : if_8086 or if_nox86_64
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
opcode : A_JECXZ;
|
opcode : A_JECXZ;
|
||||||
ops : 1;
|
ops : 1;
|
||||||
optypes : (ot_immediate,ot_none,ot_none);
|
optypes : (ot_immediate,ot_none,ot_none);
|
||||||
code : #201#1#227#40;
|
code : #1#227#40;
|
||||||
flags : if_386
|
flags : if_386 or if_nox86_64
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
opcode : A_JMP;
|
opcode : A_JMP;
|
||||||
|
@ -855,11 +855,16 @@ void \324\1\xCF 8086
|
|||||||
|
|
||||||
[JCXZ]
|
[JCXZ]
|
||||||
(Ch_RECX, Ch_None, Ch_None)
|
(Ch_RECX, Ch_None, Ch_None)
|
||||||
imm \310\1\xE3\50 8086
|
imm \2\x67\xE3\50 8086,NOX86_64
|
||||||
|
|
||||||
[JECXZ]
|
[JECXZ]
|
||||||
(Ch_RECX, Ch_None, Ch_None)
|
(Ch_RECX, Ch_None, Ch_None)
|
||||||
imm \311\1\xE3\50 386
|
imm \1\xE3\50 386,NOX86_64
|
||||||
|
imm \2\x67\xE3\50 X86_64
|
||||||
|
|
||||||
|
[JRCXZ]
|
||||||
|
(Ch_RECX, Ch_None, Ch_None)
|
||||||
|
imm \1\xE3\50 X86_64
|
||||||
|
|
||||||
[JMP,jmpX]
|
[JMP,jmpX]
|
||||||
(Ch_ROp1, Ch_None, Ch_None)
|
(Ch_ROp1, Ch_None, Ch_None)
|
||||||
|
@ -163,6 +163,7 @@ attsufNONE,
|
|||||||
attsufNONE,
|
attsufNONE,
|
||||||
attsufNONE,
|
attsufNONE,
|
||||||
attsufNONE,
|
attsufNONE,
|
||||||
|
attsufNONE,
|
||||||
attsufINT,
|
attsufINT,
|
||||||
attsufNONE,
|
attsufNONE,
|
||||||
attsufINT,
|
attsufINT,
|
||||||
|
@ -163,6 +163,7 @@
|
|||||||
'iretw',
|
'iretw',
|
||||||
'jcxz',
|
'jcxz',
|
||||||
'jecxz',
|
'jecxz',
|
||||||
|
'jrcxz',
|
||||||
'jmp',
|
'jmp',
|
||||||
'lahf',
|
'lahf',
|
||||||
'lar',
|
'lar',
|
||||||
|
@ -163,6 +163,7 @@
|
|||||||
'iretw',
|
'iretw',
|
||||||
'jcxz',
|
'jcxz',
|
||||||
'jecxz',
|
'jecxz',
|
||||||
|
'jrcxz',
|
||||||
'jmp',
|
'jmp',
|
||||||
'lahf',
|
'lahf',
|
||||||
'lar',
|
'lar',
|
||||||
|
@ -163,6 +163,7 @@ A_IRETD,
|
|||||||
A_IRETW,
|
A_IRETW,
|
||||||
A_JCXZ,
|
A_JCXZ,
|
||||||
A_JECXZ,
|
A_JECXZ,
|
||||||
|
A_JRCXZ,
|
||||||
A_JMP,
|
A_JMP,
|
||||||
A_LAHF,
|
A_LAHF,
|
||||||
A_LAR,
|
A_LAR,
|
||||||
|
@ -163,6 +163,7 @@
|
|||||||
(Ch: (Ch_All, Ch_None, Ch_None)),
|
(Ch: (Ch_All, Ch_None, Ch_None)),
|
||||||
(Ch: (Ch_RECX, Ch_None, Ch_None)),
|
(Ch: (Ch_RECX, Ch_None, Ch_None)),
|
||||||
(Ch: (Ch_RECX, Ch_None, Ch_None)),
|
(Ch: (Ch_RECX, Ch_None, Ch_None)),
|
||||||
|
(Ch: (Ch_RECX, Ch_None, Ch_None)),
|
||||||
(Ch: (Ch_ROp1, Ch_None, Ch_None)),
|
(Ch: (Ch_ROp1, Ch_None, Ch_None)),
|
||||||
(Ch: (Ch_WEAX, Ch_RFlags, Ch_None)),
|
(Ch: (Ch_WEAX, Ch_RFlags, Ch_None)),
|
||||||
(Ch: (Ch_Wop2, Ch_None, Ch_None)),
|
(Ch: (Ch_Wop2, Ch_None, Ch_None)),
|
||||||
|
@ -2499,19 +2499,19 @@
|
|||||||
code : #212#1#207;
|
code : #212#1#207;
|
||||||
flags : if_8086
|
flags : if_8086
|
||||||
),
|
),
|
||||||
(
|
|
||||||
opcode : A_JCXZ;
|
|
||||||
ops : 1;
|
|
||||||
optypes : (ot_immediate,ot_none,ot_none);
|
|
||||||
code : #200#1#227#40;
|
|
||||||
flags : if_8086
|
|
||||||
),
|
|
||||||
(
|
(
|
||||||
opcode : A_JECXZ;
|
opcode : A_JECXZ;
|
||||||
ops : 1;
|
ops : 1;
|
||||||
optypes : (ot_immediate,ot_none,ot_none);
|
optypes : (ot_immediate,ot_none,ot_none);
|
||||||
code : #213#1#227#40;
|
code : #2#103#227#40;
|
||||||
flags : if_386
|
flags : if_x86_64
|
||||||
|
),
|
||||||
|
(
|
||||||
|
opcode : A_JRCXZ;
|
||||||
|
ops : 1;
|
||||||
|
optypes : (ot_immediate,ot_none,ot_none);
|
||||||
|
code : #1#227#40;
|
||||||
|
flags : if_x86_64
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
opcode : A_JMP;
|
opcode : A_JMP;
|
||||||
|
Loading…
Reference in New Issue
Block a user