Sfoglia il codice sorgente

Added sparc_solaris stuff

ceriel 31 anni fa
parent
commit
9e7c8d2c9f
100 ha cambiato i file con 776 aggiunte e 0 eliminazioni
  1. 4 0
      mach/sparc_solaris/libsys/.distr
  2. 142 0
      mach/sparc_solaris/libsys/LIST
  3. 119 0
      mach/sparc_solaris/libsys/SYS.h
  4. 3 0
      mach/sparc_solaris/libsys/_alarm.s
  5. 44 0
      mach/sparc_solaris/libsys/_brk.s
  6. 3 0
      mach/sparc_solaris/libsys/_close.s
  7. 3 0
      mach/sparc_solaris/libsys/_creat.s
  8. 3 0
      mach/sparc_solaris/libsys/_dup.s
  9. 3 0
      mach/sparc_solaris/libsys/_dup2.s
  10. 8 0
      mach/sparc_solaris/libsys/_execl.c
  11. 3 0
      mach/sparc_solaris/libsys/_execve.s
  12. 3 0
      mach/sparc_solaris/libsys/_exit.s
  13. 3 0
      mach/sparc_solaris/libsys/_fork.s
  14. 3 0
      mach/sparc_solaris/libsys/_fstat.s
  15. 3 0
      mach/sparc_solaris/libsys/_getpid.s
  16. 3 0
      mach/sparc_solaris/libsys/_gtty.s
  17. 3 0
      mach/sparc_solaris/libsys/_ioctl.s
  18. 3 0
      mach/sparc_solaris/libsys/_kill.s
  19. 3 0
      mach/sparc_solaris/libsys/_link.s
  20. 3 0
      mach/sparc_solaris/libsys/_lseek.s
  21. 3 0
      mach/sparc_solaris/libsys/_open.s
  22. 3 0
      mach/sparc_solaris/libsys/_pause.s
  23. 3 0
      mach/sparc_solaris/libsys/_pipe.s
  24. 3 0
      mach/sparc_solaris/libsys/_read.s
  25. 21 0
      mach/sparc_solaris/libsys/_sig_catch.s
  26. 3 0
      mach/sparc_solaris/libsys/_signal.s
  27. 3 0
      mach/sparc_solaris/libsys/_stty.s
  28. 3 0
      mach/sparc_solaris/libsys/_times.s
  29. 3 0
      mach/sparc_solaris/libsys/_unlink.s
  30. 3 0
      mach/sparc_solaris/libsys/_wait.s
  31. 3 0
      mach/sparc_solaris/libsys/_write.s
  32. 4 0
      mach/sparc_solaris/libsys/access.s
  33. 3 0
      mach/sparc_solaris/libsys/acct.s
  34. 3 0
      mach/sparc_solaris/libsys/adjtime.s
  35. 3 0
      mach/sparc_solaris/libsys/alarm.s
  36. 44 0
      mach/sparc_solaris/libsys/brk.s
  37. 18 0
      mach/sparc_solaris/libsys/cerror.s
  38. 3 0
      mach/sparc_solaris/libsys/chdir.s
  39. 3 0
      mach/sparc_solaris/libsys/chmod.s
  40. 3 0
      mach/sparc_solaris/libsys/chown.s
  41. 3 0
      mach/sparc_solaris/libsys/chroot.s
  42. 1 0
      mach/sparc_solaris/libsys/cleanup.c
  43. 3 0
      mach/sparc_solaris/libsys/close.s
  44. 3 0
      mach/sparc_solaris/libsys/creat.s
  45. 3 0
      mach/sparc_solaris/libsys/dup.s
  46. 3 0
      mach/sparc_solaris/libsys/dup2.s
  47. 8 0
      mach/sparc_solaris/libsys/execl.c
  48. 9 0
      mach/sparc_solaris/libsys/execle.c
  49. 7 0
      mach/sparc_solaris/libsys/execv.c
  50. 3 0
      mach/sparc_solaris/libsys/execve.s
  51. 5 0
      mach/sparc_solaris/libsys/exit.c
  52. 3 0
      mach/sparc_solaris/libsys/fchdir.s
  53. 3 0
      mach/sparc_solaris/libsys/fchmod.s
  54. 3 0
      mach/sparc_solaris/libsys/fchown.s
  55. 3 0
      mach/sparc_solaris/libsys/fchroot.s
  56. 4 0
      mach/sparc_solaris/libsys/fcntl.s
  57. 3 0
      mach/sparc_solaris/libsys/fork.s
  58. 3 0
      mach/sparc_solaris/libsys/fstat.s
  59. 3 0
      mach/sparc_solaris/libsys/fsync.s
  60. 3 0
      mach/sparc_solaris/libsys/ftruncate.s
  61. 3 0
      mach/sparc_solaris/libsys/getdents.s
  62. 3 0
      mach/sparc_solaris/libsys/getegid.s
  63. 3 0
      mach/sparc_solaris/libsys/geteuid.s
  64. 3 0
      mach/sparc_solaris/libsys/getgid.s
  65. 3 0
      mach/sparc_solaris/libsys/getgroups.s
  66. 3 0
      mach/sparc_solaris/libsys/getitimer.s
  67. 3 0
      mach/sparc_solaris/libsys/getmsg.s
  68. 3 0
      mach/sparc_solaris/libsys/getpgid.s
  69. 3 0
      mach/sparc_solaris/libsys/getpgrp.s
  70. 3 0
      mach/sparc_solaris/libsys/getpid.s
  71. 3 0
      mach/sparc_solaris/libsys/getpmsg.s
  72. 3 0
      mach/sparc_solaris/libsys/getppid.s
  73. 4 0
      mach/sparc_solaris/libsys/getrlimit.s
  74. 3 0
      mach/sparc_solaris/libsys/getsid.s
  75. 3 0
      mach/sparc_solaris/libsys/gettimeofday.s
  76. 3 0
      mach/sparc_solaris/libsys/getuid.s
  77. 3 0
      mach/sparc_solaris/libsys/gtty.s
  78. 84 0
      mach/sparc_solaris/libsys/head_em.s
  79. 3 0
      mach/sparc_solaris/libsys/ioctl.s
  80. 3 0
      mach/sparc_solaris/libsys/kill.s
  81. 3 0
      mach/sparc_solaris/libsys/lchown.s
  82. 3 0
      mach/sparc_solaris/libsys/link.s
  83. 3 0
      mach/sparc_solaris/libsys/lockf.s
  84. 3 0
      mach/sparc_solaris/libsys/lseek.s
  85. 3 0
      mach/sparc_solaris/libsys/lstat.s
  86. 3 0
      mach/sparc_solaris/libsys/mincore.s
  87. 3 0
      mach/sparc_solaris/libsys/mkdir.s
  88. 3 0
      mach/sparc_solaris/libsys/mknod.s
  89. 3 0
      mach/sparc_solaris/libsys/mmap.s
  90. 3 0
      mach/sparc_solaris/libsys/mount.s
  91. 3 0
      mach/sparc_solaris/libsys/mprotect.s
  92. 3 0
      mach/sparc_solaris/libsys/munmap.s
  93. 4 0
      mach/sparc_solaris/libsys/nice.s
  94. 3 0
      mach/sparc_solaris/libsys/open.s
  95. 3 0
      mach/sparc_solaris/libsys/pause.s
  96. 3 0
      mach/sparc_solaris/libsys/pipe.s
  97. 3 0
      mach/sparc_solaris/libsys/plock.s
  98. 3 0
      mach/sparc_solaris/libsys/poll.s
  99. 3 0
      mach/sparc_solaris/libsys/pread.s
  100. 3 0
      mach/sparc_solaris/libsys/profil.s

