xref: /haiku/src/system/libroot/posix/arch/m68k/setjmp_internal.h (revision 820dca4df6c7bf955c46e8f6521b9408f50b2900)
1 /*
2  * Copyright 2005, Ingo Weinhold <bonefish@cs.tu-berlin.de>. All rights
3  * reserved. Distributed under the terms of the Haiku License.
4  */
5 #ifndef SETJMP_INTERNAL_H
6 #define SETJMP_INTERNAL_H
7 
8 /*	M68K function call ABI register use:
9 	d0		- return value
10 	d1		- volatile (return value?)
11 	d2-d7		- local vars
12 	a0		- return value
13 	a1		- volatile (return value?)
14 	a2-a6		- local vars
15 	a6		- (stack frame ?)
16 	a7		- stack pointer
17 */
18 
19 /* These are the fields of the __jmp_regs structure */
20 #define JMP_REGS_D2     0
21 #define JMP_REGS_PC     (4*(6+6))
22 #define JMP_REGS_CCR    (4*(6+6)+4)
23 
24 #define FUNCTION(x) .global x; .type x,@function; x
25 
26 #endif	/* SETJMP_INTERNAL_H */
27