diff options
Diffstat (limited to 'mdk-stage1/dietlibc/i386/dyn_syscalls.S')
-rw-r--r-- | mdk-stage1/dietlibc/i386/dyn_syscalls.S | 282 |
1 files changed, 0 insertions, 282 deletions
diff --git a/mdk-stage1/dietlibc/i386/dyn_syscalls.S b/mdk-stage1/dietlibc/i386/dyn_syscalls.S deleted file mode 100644 index c4fd2fff5..000000000 --- a/mdk-stage1/dietlibc/i386/dyn_syscalls.S +++ /dev/null @@ -1,282 +0,0 @@ -/* - * dynamic unified-syscalls - * Olaf Dreesen - */ - -#include "../syscalls.s/environ.S" -#include "../syscalls.s/errno.S" - -#include <dietfeatures.h> -#include "syscalls.h" -#include "PIC.h" - -/* ok now include all syscalls.s (*.S) and sysdep *.S */ - -#include "mmap.S" - -/* here on i386 I had split them some pre- some post-unified-syscall, - * because the jumps pre-u.s.c. have only a 1 byte displacement. the first - * post-u.s.c. have also 1 byte dsplacement the rest a 4 byte. - * this pre/post split saves about 250 byte of code .... - * - * Please put additional syscalls AFTER the post-u.s.c. - * or try to not break the savings :) */ - -#include "select.S" - -#include "../syscalls.s/fork.S" -#include "../syscalls.s/read.S" -#include "../syscalls.s/write.S" -#include "../syscalls.s/open.S" -#include "../syscalls.s/close.S" -#include "../syscalls.s/waitpid.S" - -#include "../syscalls.s/getgid.S" -#include "../syscalls.s/getpgid.S" -#include "../syscalls.s/getpid.S" -#include "../syscalls.s/getppid.S" -#include "../syscalls.s/getuid.S" -#include "../syscalls.s/kill.S" -#include "../syscalls.s/ioctl.S" -#include "../syscalls.s/_llseek.S" -#include "../syscalls.s/lseek.S" -#include "../syscalls.s/lstat.S" -#include "../syscalls.s/lstat64.S" -#include "../syscalls.s/mkdir.S" -#include "../syscalls.s/mprotect.S" -#include "../syscalls.s/nanosleep.S" -#include "../syscalls.s/pipe.S" -#include "../syscalls.s/poll.S" -#include "../syscalls.s/readv.S" -#include "../syscalls.s/stat.S" -#include "../syscalls.s/stat64.S" -#include "../syscalls.s/truncate.S" -#include "../syscalls.s/umask.S" -#include "../syscalls.s/wait4.S" -#include "../syscalls.s/writev.S" -#include "../syscalls.s/__getpagesize.S" - -/* OK this is basicaly unified.S */ -.text -.type __unified_syscall_256,@function -__unified_syscall_256: - movzwl %ax, %eax - jmp .L23 -.L22: -.size __unified_syscall_256,.L22-__unified_syscall_256 -.type exit,@function -.weak exit -exit: -.type _exit,@function -.global _exit -_exit: -__exit: - mov $__NR_exit, %al -__unified_syscall: - movzbl %al, %eax -.L23: - push %edi - push %esi - push %ebx - movl %esp,%edi - movl 0x10(%edi),%ebx - movl 0x14(%edi),%ecx - movl 0x18(%edi),%edx - movl 0x1c(%edi),%esi - movl 0x20(%edi),%edi - int $0x80 - cmp $-124,%eax - jbe .Lnoerror - neg %eax - - /* PIC-code Ohhhhh My. */ - push %eax - PIC_INIT - call __errno_location@PLT - popl %ebx - movl %ebx,(%eax) - orl $-1,%eax -.Lnoerror: - pop %ebx - pop %esi - pop %edi -#include "dietuglyweaks.h" - ret - -#include "../syscalls.s/__pread.S" -#include "../syscalls.s/__pwrite.S" -#include "../syscalls.s/__reboot.S" -#include "../syscalls.s/access.S" -#include "../syscalls.s/adjtimex.S" -#include "../syscalls.s/brk.S" -#include "../syscalls.s/chdir.S" -#include "../syscalls.s/chmod.S" -#include "../syscalls.s/chown.S" -#include "../syscalls.s/chroot.S" -#include "../syscalls.s/dup.S" -#include "../syscalls.s/dup2.S" -#include "../syscalls.s/execve.S" -#include "../syscalls.s/fchdir.S" -#include "../syscalls.s/fchmod.S" -#include "../syscalls.s/fchown.S" -#include "../syscalls.s/fcntl.S" -#include "../syscalls.s/flock.S" -#include "../syscalls.s/fstat.S" -#include "../syscalls.s/fstat64.S" -#include "../syscalls.s/fstatfs.S" -#include "../syscalls.s/fsync.S" -#include "../syscalls.s/fdatasync.S" -#include "../syscalls.s/ftruncate.S" -#include "../syscalls.s/getcwd.S" -#include "../syscalls.s/getdents.S" -#include "../syscalls.s/getdents64.S" -#include "../syscalls.s/getegid.S" -#include "../syscalls.s/geteuid.S" -#include "../syscalls.s/getgroups.S" -#include "../syscalls.s/getitimer.S" -#include "../syscalls.s/getpriority.S" -#include "../syscalls.s/getresgid.S" -#include "../syscalls.s/getresuid.S" -#include "../syscalls.s/getrlimit.S" -#include "../syscalls.s/getrusage.S" -#include "../syscalls.s/getsid.S" -#include "../syscalls.s/gettimeofday.S" -#include "../syscalls.s/ioperm.S" -#include "../syscalls.s/iopl.S" -#include "../syscalls.s/ipc.S" -#include "../syscalls.s/lchown.S" -#include "../syscalls.s/link.S" -#include "../syscalls.s/mknod.S" -#include "../syscalls.s/mlock.S" -#include "../syscalls.s/mlockall.S" -#include "../syscalls.s/mount.S" -#include "../syscalls.s/mremap.S" -#include "../syscalls.s/munlockall.S" -#include "../syscalls.s/munmap.S" -#include "../syscalls.s/n_sigaction.S" -#include "../syscalls.s/n_sigpending.S" -#include "../syscalls.s/n_sigprocmask.S" -#include "../syscalls.s/n_sigsuspend.S" -#include "../syscalls.s/nice.S" -#include "../syscalls.s/pause.S" -#include "../syscalls.s/personality.S" -#include "../syscalls.s/query_module.S" -#include "../syscalls.s/init_module.S" -#include "../syscalls.s/delete_module.S" -#include "../syscalls.s/create_module.S" -#include "../syscalls.s/readlink.S" -#include "../syscalls.s/rename.S" -#include "../syscalls.s/rmdir.S" -#include "../syscalls.s/rt_sigaction.S" -#include "../syscalls.s/rt_sigpending.S" -#include "../syscalls.s/rt_sigprocmask.S" -#include "../syscalls.s/rt_sigqueueinfo.S" -#include "../syscalls.s/rt_sigsuspend.S" -#include "../syscalls.s/rt_sigtimedwait.S" -#include "../syscalls.s/sched_get_priority_max.S" -#include "../syscalls.s/sched_get_priority_min.S" -#include "../syscalls.s/sched_getparam.S" -#include "../syscalls.s/sched_getscheduler.S" -#include "../syscalls.s/sched_rr_get_interval.S" -#include "../syscalls.s/sched_setparam.S" -#include "../syscalls.s/sched_setscheduler.S" -#include "../syscalls.s/sched_yield.S" -#include "../syscalls.s/sendfile.S" -#include "../syscalls.s/setdomainname.S" -#include "../syscalls.s/setfsgid.S" -#include "../syscalls.s/setfsuid.S" -#include "../syscalls.s/setgid.S" -#include "../syscalls.s/setgroups.S" -#include "../syscalls.s/sethostname.S" -#include "../syscalls.s/setitimer.S" -#include "../syscalls.s/setpgid.S" -#include "../syscalls.s/setpriority.S" -#include "../syscalls.s/setregid.S" -#include "../syscalls.s/setresgid.S" -#include "../syscalls.s/setresuid.S" -#include "../syscalls.s/setreuid.S" -#include "../syscalls.s/setrlimit.S" -#include "../syscalls.s/setsid.S" -#include "../syscalls.s/setuid.S" -#include "../syscalls.s/sigaltstack.S" -#include "../syscalls.s/statfs.S" -#include "../syscalls.s/stime.S" -#include "../syscalls.s/swapoff.S" -#include "../syscalls.s/swapon.S" -#include "../syscalls.s/symlink.S" -#include "../syscalls.s/sync.S" -#include "../syscalls.s/sysctl.S" -#include "../syscalls.s/sysinfo.S" -#include "../syscalls.s/syslog.S" -#include "../syscalls.s/time.S" -#include "../syscalls.s/times.S" -#include "../syscalls.s/umount.S" -#include "../syscalls.s/umount2.S" -#include "../syscalls.s/uname.S" -#include "../syscalls.s/unlink.S" -#include "../syscalls.s/utime.S" -#include "../syscalls.s/vhangup.S" - -#include "../syscalls.s/chown32.S" -#include "../syscalls.s/fchown32.S" -#include "../syscalls.s/getegid32.S" -#include "../syscalls.s/geteuid32.S" -#include "../syscalls.s/getgid32.S" -#include "../syscalls.s/getgroups32.S" -#include "../syscalls.s/getresgid32.S" -#include "../syscalls.s/getuid32.S" -#include "../syscalls.s/lchown32.S" -#include "../syscalls.s/setfsgid32.S" -#include "../syscalls.s/setfsuid32.S" -#include "../syscalls.s/setgid32.S" -#include "../syscalls.s/setregid32.S" -#include "../syscalls.s/setresgid32.S" -#include "../syscalls.s/setreuid32.S" -#include "../syscalls.s/setuid32.S" -#include "../syscalls.s/alarm.S" -#include "../syscalls.s/ptrace.S" -#include "../syscalls.s/truncate64.S" -#include "../syscalls.s/ftruncate64.S" -#include "../syscalls.s/epoll_create.S" -#include "../syscalls.s/epoll_ctl.S" -#include "../syscalls.s/epoll_wait.S" - -#undef __PIC__ -#undef __socketcall -/* oh what a kludge! */ -#define socketcall .Lsocketcall -#include "../i386/send.S" -#include "../i386/recv.S" -#include "../i386/socket.S" -#include "../i386/accept.S" -#include "../i386/shutdown.S" -#include "../i386/socketpair.S" -#include "../i386/setsockopt.S" -#include "../i386/sendto.S" -#include "../i386/sendmsg.S" -#include "../i386/recvmsg.S" -#include "../i386/recvfrom.S" -#include "../i386/listen.S" -#include "../i386/getsockopt.S" -#include "../i386/getsockname.S" -#include "../i386/getpeername.S" -#include "../i386/connect.S" -#include "../i386/bind.S" -#undef socketcall -.Lsocketcall: -#include "../i386/socketcall.S" -#define __PIC__ -#undef __socketcall - - -/* so now this was the last u.s.c. */ - -/* other asm-files ... */ -#define PIC - -#define _exit __exit -#include "clone.S" -#undef _exit - -#include "__longjmp.S" -#include "setjmp.S" |