+ 4 - 0
mach/sparc_solaris/libsys/.distr

@@ -0,0 +1,4 @@
+LIST
+libmon_s.a
+head_em.s
+SYS.h

+ 142 - 0
mach/sparc_solaris/libsys/LIST

@@ -0,0 +1,142 @@
+libmon_s.a
+_execl.c
+cleanup.c
+execl.c
+execle.c
+execv.c
+exit.c
+tell.c
+signal.c
+_alarm.s
+_brk.s
+_close.s
+_creat.s
+_dup.s
+_dup2.s
+_execve.s
+_exit.s
+_fork.s
+_fstat.s
+_getpid.s
+_gtty.s
+_ioctl.s
+_kill.s
+_link.s
+_lseek.s
+_open.s
+_pause.s
+_pipe.s
+_read.s
+_signal.s
+_sig_catch.s
+_stty.s
+_times.s
+_unlink.s
+_wait.s
+_write.s
+access.s
+acct.s
+adjtime.s
+alarm.s
+brk.s
+chdir.s
+chmod.s
+chown.s
+chroot.s
+close.s
+creat.s
+dup.s
+dup2.s
+execve.s
+fchdir.s
+fchmod.s
+fchown.s
+fchroot.s
+fcntl.s
+fork.s
+fstat.s
+fsync.s
+ftruncate.s
+getdents.s
+getegid.s
+geteuid.s
+getgid.s
+getgroups.s
+getitimer.s
+getmsg.s
+getpgid.s
+getpgrp.s
+getpid.s
+getpmsg.s
+getppid.s
+getrlimit.s
+getsid.s
+gettimeofday.s
+getuid.s
+gtty.s
+ioctl.s
+kill.s
+lchown.s
+link.s
+lockf.s
+lseek.s
+lstat.s
+mincore.s
+mkdir.s
+mknod.s
+mmap.s
+mount.s
+mprotect.s
+munmap.s
+nice.s
+open.s
+pause.s
+pipe.s
+plock.s
+poll.s
+pread.s
+profil.s
+ptrace.s
+putmsg.s
+putpmsg.s
+pwrite.s
+read.s
+readlink.s
+readv.s
+rename.s
+rmdir.s
+setegid.s
+seteuid.s
+setgid.s
+setgroups.s
+setitimer.s
+setpgrp.s
+setrlimit.s
+setsid.s
+settimeofday.s
+setuid.s
+sighold.s
+sigignore.s
+sigpause.s
+sigrelse.s
+sigset.s
+stat.s
+stime.s
+stty.s
+symlink.s
+sync.s
+time.s
+times.s
+truncate.s
+ulimit.s
+umask.s
+umount.s
+uname.s
+unlink.s
+utime.s
+utimes.s
+vfork.s
+wait.s
+write.s
+writev.s
+cerror.s

