Make use of the newly introduced generated syscall numbers header.

git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9135 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold 2004-09-30 23:30:29 +00:00
parent 0edd0ce523
commit b4c1459318
3 changed files with 28 additions and 17 deletions

View File

@ -1,21 +1,28 @@
SubDir OBOS_TOP src kernel core arch x86 ; SubDir OBOS_TOP src kernel core arch x86 ;
# for syscall_numbers.h
SubDirHdrs [ FObjectsDir src kernel core ] ;
KernelStaticLibrary libx86 : KernelStaticLibrary libx86 :
<$(SOURCE_GRIST)>arch_cpu.c arch_cpu.c
<$(SOURCE_GRIST)>arch_dbg_console.c arch_dbg_console.c
<$(SOURCE_GRIST)>arch_debug.c arch_debug.c
<$(SOURCE_GRIST)>arch_elf.c arch_elf.c
<$(SOURCE_GRIST)>arch_faults.c arch_faults.c
<$(SOURCE_GRIST)>arch_int.c arch_int.c
# <$(SOURCE_GRIST)>arch_selector.c # arch_selector.c
<$(SOURCE_GRIST)>arch_real_time_clock.c arch_real_time_clock.c
<$(SOURCE_GRIST)>arch_smp.c arch_smp.c
<$(SOURCE_GRIST)>arch_thread.c arch_thread.c
<$(SOURCE_GRIST)>arch_timer.c arch_timer.c
<$(SOURCE_GRIST)>arch_vm.c arch_vm.c
<$(SOURCE_GRIST)>arch_vm_translation_map.c arch_vm_translation_map.c
<$(SOURCE_GRIST)>arch_x86.S arch_x86.S
<$(SOURCE_GRIST)>arch_interrupts.S arch_interrupts.S
: :
-fno-pic -Wno-unused -fno-pic -Wno-unused
; ;
# We need to specify the dependency on the generated syscalls file explicitly.
Includes [ FGristFiles arch_x86.S arch_interrupts.S ]
: <syscalls>syscall_numbers.h ;

View File

@ -6,6 +6,8 @@
#include <arch/x86/descriptors.h> #include <arch/x86/descriptors.h>
#include "syscall_numbers.h"
#define FUNCTION(x) .global x; .type x,@function; x #define FUNCTION(x) .global x; .type x,@function; x
.text .text
@ -160,7 +162,7 @@ FUNCTION(i386_stack_switch):
FUNCTION(i386_return_from_signal): FUNCTION(i386_return_from_signal):
addl $12, %esp // Flushes the 3 arguments to sa_handler addl $12, %esp // Flushes the 3 arguments to sa_handler
movl $103, %eax // This syscall will restore the cpu context to the movl $SYSCALL_RESTORE_SIGNAL_FRAME, %eax // This syscall will restore the cpu context to the
movl $0, %ecx // one existing before calling the signal handler movl $0, %ecx // one existing before calling the signal handler
lea 4(%esp), %edx lea 4(%esp), %edx
int $99 int $99

View File

@ -6,6 +6,8 @@
#include <arch/x86/descriptors.h> #include <arch/x86/descriptors.h>
#include "syscall_numbers.h"
#define FUNCTION(x) .global x; .type x,@function; x #define FUNCTION(x) .global x; .type x,@function; x
.text .text
@ -86,7 +88,7 @@ i386_uspace_exit_stub:
pushl %eax pushl %eax
movl $1, %ecx movl $1, %ecx
lea (%esp), %edx lea (%esp), %edx
movl $25, %eax; movl $SYSCALL_EXIT_THREAD, %eax;
int $99 int $99
.align 4 .align 4
i386_uspace_exit_stub_end: i386_uspace_exit_stub_end: