Kernel: Move sys_fork trampolines to kernel/arch/ directory
This commit is contained in:
parent
26ed689d30
commit
45cea14165
|
@ -83,7 +83,6 @@ set(KERNEL_SOURCES
|
|||
kernel/Storage/Partition.cpp
|
||||
kernel/Storage/StorageDevice.cpp
|
||||
kernel/Syscall.cpp
|
||||
kernel/Syscall.S
|
||||
kernel/Terminal/FramebufferTerminal.cpp
|
||||
kernel/Terminal/Serial.cpp
|
||||
kernel/Terminal/TTY.cpp
|
||||
|
@ -111,6 +110,7 @@ if("${BANAN_ARCH}" STREQUAL "x86_64")
|
|||
arch/x86_64/interrupts.S
|
||||
arch/x86_64/PageTable.cpp
|
||||
arch/x86_64/Signal.S
|
||||
arch/x86_64/Syscall.S
|
||||
arch/x86_64/Thread.S
|
||||
)
|
||||
elseif("${BANAN_ARCH}" STREQUAL "i386")
|
||||
|
@ -118,6 +118,7 @@ elseif("${BANAN_ARCH}" STREQUAL "i386")
|
|||
${KERNEL_SOURCES}
|
||||
arch/i386/boot.S
|
||||
arch/i386/SpinLock.S
|
||||
arch/i386/Syscall.S
|
||||
arch/i386/Thread.S
|
||||
)
|
||||
else()
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
.global sys_fork_trampoline
|
||||
sys_fork_trampoline:
|
||||
subl $4, %esp
|
||||
pushl %ebx
|
||||
pushl %ebp
|
||||
call read_rip
|
||||
testl %eax, %eax
|
||||
je .done
|
||||
subl $8, %esp
|
||||
pushl %eax
|
||||
pushl %esp
|
||||
call sys_fork
|
||||
addl $16, %esp
|
||||
.done:
|
||||
popl %ebp
|
||||
popl %ebx
|
||||
addl $4, %esp
|
||||
ret
|
Loading…
Reference in New Issue