mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-12 07:46:00 +02:00
* iret, lret fixes
This commit is contained in:
parent
bcbb21839d
commit
c72d1f4c76
@ -167,7 +167,7 @@ const
|
|||||||
IF_MMX = $00004000; { it's an MMX instruction }
|
IF_MMX = $00004000; { it's an MMX instruction }
|
||||||
IF_3DNOW = $00008000; { it's a 3DNow! instruction }
|
IF_3DNOW = $00008000; { it's a 3DNow! instruction }
|
||||||
IF_SSE = $00010000; { it's a SSE (KNI, MMX2) instruction }
|
IF_SSE = $00010000; { it's a SSE (KNI, MMX2) instruction }
|
||||||
IF_PMASK =
|
IF_PMASK =
|
||||||
longint($FF000000); { the mask for processor types }
|
longint($FF000000); { the mask for processor types }
|
||||||
IF_PFMASK =
|
IF_PFMASK =
|
||||||
longint($F001FF00); { the mask for disassembly "prefer" }
|
longint($F001FF00); { the mask for disassembly "prefer" }
|
||||||
@ -238,7 +238,8 @@ type
|
|||||||
topsize = (S_NO,
|
topsize = (S_NO,
|
||||||
S_B,S_W,S_L,S_BW,S_BL,S_WL,
|
S_B,S_W,S_L,S_BW,S_BL,S_WL,
|
||||||
S_IS,S_IL,S_IQ,
|
S_IS,S_IL,S_IQ,
|
||||||
S_FS,S_FL,S_FX,S_D,S_Q,S_FV
|
S_FS,S_FL,S_FX,S_D,S_Q,S_FV,
|
||||||
|
S_NEAR,S_FAR,S_SHORT
|
||||||
);
|
);
|
||||||
|
|
||||||
const
|
const
|
||||||
@ -247,17 +248,20 @@ const
|
|||||||
(OT_NONE,
|
(OT_NONE,
|
||||||
OT_BITS8,OT_BITS16,OT_BITS32,OT_BITS16,OT_BITS32,OT_BITS32,
|
OT_BITS8,OT_BITS16,OT_BITS32,OT_BITS16,OT_BITS32,OT_BITS32,
|
||||||
OT_BITS16,OT_BITS32,OT_BITS64,
|
OT_BITS16,OT_BITS32,OT_BITS64,
|
||||||
OT_BITS32,OT_BITS64,OT_BITS80,OT_BITS64,OT_BITS64,OT_BITS64
|
OT_BITS32,OT_BITS64,OT_BITS80,OT_BITS64,OT_BITS64,OT_BITS64,
|
||||||
|
OT_NEAR,OT_FAR,OT_SHORT
|
||||||
),
|
),
|
||||||
(OT_NONE,
|
(OT_NONE,
|
||||||
OT_BITS8,OT_BITS16,OT_BITS32,OT_BITS8,OT_BITS8,OT_BITS16,
|
OT_BITS8,OT_BITS16,OT_BITS32,OT_BITS8,OT_BITS8,OT_BITS16,
|
||||||
OT_BITS16,OT_BITS32,OT_BITS64,
|
OT_BITS16,OT_BITS32,OT_BITS64,
|
||||||
OT_BITS32,OT_BITS64,OT_BITS80,OT_BITS64,OT_BITS64,OT_BITS64
|
OT_BITS32,OT_BITS64,OT_BITS80,OT_BITS64,OT_BITS64,OT_BITS64,
|
||||||
|
OT_NEAR,OT_FAR,OT_SHORT
|
||||||
),
|
),
|
||||||
(OT_NONE,
|
(OT_NONE,
|
||||||
OT_BITS8,OT_BITS16,OT_BITS32,OT_NONE,OT_NONE,OT_NONE,
|
OT_BITS8,OT_BITS16,OT_BITS32,OT_NONE,OT_NONE,OT_NONE,
|
||||||
OT_BITS16,OT_BITS32,OT_BITS64,
|
OT_BITS16,OT_BITS32,OT_BITS64,
|
||||||
OT_BITS32,OT_BITS64,OT_BITS80,OT_BITS64,OT_BITS64,OT_BITS64
|
OT_BITS32,OT_BITS64,OT_BITS80,OT_BITS64,OT_BITS64,OT_BITS64,
|
||||||
|
OT_NEAR,OT_FAR,OT_SHORT
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -265,7 +269,8 @@ const
|
|||||||
att_opsize2str : array[topsize] of string[2] = ('',
|
att_opsize2str : array[topsize] of string[2] = ('',
|
||||||
'b','w','l','bw','bl','wl',
|
'b','w','l','bw','bl','wl',
|
||||||
's','l','q',
|
's','l','q',
|
||||||
's','l','t','d','q','v'
|
's','l','t','d','q','v',
|
||||||
|
'','',''
|
||||||
);
|
);
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
@ -919,7 +924,10 @@ end;
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.2 2000-12-07 17:19:45 jonas
|
Revision 1.3 2001-02-20 21:34:04 peter
|
||||||
|
* iret, lret fixes
|
||||||
|
|
||||||
|
Revision 1.2 2000/12/07 17:19:45 jonas
|
||||||
* new constant handling: from now on, hex constants >$7fffffff are
|
* new constant handling: from now on, hex constants >$7fffffff are
|
||||||
parsed as unsigned constants (otherwise, $80000000 got sign extended
|
parsed as unsigned constants (otherwise, $80000000 got sign extended
|
||||||
and became $ffffffff80000000), all constants in the longint range
|
and became $ffffffff80000000), all constants in the longint range
|
||||||
|
@ -158,7 +158,7 @@
|
|||||||
'invd',
|
'invd',
|
||||||
'invlpg',
|
'invlpg',
|
||||||
'iret',
|
'iret',
|
||||||
'iretd',
|
'iret',
|
||||||
'iretw',
|
'iretw',
|
||||||
'jcxz',
|
'jcxz',
|
||||||
'jecxz',
|
'jecxz',
|
||||||
@ -311,8 +311,8 @@
|
|||||||
'repnz',
|
'repnz',
|
||||||
'repz',
|
'repz',
|
||||||
'ret',
|
'ret',
|
||||||
'retf',
|
'lret',
|
||||||
'retn',
|
'ret',
|
||||||
'rol',
|
'rol',
|
||||||
'ror',
|
'ror',
|
||||||
'rsdc',
|
'rsdc',
|
||||||
|
@ -310,9 +310,9 @@ attsufNONE,
|
|||||||
attsufNONE,
|
attsufNONE,
|
||||||
attsufNONE,
|
attsufNONE,
|
||||||
attsufNONE,
|
attsufNONE,
|
||||||
attsufINT,
|
attsufNONE,
|
||||||
attsufINT,
|
attsufNONE,
|
||||||
attsufINT,
|
attsufNONE,
|
||||||
attsufINT,
|
attsufINT,
|
||||||
attsufINT,
|
attsufINT,
|
||||||
attsufNONE,
|
attsufNONE,
|
||||||
|
@ -948,7 +948,7 @@ mem \300\2\x0F\x01\207 486,PRIV
|
|||||||
(Ch_All, Ch_None, Ch_None)
|
(Ch_All, Ch_None, Ch_None)
|
||||||
void \322\1\xCF 8086
|
void \322\1\xCF 8086
|
||||||
|
|
||||||
[IRETD]
|
[IRETD,iret]
|
||||||
(Ch_All, Ch_None, Ch_None)
|
(Ch_All, Ch_None, Ch_None)
|
||||||
void \321\1\xCF 386
|
void \321\1\xCF 386
|
||||||
|
|
||||||
@ -1832,17 +1832,17 @@ void \1\xF2 8086,PRE
|
|||||||
(Ch_RWECX, Ch_RWFLAGS, Ch_None)
|
(Ch_RWECX, Ch_RWFLAGS, Ch_None)
|
||||||
void \1\xF3 8086,PRE
|
void \1\xF3 8086,PRE
|
||||||
|
|
||||||
[RET,retX]
|
[RET]
|
||||||
(Ch_All, Ch_None, Ch_None)
|
(Ch_All, Ch_None, Ch_None)
|
||||||
void \1\xC3 8086
|
void \1\xC3 8086
|
||||||
imm \1\xC2\30 8086,SW
|
imm \1\xC2\30 8086,SW
|
||||||
|
|
||||||
[RETF,retfX]
|
[RETF,lret]
|
||||||
(Ch_All, Ch_None, Ch_None)
|
(Ch_All, Ch_None, Ch_None)
|
||||||
void \1\xCB 8086
|
void \1\xCB 8086
|
||||||
imm \1\xCA\30 8086,SW
|
imm \1\xCA\30 8086,SW
|
||||||
|
|
||||||
[RETN,retnX]
|
[RETN,ret]
|
||||||
(Ch_All, Ch_None, Ch_None)
|
(Ch_All, Ch_None, Ch_None)
|
||||||
void \1\xC3 8086
|
void \1\xC3 8086
|
||||||
imm \1\xC2\30 8086,SW
|
imm \1\xC2\30 8086,SW
|
||||||
@ -2763,4 +2763,4 @@ mmxreg,mmxreg \2\x0F\x0F\110\01\xBB PENT,3DNOW,SM
|
|||||||
|
|
||||||
[FFREEP]
|
[FFREEP]
|
||||||
(Ch_All, Ch_None, Ch_None)
|
(Ch_All, Ch_None, Ch_None)
|
||||||
fpureg \1\xDF\10\xC0 PENT,3DNOW,FPU
|
fpureg \1\xDF\10\xC0 PENT,3DNOW,FPU
|
||||||
|
Loading…
Reference in New Issue
Block a user