forked from KolibriOS/kolibrios
fastcall/syscall instructions should be avoided in future
due to possible compatibility problems. git-svn-id: svn://kolibrios.org@1937 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
864b1d27e9
commit
19dd2b9a34
@ -292,8 +292,7 @@ include 'config.inc'
|
|||||||
;__CPU_type equ p5
|
;__CPU_type equ p5
|
||||||
SYSENTER_VAR equ 0
|
SYSENTER_VAR equ 0
|
||||||
|
|
||||||
macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
macro mcall a,b,c,d,e,f { ; mike.dld
|
||||||
local ..ret_point
|
|
||||||
__mov eax,a
|
__mov eax,a
|
||||||
__mov ebx,b
|
__mov ebx,b
|
||||||
__mov ecx,c
|
__mov ecx,c
|
||||||
@ -301,30 +300,7 @@ macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
|||||||
__mov esi,e
|
__mov esi,e
|
||||||
__mov edi,f
|
__mov edi,f
|
||||||
|
|
||||||
if __CPU_type eq p5
|
|
||||||
int 0x40
|
int 0x40
|
||||||
else
|
|
||||||
if __CPU_type eq p6
|
|
||||||
push ebp
|
|
||||||
mov ebp, esp
|
|
||||||
push ..ret_point ; it may be 2 or 5 byte
|
|
||||||
sysenter
|
|
||||||
..ret_point:
|
|
||||||
pop edx
|
|
||||||
pop ecx
|
|
||||||
|
|
||||||
else
|
|
||||||
if __CPU_type eq k6
|
|
||||||
push ecx
|
|
||||||
syscall
|
|
||||||
pop ecx
|
|
||||||
else
|
|
||||||
display 'ERROR : unknown CPU type (set to p5)', 10, 13
|
|
||||||
__CPU_type equ p5
|
|
||||||
int 0x40
|
|
||||||
end if
|
|
||||||
end if
|
|
||||||
end if
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -284,7 +284,6 @@ __CPU_type equ p5
|
|||||||
SYSENTER_VAR equ 0
|
SYSENTER_VAR equ 0
|
||||||
|
|
||||||
macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
||||||
local ..ret_point
|
|
||||||
__mov eax,a
|
__mov eax,a
|
||||||
__mov ebx,b
|
__mov ebx,b
|
||||||
__mov ecx,c
|
__mov ecx,c
|
||||||
@ -292,30 +291,7 @@ macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
|||||||
__mov esi,e
|
__mov esi,e
|
||||||
__mov edi,f
|
__mov edi,f
|
||||||
|
|
||||||
if __CPU_type eq p5
|
|
||||||
int 0x40
|
int 0x40
|
||||||
else
|
|
||||||
if __CPU_type eq p6
|
|
||||||
push ebp
|
|
||||||
mov ebp, esp
|
|
||||||
push ..ret_point ; it may be 2 or 5 byte
|
|
||||||
sysenter
|
|
||||||
..ret_point:
|
|
||||||
pop edx
|
|
||||||
pop ecx
|
|
||||||
|
|
||||||
else
|
|
||||||
if __CPU_type eq k6
|
|
||||||
push ecx
|
|
||||||
syscall
|
|
||||||
pop ecx
|
|
||||||
else
|
|
||||||
display 'ERROR : unknown CPU type (set to p5)', 10, 13
|
|
||||||
__CPU_type equ p5
|
|
||||||
int 0x40
|
|
||||||
end if
|
|
||||||
end if
|
|
||||||
end if
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -292,8 +292,7 @@ include 'config.inc'
|
|||||||
;__CPU_type equ p5
|
;__CPU_type equ p5
|
||||||
SYSENTER_VAR equ 0
|
SYSENTER_VAR equ 0
|
||||||
|
|
||||||
macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
macro mcall a,b,c,d,e,f { ; mike.dld
|
||||||
local ..ret_point
|
|
||||||
__mov eax,a
|
__mov eax,a
|
||||||
__mov ebx,b
|
__mov ebx,b
|
||||||
__mov ecx,c
|
__mov ecx,c
|
||||||
@ -301,30 +300,7 @@ macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
|||||||
__mov esi,e
|
__mov esi,e
|
||||||
__mov edi,f
|
__mov edi,f
|
||||||
|
|
||||||
if __CPU_type eq p5
|
|
||||||
int 0x40
|
int 0x40
|
||||||
else
|
|
||||||
if __CPU_type eq p6
|
|
||||||
push ebp
|
|
||||||
mov ebp, esp
|
|
||||||
push ..ret_point ; it may be 2 or 5 byte
|
|
||||||
sysenter
|
|
||||||
..ret_point:
|
|
||||||
pop edx
|
|
||||||
pop ecx
|
|
||||||
|
|
||||||
else
|
|
||||||
if __CPU_type eq k6
|
|
||||||
push ecx
|
|
||||||
syscall
|
|
||||||
pop ecx
|
|
||||||
else
|
|
||||||
display 'ERROR : unknown CPU type (set to p5)', 10, 13
|
|
||||||
__CPU_type equ p5
|
|
||||||
int 0x40
|
|
||||||
end if
|
|
||||||
end if
|
|
||||||
end if
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -284,38 +284,13 @@ include 'config.inc'
|
|||||||
SYSENTER_VAR equ 0
|
SYSENTER_VAR equ 0
|
||||||
|
|
||||||
macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
||||||
local ..ret_point
|
|
||||||
__mov eax,a
|
__mov eax,a
|
||||||
__mov ebx,b
|
__mov ebx,b
|
||||||
__mov ecx,c
|
__mov ecx,c
|
||||||
__mov edx,d
|
__mov edx,d
|
||||||
__mov esi,e
|
__mov esi,e
|
||||||
__mov edi,f
|
__mov edi,f
|
||||||
|
|
||||||
if __CPU_type eq p5
|
|
||||||
int 0x40
|
int 0x40
|
||||||
else
|
|
||||||
if __CPU_type eq p6
|
|
||||||
push ebp
|
|
||||||
mov ebp, esp
|
|
||||||
push ..ret_point ; it may be 2 or 5 byte
|
|
||||||
sysenter
|
|
||||||
..ret_point:
|
|
||||||
pop edx
|
|
||||||
pop ecx
|
|
||||||
|
|
||||||
else
|
|
||||||
if __CPU_type eq k6
|
|
||||||
push ecx
|
|
||||||
syscall
|
|
||||||
pop ecx
|
|
||||||
else
|
|
||||||
display 'ERROR : unknown CPU type (set to p5)', 10, 13
|
|
||||||
__CPU_type equ p5
|
|
||||||
int 0x40
|
|
||||||
end if
|
|
||||||
end if
|
|
||||||
end if
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -288,7 +288,6 @@ include 'config.inc'
|
|||||||
SYSENTER_VAR equ 0
|
SYSENTER_VAR equ 0
|
||||||
|
|
||||||
macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
||||||
local ..ret_point
|
|
||||||
__mov eax,a
|
__mov eax,a
|
||||||
__mov ebx,b
|
__mov ebx,b
|
||||||
__mov ecx,c
|
__mov ecx,c
|
||||||
@ -296,30 +295,7 @@ macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
|||||||
__mov esi,e
|
__mov esi,e
|
||||||
__mov edi,f
|
__mov edi,f
|
||||||
|
|
||||||
if __CPU_type eq p5
|
|
||||||
int 0x40
|
int 0x40
|
||||||
else
|
|
||||||
if __CPU_type eq p6
|
|
||||||
push ebp
|
|
||||||
mov ebp, esp
|
|
||||||
push ..ret_point ; it may be 2 or 5 byte
|
|
||||||
sysenter
|
|
||||||
..ret_point:
|
|
||||||
pop edx
|
|
||||||
pop ecx
|
|
||||||
|
|
||||||
else
|
|
||||||
if __CPU_type eq k6
|
|
||||||
push ecx
|
|
||||||
syscall
|
|
||||||
pop ecx
|
|
||||||
else
|
|
||||||
display 'ERROR : unknown CPU type (set to p5)', 10, 13
|
|
||||||
__CPU_type equ p5
|
|
||||||
int 0x40
|
|
||||||
end if
|
|
||||||
end if
|
|
||||||
end if
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -193,8 +193,7 @@ macro __mov reg,a,b { ; mike.dld
|
|||||||
__CPU_type equ p5
|
__CPU_type equ p5
|
||||||
SYSENTER_VAR equ 0
|
SYSENTER_VAR equ 0
|
||||||
|
|
||||||
macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
macro mcall a,b,c,d,e,f { ; mike.dld
|
||||||
local ..ret_point
|
|
||||||
__mov eax,a
|
__mov eax,a
|
||||||
__mov ebx,b
|
__mov ebx,b
|
||||||
__mov ecx,c
|
__mov ecx,c
|
||||||
@ -202,29 +201,7 @@ macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
|
|||||||
__mov esi,e
|
__mov esi,e
|
||||||
__mov edi,f
|
__mov edi,f
|
||||||
|
|
||||||
if __CPU_type eq p5
|
|
||||||
int 0x40
|
int 0x40
|
||||||
else
|
|
||||||
if __CPU_type eq p6
|
|
||||||
push ebp
|
|
||||||
mov ebp, esp
|
|
||||||
push ..ret_point ; it may be 2 or 5 byte
|
|
||||||
sysenter
|
|
||||||
..ret_point:
|
|
||||||
pop edx
|
|
||||||
pop ecx
|
|
||||||
|
|
||||||
else
|
|
||||||
if __CPU_type eq k6
|
|
||||||
push ecx
|
|
||||||
syscall
|
|
||||||
pop ecx
|
|
||||||
else
|
|
||||||
display 'ERROR : unknown CPU type'
|
|
||||||
int 0x40
|
|
||||||
end if
|
|
||||||
end if
|
|
||||||
end if
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user