mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-17 15:29:23 +02:00
+ extended test with many more variants, supported by BP7 for specifying an indirect call/jmp
git-svn-id: trunk@32176 -
This commit is contained in:
parent
1fc1739c1d
commit
a7a71f8b9f
@ -89,6 +89,10 @@ begin
|
|||||||
asm
|
asm
|
||||||
int NearInt
|
int NearInt
|
||||||
call word [a] { near }
|
call word [a] { near }
|
||||||
|
int NearInt
|
||||||
|
call word ptr [a] { near }
|
||||||
|
int NearInt
|
||||||
|
call word ptr a { near }
|
||||||
|
|
||||||
int FarInt
|
int FarInt
|
||||||
call [a] { far }
|
call [a] { far }
|
||||||
@ -98,6 +102,10 @@ begin
|
|||||||
|
|
||||||
int FarInt
|
int FarInt
|
||||||
call dword [b] { far }
|
call dword [b] { far }
|
||||||
|
int FarInt
|
||||||
|
call dword ptr [b] { far }
|
||||||
|
int FarInt
|
||||||
|
call dword ptr b { far }
|
||||||
|
|
||||||
int NearInt
|
int NearInt
|
||||||
call [b] { near }
|
call [b] { near }
|
||||||
@ -123,14 +131,48 @@ begin
|
|||||||
int NearInt
|
int NearInt
|
||||||
call [g16] { near }
|
call [g16] { near }
|
||||||
|
|
||||||
|
int NearInt
|
||||||
|
call word [g16] { near }
|
||||||
|
int NearInt
|
||||||
|
call word ptr [g16] { near }
|
||||||
|
int NearInt
|
||||||
|
call word ptr g16 { near }
|
||||||
|
|
||||||
|
int FarInt
|
||||||
|
call dword [g16] { far }
|
||||||
|
int FarInt
|
||||||
|
call dword ptr [g16] { far }
|
||||||
|
int FarInt
|
||||||
|
call dword ptr g16 { far }
|
||||||
|
|
||||||
int FarInt
|
int FarInt
|
||||||
call g32 { far }
|
call g32 { far }
|
||||||
|
|
||||||
int FarInt
|
int FarInt
|
||||||
call [g32] { far }
|
call [g32] { far }
|
||||||
|
|
||||||
|
int NearInt
|
||||||
|
call word [g32] { near }
|
||||||
|
int NearInt
|
||||||
|
call word ptr [g32] { near }
|
||||||
|
int NearInt
|
||||||
|
call word ptr g32 { near }
|
||||||
|
|
||||||
|
int FarInt
|
||||||
|
call dword [g32] { far }
|
||||||
|
int FarInt
|
||||||
|
call dword ptr [g32] { far }
|
||||||
|
int FarInt
|
||||||
|
call dword ptr g32 { far }
|
||||||
|
|
||||||
|
int NearInt
|
||||||
|
call word [bx] { near }
|
||||||
|
int NearInt
|
||||||
|
call word ptr [bx] { near }
|
||||||
int FarInt
|
int FarInt
|
||||||
call dword [bx] { far }
|
call dword [bx] { far }
|
||||||
|
int FarInt
|
||||||
|
call dword ptr [bx] { far }
|
||||||
|
|
||||||
{$ifdef FPC}
|
{$ifdef FPC}
|
||||||
{ these three are supported by Free Pascal only. They don't work with
|
{ these three are supported by Free Pascal only. They don't work with
|
||||||
|
@ -89,6 +89,10 @@ begin
|
|||||||
asm
|
asm
|
||||||
int NearInt
|
int NearInt
|
||||||
jmp word [a] { near }
|
jmp word [a] { near }
|
||||||
|
int NearInt
|
||||||
|
jmp word ptr [a] { near }
|
||||||
|
int NearInt
|
||||||
|
jmp word ptr a { near }
|
||||||
|
|
||||||
int FarInt
|
int FarInt
|
||||||
jmp [a] { far }
|
jmp [a] { far }
|
||||||
@ -98,6 +102,10 @@ begin
|
|||||||
|
|
||||||
int FarInt
|
int FarInt
|
||||||
jmp dword [b] { far }
|
jmp dword [b] { far }
|
||||||
|
int FarInt
|
||||||
|
jmp dword ptr [b] { far }
|
||||||
|
int FarInt
|
||||||
|
jmp dword ptr b { far }
|
||||||
|
|
||||||
int NearInt
|
int NearInt
|
||||||
jmp [b] { near }
|
jmp [b] { near }
|
||||||
@ -123,14 +131,48 @@ begin
|
|||||||
int NearInt
|
int NearInt
|
||||||
jmp [g16] { near }
|
jmp [g16] { near }
|
||||||
|
|
||||||
|
int NearInt
|
||||||
|
jmp word [g16] { near }
|
||||||
|
int NearInt
|
||||||
|
jmp word ptr [g16] { near }
|
||||||
|
int NearInt
|
||||||
|
jmp word ptr g16 { near }
|
||||||
|
|
||||||
|
int FarInt
|
||||||
|
jmp dword [g16] { far }
|
||||||
|
int FarInt
|
||||||
|
jmp dword ptr [g16] { far }
|
||||||
|
int FarInt
|
||||||
|
jmp dword ptr g16 { far }
|
||||||
|
|
||||||
int FarInt
|
int FarInt
|
||||||
jmp g32 { far }
|
jmp g32 { far }
|
||||||
|
|
||||||
int FarInt
|
int FarInt
|
||||||
jmp [g32] { far }
|
jmp [g32] { far }
|
||||||
|
|
||||||
|
int NearInt
|
||||||
|
jmp word [g32] { near }
|
||||||
|
int NearInt
|
||||||
|
jmp word ptr [g32] { near }
|
||||||
|
int NearInt
|
||||||
|
jmp word ptr g32 { near }
|
||||||
|
|
||||||
|
int FarInt
|
||||||
|
jmp dword [g32] { far }
|
||||||
|
int FarInt
|
||||||
|
jmp dword ptr [g32] { far }
|
||||||
|
int FarInt
|
||||||
|
jmp dword ptr g32 { far }
|
||||||
|
|
||||||
|
int NearInt
|
||||||
|
jmp word [bx] { near }
|
||||||
|
int NearInt
|
||||||
|
jmp word ptr [bx] { near }
|
||||||
int FarInt
|
int FarInt
|
||||||
jmp dword [bx] { far }
|
jmp dword [bx] { far }
|
||||||
|
int FarInt
|
||||||
|
jmp dword ptr [bx] { far }
|
||||||
|
|
||||||
{$ifdef FPC}
|
{$ifdef FPC}
|
||||||
{ these three are supported by Free Pascal only. They don't work with
|
{ these three are supported by Free Pascal only. They don't work with
|
||||||
|
Loading…
Reference in New Issue
Block a user