+ 119 - 0
mach/sparc_solaris/libsys/SYS.h

@@ -0,0 +1,119 @@
+/*
+SYS.h
+*/
+
+#ifndef SYS_H
+#define SYS_H
+
+#define SYS_call_0(x) \
+	LABEL_(x); \
+	BODY(x)
+
+#define _SYS_call_0(x) \
+	LABEL__(x); \
+	BODY(x)
+
+#define SYS_call_1(x) \
+	LABEL_(x); \
+	ENTRY1; \
+	BODY(x)
+
+#define _SYS_call_1(x) \
+	LABEL__(x); \
+	ENTRY1; \
+	BODY(x)
+
+#define SYS_call_2(x) \
+	LABEL_(x); \
+	ENTRY2; \
+	BODY(x)
+
+#define _SYS_call_2(x) \
+	LABEL__(x); \
+	ENTRY2; \
+	BODY(x)
+
+#define SYS_call_3(x) \
+	LABEL_(x); \
+	ENTRY3; \
+	BODY(x)
+
+#define _SYS_call_3(x) \
+	LABEL__(x); \
+	ENTRY3; \
+	BODY(x)
+
+#define SYS_call_4(x) \
+	LABEL_(x); \
+	ENTRY4; \
+	BODY(x)
+
+#define _SYS_call_4(x) \
+	LABEL__(x); \
+	ENTRY4; \
+	BODY(x)
+
+#define SYS_call_5(x) \
+	LABEL_(x); \
+	ENTRY5; \
+	BODY(x)
+
+#define _SYS_call_5(x) \
+	LABEL__(x); \
+	ENTRY5; \
+	BODY(x)
+
+#define SYS_call_6(x) \
+	LABEL_(x); \
+	ENTRY6; \
+	BODY(x)
+
+#define _SYS_call_6(x) \
+	LABEL__(x); \
+	ENTRY6; \
+	BODY(x)
+
+#define BODY(x) \
+	b x; \
+	nop
+
+#if __STDC__
+#define LABEL_(x) \
+	.global $ ## x; \
+	$ ## x:
+#define LABEL__(x) \
+	.global $_ ## x; \
+	$_ ## x:
+#else
+#define LABEL_(x) \
+	.global $/**/x; \
+	$/**/x:
+#define LABEL__(x) \
+	.global $_/**/x; \
+	$_/**/x:
+#endif
+
+#define ENTRY1 \
+	ld	[%l0], %o0 \
+
+#define ENTRY2 \
+	ENTRY1; \
+	ld	[%l0+4], %o1 \
+
+#define ENTRY3 \
+	ENTRY2; \
+	ld	[%l0+8], %o2 \
+
+#define ENTRY4 \
+	ENTRY3; \
+	ld	[%l0+12], %o3 \
+
+#define ENTRY5 \
+	ENTRY4; \
+	ld	[%l0+16], %o4 \
+
+#define ENTRY6 \
+	ENTRY5; \
+	ld	[%l0+20], %o5 \
+
+#endif /* SYS_H */

