mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-11 14:46:06 +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_3DNOW = $00008000; { it's a 3DNow! instruction }
|
||||
IF_SSE = $00010000; { it's a SSE (KNI, MMX2) instruction }
|
||||
IF_PMASK =
|
||||
IF_PMASK =
|
||||
longint($FF000000); { the mask for processor types }
|
||||
IF_PFMASK =
|
||||
longint($F001FF00); { the mask for disassembly "prefer" }
|
||||
@ -238,7 +238,8 @@ type
|
||||
topsize = (S_NO,
|
||||
S_B,S_W,S_L,S_BW,S_BL,S_WL,
|
||||
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
|
||||
@ -247,17 +248,20 @@ const
|
||||
(OT_NONE,
|
||||
OT_BITS8,OT_BITS16,OT_BITS32,OT_BITS16,OT_BITS32,OT_BITS32,
|
||||
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_BITS8,OT_BITS16,OT_BITS32,OT_BITS8,OT_BITS8,OT_BITS16,
|
||||
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_BITS8,OT_BITS16,OT_BITS32,OT_NONE,OT_NONE,OT_NONE,
|
||||
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] = ('',
|
||||
'b','w','l','bw','bl','wl',
|
||||
's','l','q',
|
||||
's','l','t','d','q','v'
|
||||
's','l','t','d','q','v',
|
||||
'','',''
|
||||
);
|
||||
{$endif}
|
||||
|
||||
@ -919,7 +924,10 @@ end;
|
||||
end.
|
||||
{
|
||||
$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
|
||||
parsed as unsigned constants (otherwise, $80000000 got sign extended
|
||||
and became $ffffffff80000000), all constants in the longint range
|
||||
|
@ -158,7 +158,7 @@
|
||||
'invd',
|
||||
'invlpg',
|
||||
'iret',
|
||||
'iretd',
|
||||
'iret',
|
||||
'iretw',
|
||||
'jcxz',
|
||||
'jecxz',
|
||||
@ -311,8 +311,8 @@
|
||||
'repnz',
|
||||
'repz',
|
||||
'ret',
|
||||
'retf',
|
||||
'retn',
|
||||
'lret',
|
||||
'ret',
|
||||
'rol',
|
||||
'ror',
|
||||
'rsdc',
|
||||
|
@ -310,9 +310,9 @@ attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufINT,
|
||||
attsufINT,
|
||||
attsufINT,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufINT,
|
||||
attsufINT,
|
||||
attsufNONE,
|
||||
|
@ -948,7 +948,7 @@ mem \300\2\x0F\x01\207 486,PRIV
|
||||
(Ch_All, Ch_None, Ch_None)
|
||||
void \322\1\xCF 8086
|
||||
|
||||
[IRETD]
|
||||
[IRETD,iret]
|
||||
(Ch_All, Ch_None, Ch_None)
|
||||
void \321\1\xCF 386
|
||||
|
||||
@ -1832,17 +1832,17 @@ void \1\xF2 8086,PRE
|
||||
(Ch_RWECX, Ch_RWFLAGS, Ch_None)
|
||||
void \1\xF3 8086,PRE
|
||||
|
||||
[RET,retX]
|
||||
[RET]
|
||||
(Ch_All, Ch_None, Ch_None)
|
||||
void \1\xC3 8086
|
||||
imm \1\xC2\30 8086,SW
|
||||
|
||||
[RETF,retfX]
|
||||
[RETF,lret]
|
||||
(Ch_All, Ch_None, Ch_None)
|
||||
void \1\xCB 8086
|
||||
imm \1\xCA\30 8086,SW
|
||||
|
||||
[RETN,retnX]
|
||||
[RETN,ret]
|
||||
(Ch_All, Ch_None, Ch_None)
|
||||
void \1\xC3 8086
|
||||
imm \1\xC2\30 8086,SW
|
||||
@ -2763,4 +2763,4 @@ mmxreg,mmxreg \2\x0F\x0F\110\01\xBB PENT,3DNOW,SM
|
||||
|
||||
[FFREEP]
|
||||
(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