mirror of
https://github.com/reactos/reactos.git
synced 2024-08-02 17:40:58 +00:00
merge 34700, 34802, 35517, 35650 from amd64 branch
NCI: 34802/34802/35517: Create x64 syscall stubs (Timo Kreuzer) 35650 Don't add stdcall decorations to amd64 syscalls.(Samuel Serapión) svn path=/trunk/; revision=39369
This commit is contained in:
parent
c13d343799
commit
b6eeb280a5
|
@ -56,6 +56,11 @@
|
||||||
" call *(%%ecx)\n" \
|
" call *(%%ecx)\n" \
|
||||||
" ret $0x%x\n\n"
|
" ret $0x%x\n\n"
|
||||||
|
|
||||||
|
#define UserModeStub_amd64 " movl $0x%x, %%eax\n" \
|
||||||
|
" movq %%rcx, %%r10\n" \
|
||||||
|
" syscall\n" \
|
||||||
|
" ret $0x%x\n\n"
|
||||||
|
|
||||||
#define UserModeStub_ppc " stwu 1,-16(1)\n" \
|
#define UserModeStub_ppc " stwu 1,-16(1)\n" \
|
||||||
" mflr 0\n\t" \
|
" mflr 0\n\t" \
|
||||||
" stw 0,0(1)\n" \
|
" stw 0,0(1)\n" \
|
||||||
|
@ -97,6 +102,10 @@
|
||||||
" call _KiSystemService\n" \
|
" call _KiSystemService\n" \
|
||||||
" ret $0x%x\n\n"
|
" ret $0x%x\n\n"
|
||||||
|
|
||||||
|
#define KernelModeStub_amd64 " movl $0x%x, %%eax\n" \
|
||||||
|
" call _KiSystemService\n" \
|
||||||
|
" ret $0x%x\n\n"
|
||||||
|
|
||||||
/* For now, use the usermode stub. We'll optimize later */
|
/* For now, use the usermode stub. We'll optimize later */
|
||||||
#define KernelModeStub_ppc UserModeStub_ppc
|
#define KernelModeStub_ppc UserModeStub_ppc
|
||||||
|
|
||||||
|
@ -133,6 +142,8 @@ struct ncitool_data_t {
|
||||||
struct ncitool_data_t ncitool_data[] = {
|
struct ncitool_data_t ncitool_data[] = {
|
||||||
{ "i386", 4, KernelModeStub_x86, UserModeStub_x86,
|
{ "i386", 4, KernelModeStub_x86, UserModeStub_x86,
|
||||||
".global _%s@%d\n", "_%s@%d:\n" },
|
".global _%s@%d\n", "_%s@%d:\n" },
|
||||||
|
{ "amd64", 4, KernelModeStub_amd64, UserModeStub_amd64,
|
||||||
|
".global _%s\n", "_%s:\n" },
|
||||||
{ "powerpc", 4, KernelModeStub_ppc, UserModeStub_ppc,
|
{ "powerpc", 4, KernelModeStub_ppc, UserModeStub_ppc,
|
||||||
"\t.globl %s\n", "%s:\n" },
|
"\t.globl %s\n", "%s:\n" },
|
||||||
{ "mips", 4, KernelModeStub_mips, UserModeStub_mips,
|
{ "mips", 4, KernelModeStub_mips, UserModeStub_mips,
|
||||||
|
|
Loading…
Reference in a new issue