+ 3 - 0
mach/sparc_solaris/libsys/_alarm.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_1(alarm)

+ 44 - 0
mach/sparc_solaris/libsys/_brk.s

@@ -0,0 +1,44 @@
+#include "SYS.h"
+
+LABEL__(brk)
+	mov	%o7,%g2
+	ld	[%l0], %o0
+	inc	7, %o0
+	andn	%o0, 7, %o0
+	call	brk
+	mov     %o0, %o2
+	mov	%g2,%o7
+	tst	%o0
+	bge	0f
+	nop
+	retl
+	nop
+0:
+	set	limhp, %g1
+	st	%o2, [%g1]
+	retl
+	nop
+
+
+LABEL__(sbrk)
+	mov	%o7,%g2
+	ld	[%l0], %o0
+	inc	7, %o0
+	andn	%o0, 7, %o0
+	set	limhp, %o1
+	ld	[%o1], %o2
+	inc	7, %o2
+	andn	%o2, 7, %o3
+	add	%o3, %o0, %o0
+	call	brk
+	mov	%o0, %o4
+	mov	%g2,%o7
+	tst	%o0
+	blt	0f
+	nop
+	set	limhp, %g1
+	st	%o4, [%g1]
+	mov	%o3, %o0
+0:
+	retl
+	nop

+ 3 - 0
mach/sparc_solaris/libsys/_close.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_1(close)

+ 3 - 0
mach/sparc_solaris/libsys/_creat.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_2(creat)

+ 3 - 0
mach/sparc_solaris/libsys/_dup.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_1(dup)

+ 3 - 0
mach/sparc_solaris/libsys/_dup2.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_2(dup2)

+ 8 - 0
mach/sparc_solaris/libsys/_execl.c

@@ -0,0 +1,8 @@
+_execl(name,args)
+	char *name;
+	int args;
+{
+	extern char **environ;
+
+	_execve(name,&args,environ);
+}

+ 3 - 0
mach/sparc_solaris/libsys/_execve.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_3(execve)

+ 3 - 0
mach/sparc_solaris/libsys/_exit.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_1(exit)

+ 3 - 0
mach/sparc_solaris/libsys/_fork.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_0(fork)

+ 3 - 0
mach/sparc_solaris/libsys/_fstat.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_2(fstat)

+ 3 - 0
mach/sparc_solaris/libsys/_getpid.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_0(getpid)

+ 3 - 0
mach/sparc_solaris/libsys/_gtty.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_2(gtty)

+ 3 - 0
mach/sparc_solaris/libsys/_ioctl.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_3(ioctl)

+ 3 - 0
mach/sparc_solaris/libsys/_kill.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_2(kill)

+ 3 - 0
mach/sparc_solaris/libsys/_link.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_2(link)

+ 3 - 0
mach/sparc_solaris/libsys/_lseek.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_3(lseek)

+ 3 - 0
mach/sparc_solaris/libsys/_open.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_3(open)

+ 3 - 0
mach/sparc_solaris/libsys/_pause.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_0(pause)

+ 3 - 0
mach/sparc_solaris/libsys/_pipe.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_1(pipe)

