URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Subversion Repositories or1k
[/] [or1k/] [trunk/] [newlib-1.10.0/] [newlib/] [libc/] [sys/] [a29khif/] [sys/] [sysmac.h] - Rev 1765
Compare with Previous | Blame | View Log
; @(#)sysmac.h 1.7 90/10/14 20:56:17, Copyright 1988, 1989, 1990 AMD ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Copyright 1988, 1989, 1990 Advanced Micro Devices, Inc. ; ; This software is the property of Advanced Micro Devices, Inc (AMD) which ; specifically grants the user the right to modify, use and distribute this ; software provided this notice is not removed or altered. All other rights ; are reserved by AMD. ; ; AMD MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS ; SOFTWARE. IN NO EVENT SHALL AMD BE LIABLE FOR INCIDENTAL OR CONSEQUENTIAL ; DAMAGES IN CONNECTION WITH OR ARISING FROM THE FURNISHING, PERFORMANCE, OR ; USE OF THIS SOFTWARE. ; ; So that all may benefit from your experience, please report any problems ; or suggestions about this software to the 29K Technical Support Center at ; 800-29-29-AMD (800-292-9263) in the USA, or 0800-89-1131 in the UK, or ; 0031-11-1129 in Japan, toll free. The direct dial number is 512-462-4118. ; ; Advanced Micro Devices, Inc. ; 29K Support Products ; Mail Stop 573 ; 5900 E. Ben White Blvd. ; Austin, TX 78741 ; 800-292-9263 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; ; sysmac.h ; .include "sys/proreg.h" ; Supported system call function numbers - BSD emulation .equ BSD_exit, 1 .equ BSD_open, 5 .equ BSD_close, 6 .equ BSD_remove, 10 .equ BSD_lseek, 19 .equ BSD_sbrk, 69 .equ BSD_readv, 120 .equ BSD_writev, 121 .equ BSD_rename, 128 ; Functions above 0x100 are handled by Am29000 code .equ BSD_alloc, 0x101 .equ BSD_free, 0x102 .equ BSD_getpagesize, 0x103 .equ BSD_clock, 0x111 ; Supported system call function numbers - HIF version 2.0 .equ HIF_exit, 0x01 .equ HIF_open, 0x11 .equ HIF_close, 0x12 .equ HIF_read, 0x13 .equ HIF_write, 0x14 .equ HIF_lseek, 0x15 .equ HIF_remove, 0x16 .equ HIF_rename, 0x17 .equ HIF_ioctl, 0x18 .equ HIF_iowait, 0x19 .equ HIF_iostat, 0x1a .equ HIF_tmpnam, 0x21 .equ HIF_time, 0x31 .equ HIF_getenv, 0x41 .equ HIF_gettz, 0x43 .equ HIF_sysalloc, 0x101 .equ HIF_alloc, HIF_sysalloc ;Synonym. .equ HIF_sysfree, 0x102 .equ HIF_free, HIF_sysfree ;Synonym. .equ HIF_getpsize, 0x103 .equ HIF_getpagesize,HIF_getpsize ;Synonym. .equ HIF_getargs, 0x104 .equ HIF_clock, 0x111 .equ HIF_cycles, 0x112 .equ HIF_setvec, 0x121 .equ HIF_settrap, 0x122 .equ HIF_setim, 0x123 .equ HIF_query, 0x131 .equ HIF_signal, 0x141 .equ HIF_sigdfl, 0x142 .equ HIF_sigret, 0x143 .equ HIF_sigrep, 0x144 .equ HIF_sigskp, 0x145 .equ HIF_sendsig, 0x146 ;Maintain compatibility with HIF 1.0 code. .equ EPI_exit, HIF_exit .equ EPI_open, HIF_open .equ EPI_close, HIF_close .equ EPI_read, HIF_read .equ EPI_write, HIF_write .equ EPI_lseek, HIF_lseek .equ EPI_remove, HIF_remove .equ EPI_rename, HIF_rename .equ EPI_tmpnam, HIF_tmpnam .equ EPI_time, HIF_time .equ EPI_getenv, HIF_getenv .equ EPI_gettz, HIF_gettz .equ EPI_alloc, HIF_sysalloc .equ EPI_free, HIF_sysfree .equ EPI_getpagesize, HIF_getpsize .equ EPI_getargs, HIF_getargs .equ EPI_clock, HIF_clock .equ EPI_cycles, HIF_cycles .equ EPI_setvec, HIF_setvec .equ V_SYSCALL, 69 ; System call macros /* Now that source files have been sed'd to avoid these macros, they are just commented out. -- gnu@cygnus.com Oct 90 .ifdef _BSD_OS .equ V_SYSCALL, 66 .else .equ V_SYSCALL, 69 .endif .macro syscall, name .ifdef _BSD_OS const tav, SYS_@name .else const tav, HIF_@name .endif asneq V_SYSCALL, gr1, gr1 .endm ; error return ; set errno to the error value in tav. ; return -1 ; .macro returnerr ;; .extern _errno ; rather have undef'd sym than multiple def's const tpc, _errno consth tpc, _errno store 0, 0, tav, tpc jmpi lr0 constn v0, -1 .endm ; package the most common case in one macro ; .macro system, name syscall name jmpti tav, lr0 returnerr .endm */