Remove all tabs within codec path.
[kugel-rb.git] / apps / codecs / lib / setjmp.h
blobf7ff2ea58c34448ce51a361dfe9a2e7f69e77e25
1 #ifndef _SETJMP_H_
2 #define _SETJMP_H_
4 /* Combined parts of include/setjmp.h and include/machine/setjmp.h in
5 * newlib 1.17.0, with minor changes for Rockbox.
6 */
8 #ifdef CPU_ARM
9 /*
10 * All callee preserved registers:
11 * v1 - v7, fp, ip, sp, lr, f4, f5, f6, f7
13 #define _JBLEN 23
14 #endif
16 /* necv70 was 9 as well. */
18 #ifdef CPU_COLDFIRE
20 * onsstack,sigmask,sp,pc,psl,d2-d7,a2-a6,
21 * fp2-fp7 for 68881.
22 * All else recovered by under/over(flow) handling.
24 #define _JBLEN 34
25 #endif
27 #ifdef CPU_MIPS
28 #if CPU_MIPS == 64
29 #define _JBTYPE long long
30 #endif
31 #ifdef __mips_soft_float
32 #define _JBLEN 11
33 #else
34 #define _JBLEN 23
35 #endif
36 #endif
38 #if 0 /* Disabled for now, as SH doesn't have setjmp implementation (yet) */
39 #ifdef __sh__
40 #if __SH5__
41 #define _JBLEN 50
42 #define _JBTYPE long long
43 #else
44 #define _JBLEN 20
45 #endif /* __SH5__ */
46 #endif
47 #endif
49 #ifdef _JBLEN
50 #ifdef _JBTYPE
51 typedef _JBTYPE jmp_buf[_JBLEN];
52 #else
53 typedef int jmp_buf[_JBLEN];
54 #endif
55 #else
56 typedef int jmp_buf;
57 #endif
60 extern void longjmp(jmp_buf __jmpb, int __retval);
61 extern int setjmp(jmp_buf __jmpb);
63 #endif // _SETJMP_H_