+ 3 - 0
mach/sparc_solaris/libsys/_read.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_3(read)

+ 21 - 0
mach/sparc_solaris/libsys/_sig_catch.s

@@ -0,0 +1,21 @@
+#include "SYS.h"
+
+LABEL__(sig_catch)
+	save	%sp, %g4, %sp
+	mov	%fp, %l0		! get new EM frame pointer
+
+	dec	4, %l0
+	st	%i0, [%l0]		! push signal number on EM stack
+
+	set	$_sig_funcs, %l1
+	dec	1, %i0
+	sll	%i0, 2, %l2
+	add	%l1, %l2, %l3
+	ld	[%l3], %l2		! get signal handler into %l2
+
+	call	%l2
+	nop
+
+	restore
+	retl
+	add	%sp,%g4,%sp

+ 3 - 0
mach/sparc_solaris/libsys/_signal.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_2(signal)

+ 3 - 0
mach/sparc_solaris/libsys/_stty.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_2(stty)

+ 3 - 0
mach/sparc_solaris/libsys/_times.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_1(times)

+ 3 - 0
mach/sparc_solaris/libsys/_unlink.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_1(unlink)

+ 3 - 0
mach/sparc_solaris/libsys/_wait.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_1(wait)

+ 3 - 0
mach/sparc_solaris/libsys/_write.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+_SYS_call_3(write)

+ 4 - 0
mach/sparc_solaris/libsys/access.s

@@ -0,0 +1,4 @@
+#include "SYS.h"
+
+SYS_call_2(access)
+

+ 3 - 0
mach/sparc_solaris/libsys/acct.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(acct)

+ 3 - 0
mach/sparc_solaris/libsys/adjtime.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(adjtime)

+ 3 - 0
mach/sparc_solaris/libsys/alarm.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(alarm)

+ 44 - 0
mach/sparc_solaris/libsys/brk.s

@@ -0,0 +1,44 @@
+#include "SYS.h"
+
+LABEL_(brk)
+	mov	%o7,%g2
+	ld	[%l0], %o0
+	inc	7, %o0
+	andn	%o0, 7, %o0
+	call	brk
+	mov     %o0, %o2
+	mov	%g2,%o7
+	tst	%o0
+	bge	0f
+	nop
+	retl
+	nop
+0:
+	set	limhp, %g1
+	st	%o2, [%g1]
+	retl
+	nop
+
+
+LABEL_(sbrk)
+	mov	%o7,%g2
+	ld	[%l0], %o0
+	inc	7, %o0
+	andn	%o0, 7, %o0
+	set	limhp, %o1
+	ld	[%o1], %o2
+	inc	7, %o2
+	andn	%o2, 7, %o3
+	add	%o3, %o0, %o0
+	call	brk
+	mov	%o0, %o4
+	mov	%g2,%o7
+	tst	%o0
+	blt	0f
+	nop
+	set	limhp, %g1
+	st	%o4, [%g1]
+	mov	%o3, %o0
+0:
+	retl
+	nop

+ 18 - 0
mach/sparc_solaris/libsys/cerror.s

@@ -0,0 +1,18 @@
+.global $errno, cerror, _cerror
+
+.type _cerror, #function
+
+.section ".text"
+cerror:
+_cerror:
+	set	$errno, %o5
+	st	%o0, [%o5]
+	set	errno, %o5
+	st	%o0, [%o5]
+	set	-1, %o0
+	retl
+	nop
+
+.section ".data"
+$errno:
+	.long	0

+ 3 - 0
mach/sparc_solaris/libsys/chdir.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(chdir)

+ 3 - 0
mach/sparc_solaris/libsys/chmod.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(chmod)

+ 3 - 0
mach/sparc_solaris/libsys/chown.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(chown)

+ 3 - 0
mach/sparc_solaris/libsys/chroot.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(chroot)

+ 1 - 0
mach/sparc_solaris/libsys/cleanup.c

@@ -0,0 +1 @@
+_cleanup() { }

+ 3 - 0
mach/sparc_solaris/libsys/close.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(close)

+ 3 - 0
mach/sparc_solaris/libsys/creat.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(creat)

+ 3 - 0
mach/sparc_solaris/libsys/dup.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(dup)

