Import Upstream version 1.8.5
[hcoop/debian/openafs.git] / src / sys / syscall.s
1 /*
2 * Copyright 2000, International Business Machines Corporation and others.
3 * All Rights Reserved.
4 *
5 * This software has been released under the terms of the IBM Public
6 * License. For details, see the LICENSE file in the top-level source
7 * directory or online at http://www.openafs.org/dl/license10.html
8 */
9
10 #define IGNORE_STDS_H
11 #include <afs/param.h>
12
13 #if defined(AFS_AIX32_ENV) && defined(RIOS)
14 /*
15 * This is never be referenced, and is only here as placeholder;
16 * that's AIX, I'm afraid.
17 */
18 .globl .rios_dummy_sysc[PR]
19 .csect .rios_dummy_sysc[PR]
20 t 4,1,1 # trap always
21 #ifdef AFS_AIX41_ENV
22 br # just return
23 #else
24
25 bcr 14, 0 # and return
26 #endif
27 #endif
28 #ifdef __hp9000s800
29 .CODE
30 dummysysc
31 .PROC
32 .CALLINFO FRAME=0
33 .ENTRY
34 STW %r19,-28(0,%r30)
35 LDIL L%0xc0000004,%r1
36 BLE R%0xc0000004(%sr7,%r1)
37 LDI 4,%r22 ; Load the value here (in place of 4)
38 OR,= 0,22,0
39 B $cerror
40 LDW -28(0,%r30),%r19
41 BV,N %r0(%r2)
42 OR 0,0,0
43 .EXIT
44 .PROCEND
45
46 .EXPORT dummysysc,ENTRY
47 .IMPORT $cerror,CODE
48 .END
49 #else
50 #if defined(AFS_SGI_ENV)
51 #include <regdef.h>
52 #include <sys/asm.h>
53
54 LEAF(afs_syscall)
55 li v0,AFS_SYSCALL
56 syscall
57 beq a3,zero,9f
58 la t9, _cerror
59 j t9
60 9: j ra
61 .end afs_syscall
62 #endif /* AFS_SGI_ENV */
63 #endif
64
65 #if defined(__linux__) && defined(__ELF__)
66 .section .note.GNU-stack,"",%progbits
67 #endif