tabs->spaces
[AROS.git] / compiler / arossupport / rt_stubs.s
blobad9172e119346f6effa89ed9ee73f886978c6f2e
1 # Copyright © 1995-96, The AROS Development Team. All rights reserved.
2 # $Id$
3 # $Log$
4 # Revision 1.2 1998/10/20 16:40:29 hkiel
5 # Amiga Research OS
7 # Revision 1.1 1997/03/27 01:11:01 ldp
8 # libaros.a -> libarossupport.a
10 # Revision 1.2 1996/08/31 12:58:10 aros
11 # Merged in/modified for FreeBSD.
13 # Revision 1.1 1996/08/23 17:26:44 digulla
14 # Files with functions for RT and Purify
16 # Revision 1.3 1996/08/13 14:03:18 digulla
17 # Added standard headers
19 # Revision 1.2 1996/08/01 17:41:25 digulla
20 # Added standard header for all files
22 # Desc:
23 # Lang:
25 #*****************************************************************************
27 # NAME
28 # RT_Leave
30 # FUNCTION
31 # Tell RT that you have left a function.
33 # INPUTS
34 # none
36 # RESULT
37 # none
39 # NOTES
40 # Preserves all registers.
42 # EXAMPLE
44 # BUGS
46 # SEE ALSO
48 # INTERNALS
50 # HISTORY
52 #******************************************************************************
53 .text
54 .balign 16
55 .globl RT_Leave
56 .type RT_Leave,@function
57 RT_Leave:
58 # Push all registers
59 pushl %eax
60 pushl %ebx
61 pushl %ecx
62 pushl %edx
63 pushl %edi
64 pushl %esi
65 pushl %ebp
67 # Call RT_IntLeave
68 call RT_IntLeave
70 # Restore registers and return
71 popl %ebp
72 popl %esi
73 popl %edi
74 popl %edx
75 popl %ecx
76 popl %ebx
77 popl %eax
78 ret