+ 3 - 0
mach/sparc_solaris/libsys/dup2.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(dup2)

+ 8 - 0
mach/sparc_solaris/libsys/execl.c

@@ -0,0 +1,8 @@
+execl(name,args)
+	char *name;
+	int args;
+{
+	extern char **environ;
+
+	execve(name,&args,environ);
+}

+ 9 - 0
mach/sparc_solaris/libsys/execle.c

@@ -0,0 +1,9 @@
+execle(name,args)
+	char *name;
+	char *args;
+{
+	char **p = &args;
+	while (*p++) ;
+
+	execve(name,&args,*p);
+}

+ 7 - 0
mach/sparc_solaris/libsys/execv.c

@@ -0,0 +1,7 @@
+execv(name,args)
+	char *name;
+	char **args;
+{
+	extern char **environ;
+	execve(name,args,environ);
+}

+ 3 - 0
mach/sparc_solaris/libsys/execve.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(execve)

+ 5 - 0
mach/sparc_solaris/libsys/exit.c

@@ -0,0 +1,5 @@
+exit(n)
+{
+	_cleanup();
+	_exit(n);
+}

+ 3 - 0
mach/sparc_solaris/libsys/fchdir.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(fchdir)

+ 3 - 0
mach/sparc_solaris/libsys/fchmod.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(fchmod)

+ 3 - 0
mach/sparc_solaris/libsys/fchown.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(fchown)

+ 3 - 0
mach/sparc_solaris/libsys/fchroot.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(fchroot)

+ 4 - 0
mach/sparc_solaris/libsys/fcntl.s

@@ -0,0 +1,4 @@
+#include "SYS.h"
+
+SYS_call_3(fcntl)
+

+ 3 - 0
mach/sparc_solaris/libsys/fork.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_0(fork)

+ 3 - 0
mach/sparc_solaris/libsys/fstat.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(fstat)

+ 3 - 0
mach/sparc_solaris/libsys/fsync.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(fsync)

+ 3 - 0
mach/sparc_solaris/libsys/ftruncate.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(ftruncate)

+ 3 - 0
mach/sparc_solaris/libsys/getdents.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(getdents)

+ 3 - 0
mach/sparc_solaris/libsys/getegid.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_0(getegid)

+ 3 - 0
mach/sparc_solaris/libsys/geteuid.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_0(geteuid)

+ 3 - 0
mach/sparc_solaris/libsys/getgid.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_0(getgid)

+ 3 - 0
mach/sparc_solaris/libsys/getgroups.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(getgroups)

+ 3 - 0
mach/sparc_solaris/libsys/getitimer.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(getitimer)

+ 3 - 0
mach/sparc_solaris/libsys/getmsg.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_4(getmsg)

+ 3 - 0
mach/sparc_solaris/libsys/getpgid.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(getpgid)

+ 3 - 0
mach/sparc_solaris/libsys/getpgrp.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(getpgrp)

+ 3 - 0
mach/sparc_solaris/libsys/getpid.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_0(getpid)

+ 3 - 0
mach/sparc_solaris/libsys/getpmsg.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_5(getpmsg)

+ 3 - 0
mach/sparc_solaris/libsys/getppid.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(getppid)

+ 4 - 0
mach/sparc_solaris/libsys/getrlimit.s

@@ -0,0 +1,4 @@
+#include "SYS.h"
+
+SYS_call_2(getrlimit)
+

+ 3 - 0
mach/sparc_solaris/libsys/getsid.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(getsid)

+ 3 - 0
mach/sparc_solaris/libsys/gettimeofday.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(gettimeofday)

+ 3 - 0
mach/sparc_solaris/libsys/getuid.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_0(getuid)

+ 3 - 0
mach/sparc_solaris/libsys/gtty.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(gtty)

+ 84 - 0
mach/sparc_solaris/libsys/head_em.s

@@ -0,0 +1,84 @@
+.global lino,filn
+.global EXIT
+.global	begtext,begdata,begbss
+.global	EARRAY,ERANGE,ESET,EIDIVZ,EHEAP,EILLINS,ECASE,EBADGTO
+.global	hol0,reghp,limhp,trpim,trppc
+.global _start
+
+! runtime startof for sparc on sun4
+
+
+LINO_AD	= 0
+FILN_AD	= 4
+
+EARRAY	= 0
+ERANGE	= 1
+ESET	= 2
+EIDIVZ	= 6
+EHEAP	= 17
+EILLINS	= 18
+ECASE	= 20
+EBADGTO = 27
+
+	.section ".text"
+
+begtext:
+_start:
+	clr	%fp
+        ld	[%sp + 0x40], %o0
+	add	%sp, 0x44, %o1
+
+	sub	%sp, 32, %sp
+
+	sll	%o0, 0x2, %o2
+	add	%o2, 0x4, %o2
+	add	%o1, %o2, %o2
+	set	-0x100000, %g4		! should be a few M
+	clr	%l1
+	mov	%sp, %l0
+	add	%sp, %g4, %sp
+	dec	12, %l0
+					! enable divide by 0 trap and improper
+					! trap
+	st	%fsr, [%l0]
+	ld	[%l0], %o3
+	set	0x09000000, %o4
+	or	%o3, %o4, %o3
+	st	%o3, [%l0]
+	ld	[%l0], %fsr
+
+	st	%o0, [%l0]
+	st	%o1, [%l0+4]
+	st	%o2, [%l0+8]
+
+	call	$_m_a_i_n
+	nop
+	dec	4, %l0
+	st	%g0, [%l0]
+EXIT:
+	call	$_exit
+	nop
+
+.type _start,#function
+.size _start,.-_start
+
+	.section ".data"
+begdata:
+	.word 0		! may be at virtual address 0 with no problem
+hol0:
+lino:
+	.word	0	! lino
+filn:
+	.word	0	! filn
+reghp:
+	.word	$_end
+limhp:
+	.word	$_end
+trppc:
+	.word	0
+trpim:
+	.word	0	! USED TO BE 2 BYTES; IS THIS RIGHT?
+
+
+	.section ".bss"
+begbss: !initialization is not needed because ALL entries are in zero space!

+ 3 - 0
mach/sparc_solaris/libsys/ioctl.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(ioctl)

+ 3 - 0
mach/sparc_solaris/libsys/kill.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(kill)

+ 3 - 0
mach/sparc_solaris/libsys/lchown.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(lchown)

+ 3 - 0
mach/sparc_solaris/libsys/link.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(link)

+ 3 - 0
mach/sparc_solaris/libsys/lockf.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(lockf)

+ 3 - 0
mach/sparc_solaris/libsys/lseek.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(lseek)

+ 3 - 0
mach/sparc_solaris/libsys/lstat.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(lstat)

+ 3 - 0
mach/sparc_solaris/libsys/mincore.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(mincore)

+ 3 - 0
mach/sparc_solaris/libsys/mkdir.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(mkdir)

+ 3 - 0
mach/sparc_solaris/libsys/mknod.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(mknod)

+ 3 - 0
mach/sparc_solaris/libsys/mmap.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_6(mmap)

+ 3 - 0
mach/sparc_solaris/libsys/mount.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_4(mount)

+ 3 - 0
mach/sparc_solaris/libsys/mprotect.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(mprotect)

+ 3 - 0
mach/sparc_solaris/libsys/munmap.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_2(munmap)

+ 4 - 0
mach/sparc_solaris/libsys/nice.s

@@ -0,0 +1,4 @@
+#include "SYS.h"
+
+SYS_call_1(nice)
+

+ 3 - 0
mach/sparc_solaris/libsys/open.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(open)

+ 3 - 0
mach/sparc_solaris/libsys/pause.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_0(pause)

+ 3 - 0
mach/sparc_solaris/libsys/pipe.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(pipe)

+ 3 - 0
mach/sparc_solaris/libsys/plock.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_1(plock)

+ 3 - 0
mach/sparc_solaris/libsys/poll.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_3(poll)

+ 3 - 0
mach/sparc_solaris/libsys/pread.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_4(pread)

+ 3 - 0
mach/sparc_solaris/libsys/profil.s

@@ -0,0 +1,3 @@
+#include "SYS.h"
+
+SYS_call_4(profil)

Some files were not shown because too many files changed in this diff