2 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
9 /******************************************************************************
15 Some macros to build functions with registerized parameters on the
16 different compilers around. Usage:
18 AROS_LH<n><f>(type, name, type1, name1, reg1, ...)
20 \* Function starts here. *\
23 <n> - Number of arguments of the function (not including the
26 <f> - 'I' means: Function ignores library base.
27 This is useful to get rid of warnings about unused arguments.
29 type - Returntype of the function.
31 name - Name of the function. A underscore '_' is prepended so that
32 following functions jump over the base vector and don't call
33 the function directly.
35 type<i>, name<i>, reg<i> - Type, name and register for the
36 arguments. Register names are written uppercase because they
37 are preprocessor symbols.
39 Example: Define a Exec compatible RemHead function.
41 AROS_LH1I(struct Node *, RemHead,
42 struct List *, list, A0,
43 struct ExecBase, SysBase, 43, Exec)
45 // Hier *keine* ";" !!
51 if(node->ln_Succ==NULL)
60 ******************************************************************************/
62 /* System-Specific things */
64 # include <aros/system.h>
67 #ifndef __typedef_VOID_FUNC
68 #define __typedef_VOID_FUNC
69 typedef void (*VOID_FUNC
)();
71 #ifndef __typedef_LONG_FUNC
72 #define __typedef_LONG_FUNC
73 typedef int (*LONG_FUNC
)();
75 #ifndef __typedef_ULONG_FUNC
76 #define __typedef_ULONG_FUNC
77 typedef unsigned int (*ULONG_FUNC
)();
80 /* Declare all macros which the systems' libcall didn't */
81 #ifndef __AROS_SLIB_ENTRY
82 # define __AROS_SLIB_ENTRY(n,s) s ## _ ## n
84 #ifndef AROS_SLIB_ENTRY
86 This is to allow the C preprocessor to expand n and s before they are
87 maybe concatenated (the CPP first evaluates a ## b and the tries
88 to expand ab instead of expanding a and b and then concatenating the
91 # define AROS_SLIB_ENTRY(n,s) __AROS_SLIB_ENTRY(n,s)
94 #if !(UseRegisterArgs && defined(AROS_COMPILER_NO_REGARGS)) && !defined(__AROS_CPU_SPECIFIC_LIBCALLS)
95 /* Library functions which need the libbase */
96 #define AROS_LHQUAD1(t,n,a1,bt,bn,o,s) \
97 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
99 __AROS_LH_BASE(bt,bn)) {
100 #define AROS_LHQUAD2(t,n,a1,a2,bt,bn,o,s) \
101 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
104 __AROS_LH_BASE(bt,bn)) {
106 #define AROS_LH0(t,n,bt,bn,o,s) \
107 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
108 __AROS_LH_BASE(bt,bn)) {
109 #define AROS_LH1(t,n,a1,bt,bn,o,s) \
110 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
112 __AROS_LH_BASE(bt,bn)) {
113 #define AROS_LH2(t,n,a1,a2,bt,bn,o,s) \
114 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
117 __AROS_LH_BASE(bt,bn)) {
118 #define AROS_LH3(t,n,a1,a2,a3,bt,bn,o,s) \
119 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
123 __AROS_LH_BASE(bt,bn)) {
124 #define AROS_LH4(t,n,a1,a2,a3,a4,bt,bn,o,s) \
125 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
130 __AROS_LH_BASE(bt,bn)) {
131 #define AROS_LH5(t,n,a1,a2,a3,a4,a5,bt,bn,o,s) \
132 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
138 __AROS_LH_BASE(bt,bn)) {
139 #define AROS_LH6(t,n,a1,a2,a3,a4,a5,a6,bt,bn,o,s) \
140 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
147 __AROS_LH_BASE(bt,bn)) {
148 #define AROS_LH7(t,n,a1,a2,a3,a4,a5,a6,a7,bt,bn,o,s) \
149 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
157 __AROS_LH_BASE(bt,bn)) {
158 #define AROS_LH8(t,n,a1,a2,a3,a4,a5,a6,a7,a8,bt,bn,o,s) \
159 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
168 __AROS_LH_BASE(bt,bn)) {
169 #define AROS_LH9(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,bt,bn,o,s) \
170 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
180 __AROS_LH_BASE(bt,bn)) {
181 #define AROS_LH10(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,bt,bn,o,s) \
182 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
193 __AROS_LH_BASE(bt,bn)) {
194 #define AROS_LH11(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,bt,bn,o,s) \
195 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
207 __AROS_LH_BASE(bt,bn)) {
208 #define AROS_LH12(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,bt,bn,o,s) \
209 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
222 __AROS_LH_BASE(bt,bn)) {
223 #define AROS_LH13(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,bt,bn,o,s) \
224 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
238 __AROS_LH_BASE(bt,bn)) {
239 #define AROS_LH14(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,bt,bn,o,s) \
240 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
255 __AROS_LH_BASE(bt,bn)) {
256 #define AROS_LH15(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,bt,bn,o,s) \
257 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
273 __AROS_LH_BASE(bt,bn)) {
275 /* Library functions which don't need the libbase */
276 #define AROS_LH0I(t,n,bt,bn,o,s) \
277 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(void) {
278 #define AROS_LH1I(t,n,a1,bt,bn,o,s) \
279 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
282 #define AROS_LH2I(t,n,a1,a2,bt,bn,o,s) \
283 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
287 #define AROS_LH3I(t,n,a1,a2,a3,bt,bn,o,s) \
288 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
293 #define AROS_LH4I(t,n,a1,a2,a3,a4,bt,bn,o,s) \
294 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
300 #define AROS_LH5I(t,n,a1,a2,a3,a4,a5,bt,bn,o,s) \
301 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
308 #define AROS_LH6I(t,n,a1,a2,a3,a4,a5,a6,bt,bn,o,s) \
309 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
317 #define AROS_LH7I(t,n,a1,a2,a3,a4,a5,a6,a7,bt,bn,o,s) \
318 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
327 #define AROS_LH8I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,bt,bn,o,s) \
328 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
338 #define AROS_LH9I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,bt,bn,o,s) \
339 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
350 #define AROS_LH10I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,bt,bn,o,s) \
351 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
363 #define AROS_LH11I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,bt,bn,o,s) \
364 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
377 #define AROS_LH12I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,bt,bn,o,s) \
378 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
392 #define AROS_LH13I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,bt,bn,o,s) \
393 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
408 #define AROS_LH14I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,bt,bn,o,s) \
409 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
425 #define AROS_LH15I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,bt,bn,o,s) \
426 __AROS_LH_PREFIX t AROS_SLIB_ENTRY(n,s)(\
444 /* Call a library function which requires the libbase */
445 #define AROS_LCQUAD1(t,n,a1,bt,bn,o,s) \
446 (((__AROS_LC_PREFIX t(*)(\
448 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
450 __AROS_LC_BASE(bt,bn)))
451 #define AROS_LCQUAD2(t,n,a1,a2,bt,bn,o,s) \
452 (((__AROS_LC_PREFIX t(*)(\
455 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
458 __AROS_LC_BASE(bt,bn)))
460 #define AROS_LC0(t,n,bt,bn,o,s) \
461 (((__AROS_LC_PREFIX t(*)(\
462 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
463 __AROS_LC_BASE(bt,bn)))
464 #define AROS_LC1(t,n,a1,bt,bn,o,s) \
465 (((__AROS_LC_PREFIX t(*)(\
467 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
469 __AROS_LC_BASE(bt,bn)))
470 #define AROS_LC2(t,n,a1,a2,bt,bn,o,s) \
471 (((__AROS_LC_PREFIX t(*)(\
474 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
477 __AROS_LC_BASE(bt,bn)))
478 #define AROS_LC3(t,n,a1,a2,a3,bt,bn,o,s) \
479 (((__AROS_LC_PREFIX t(*)(\
483 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
487 __AROS_LC_BASE(bt,bn)))
488 #define AROS_LC4(t,n,a1,a2,a3,a4,bt,bn,o,s) \
489 (((__AROS_LC_PREFIX t(*)(\
494 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
499 __AROS_LC_BASE(bt,bn)))
500 #define AROS_LC5(t,n,a1,a2,a3,a4,a5,bt,bn,o,s) \
501 (((__AROS_LC_PREFIX t(*)(\
507 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
513 __AROS_LC_BASE(bt,bn)))
514 #define AROS_LC6(t,n,a1,a2,a3,a4,a5,a6,bt,bn,o,s) \
515 (((__AROS_LC_PREFIX t(*)(\
522 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
529 __AROS_LC_BASE(bt,bn)))
530 #define AROS_LC7(t,n,a1,a2,a3,a4,a5,a6,a7,bt,bn,o,s) \
531 (((__AROS_LC_PREFIX t(*)(\
539 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
547 __AROS_LC_BASE(bt,bn)))
548 #define AROS_LC8(t,n,a1,a2,a3,a4,a5,a6,a7,a8,bt,bn,o,s) \
549 (((__AROS_LC_PREFIX t(*)(\
558 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
567 __AROS_LC_BASE(bt,bn)))
568 #define AROS_LC9(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,bt,bn,o,s) \
569 (((__AROS_LC_PREFIX t(*)(\
579 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
589 __AROS_LC_BASE(bt,bn)))
590 #define AROS_LC10(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,bt,bn,o,s) \
591 (((__AROS_LC_PREFIX t(*)(\
602 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
613 __AROS_LC_BASE(bt,bn)))
614 #define AROS_LC11(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,bt,bn,o,s) \
615 (((__AROS_LC_PREFIX t(*)(\
627 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
639 __AROS_LC_BASE(bt,bn)))
640 #define AROS_LC12(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,bt,bn,o,s) \
641 (((__AROS_LC_PREFIX t(*)(\
654 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
667 __AROS_LC_BASE(bt,bn)))
668 #define AROS_LC13(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,bt,bn,o,s) \
669 (((__AROS_LC_PREFIX t(*)(\
683 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
697 __AROS_LC_BASE(bt,bn)))
698 #define AROS_LC14(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,bt,bn,o,s) \
699 (((__AROS_LC_PREFIX t(*)(\
714 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
729 __AROS_LC_BASE(bt,bn)))
730 #define AROS_LC15(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,bt,bn,o,s) \
731 (((__AROS_LC_PREFIX t(*)(\
747 __AROS_LP_BASE(bt,bn)))__AROS_GETVECADDR(bn,o))(\
763 __AROS_LC_BASE(bt,bn)))
765 /* Macros for calling library functions without a return value. These macros should
766 * always be used when a library function has no return value but can also be used
767 * when the return value is not used
769 #define AROS_LC0NR AROS_LC0
770 #define AROS_LC1NR AROS_LC1
771 #define AROS_LC2NR AROS_LC2
772 #define AROS_LC3NR AROS_LC3
773 #define AROS_LC4NR AROS_LC4
774 #define AROS_LC5NR AROS_LC5
775 #define AROS_LC6NR AROS_LC6
776 #define AROS_LC7NR AROS_LC7
777 #define AROS_LC8NR AROS_LC8
778 #define AROS_LC9NR AROS_LC9
779 #define AROS_LC10NR AROS_LC10
780 #define AROS_LC11NR AROS_LC11
781 #define AROS_LC12NR AROS_LC12
782 #define AROS_LC13NR AROS_LC13
783 #define AROS_LC14NR AROS_LC14
784 #define AROS_LC15NR AROS_LC15
787 /* Special calls: Call a library function without the name just by the ADDRESS */
789 #define AROS_CALL0(returntype,address,basetype,basename) \
790 (((__AROS_LC_PREFIX returntype(*)(__AROS_LP_BASE(basetype,basename)))\
791 (void *)(address))(basename))
792 #define AROS_CALL0NR AROS_CALL0
796 #define AROS_CALL1(t,a,a1,bt,bn) \
797 (((__AROS_LC_PREFIX t(*)(\
799 __AROS_LP_BASE(bt,bn)))\
803 #define AROS_CALL1NR AROS_CALL1
807 #define AROS_CALL2(t,a,a1,a2,bt,bn) \
808 (((__AROS_LC_PREFIX t(*)(\
811 __AROS_LP_BASE(bt,bn)))\
816 #define AROS_CALL2NR AROS_CALL2
820 #define AROS_CALL3(t,a,a1,a2,a3,bt,bn) \
821 (((__AROS_LC_PREFIX t(*)(\
825 __AROS_LP_BASE(bt,bn)))\
831 #define AROS_CALL3NR AROS_CALL3
835 #define AROS_CALL4(t,a,a1,a2,a3,a4,bt,bn) \
836 (((__AROS_LC_PREFIX t(*)(\
841 __AROS_LP_BASE(bt,bn)))\
848 #define AROS_CALL4NR AROS_CALL4
852 #define AROS_CALL5(t,a,a1,a2,a3,a4,a5,bt,bn) \
853 (((__AROS_LC_PREFIX t(*)(\
859 __AROS_LP_BASE(bt,bn)))\
867 #define AROS_CALL5NR AROS_CALL5
871 #define AROS_CALL6(t,a,a1,a2,a3,a4,a5,a6,bt,bn) \
872 (((__AROS_LC_PREFIX t(*)(\
879 __AROS_LP_BASE(bt,bn)))\
888 #define AROS_CALL6NR AROS_CALL6
892 #define AROS_CALL7(t,a,a1,a2,a3,a4,a5,a6,a7,bt,bn) \
893 (((__AROS_LC_PREFIX t(*)(\
901 __AROS_LP_BASE(bt,bn)))\
911 #define AROS_CALL7NR AROS_CALL7
915 #define AROS_CALL8(t,a,a1,a2,a3,a4,a5,a6,a7,a8,bt,bn) \
916 (((__AROS_LC_PREFIX t(*)(\
925 __AROS_LP_BASE(bt,bn)))\
936 #define AROS_CALL8NR AROS_CALL8
940 #define AROS_CALL9(t,a,a1,a2,a3,a4,a5,a6,a7,a8,a9,bt,bn) \
941 (((__AROS_LC_PREFIX t(*)(\
951 __AROS_LP_BASE(bt,bn)))\
963 #define AROS_CALL9NR AROS_CALL9
967 #define AROS_CALL10(t,a,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,bt,bn) \
968 (((__AROS_LC_PREFIX t(*)(\
979 __AROS_LP_BASE(bt,bn)))\
992 #define AROS_CALL10NR AROS_CALL10
995 /* Special calls: Call a library function without the name just by the OFFSET */
997 #ifndef AROS_LVO_CALL0
998 #define AROS_LVO_CALL0(returntype,basetype,basename,offset,system) \
999 AROS_CALL0(returntype,__AROS_GETVECADDR(basename,offset),basetype,basename)
1002 #ifndef AROS_LVO_CALL0NR
1003 #define AROS_LVO_CALL0NR(returntype,basetype,basename,offset,system) \
1004 AROS_CALL0NR(returntype,__AROS_GETVECADDR(basename,offset),basetype,basename)
1007 #ifndef AROS_LVO_CALL1
1008 #define AROS_LVO_CALL1(t,a1,bt,bn,o,s) \
1009 AROS_CALL1(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),bt,bn)
1012 #ifndef AROS_LVO_CALL1NR
1013 #define AROS_LVO_CALL1NR(t,a1,bt,bn,o,s) \
1014 AROS_CALL1NR(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),bt,bn)
1017 #ifndef AROS_LVO_CALL2
1018 #define AROS_LVO_CALL2(t,a1,a2,bt,bn,o,s) \
1019 AROS_CALL2(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),bt,bn)
1022 #ifndef AROS_LVO_CALL2NR
1023 #define AROS_LVO_CALL2NR(t,a1,a2,bt,bn,o,s) \
1024 AROS_CALL2NR(t,AROS_LCA(a1),AROS_LCA(a2),bt,bn)
1027 #ifndef AROS_LVO_CALL3
1028 #define AROS_LVO_CALL3(t,a1,a2,a3,bt,bn,o,s) \
1029 AROS_CALL3(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),bt,bn)
1032 #ifndef AROS_LVO_CALL3NR
1033 #define AROS_LVO_CALL3NR(t,a1,a2,a3,bt,bn,o,s) \
1034 AROS_CALL3NR(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),bt,bn)
1037 #ifndef AROS_LVO_CALL4
1038 #define AROS_LVO_CALL4(t,a1,a2,a3,a4,bt,bn,o,s) \
1039 AROS_CALL4(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),bt,bn)
1042 #ifndef AROS_LVO_CALL4NR
1043 #define AROS_LVO_CALL4NR(t,a1,a2,a3,a4,bt,bn,o,s) \
1044 AROS_CALL4NR(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),bt,bn)
1047 #ifndef AROS_LVO_CALL5
1048 #define AROS_LVO_CALL5(t,a1,a2,a3,a4,a5,bt,bn,o,s) \
1049 AROS_CALL5(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),AROS_LCA(a5),bt,bn)
1052 #ifndef AROS_LVO_CALL5NR
1053 #define AROS_LVO_CALL5NR(t,a1,a2,a3,a4,a5,bt,bn,o,s) \
1054 AROS_CALL5NR(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),AROS_LCS(a5),bt,bn)
1057 #ifndef AROS_LVO_CALL6
1058 #define AROS_LVO_CALL6(t,a1,a2,a3,a4,a5,a6,bt,bn,o,s) \
1059 AROS_CALL6(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),AROS_LCA(a5),AROS_LCA(a6),bt,bn)
1062 #ifndef AROS_LVO_CALL6NR
1063 #define AROS_LVO_CALL6NR(t,a1,a2,a3,a4,a5,a6,bt,bn,o,s) \
1064 AROS_CALL6NR(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),AROS_LCS(a5),AROS_LCA(a6),bt,bn)
1067 #ifndef AROS_LVO_CALL7
1068 #define AROS_LVO_CALL7(t,a1,a2,a3,a4,a5,a6,a7,bt,bn,o,s) \
1069 AROS_CALL7(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),AROS_LCA(a5),AROS_LCA(a6),AROS_LCA(a7),bt,bn)
1072 #ifndef AROS_LVO_CALL7NR
1073 #define AROS_LVO_CALL7NR(t,a1,a2,a3,a4,a5,a6,a7,bt,bn,o,s) \
1074 AROS_CALL7NR(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),AROS_LCS(a5),AROS_LCA(a6),AROS_LCA(a7),bt,bn)
1077 #ifndef AROS_LVO_CALL8
1078 #define AROS_LVO_CALL8(t,a1,a2,a3,a4,a5,a6,a7,a8,bt,bn,o,s) \
1079 AROS_CALL8(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),AROS_LCA(a5),AROS_LCA(a6),AROS_LCA(a7),AROS_LCA(a8),bt,bn)
1082 #ifndef AROS_LVO_CALL8NR
1083 #define AROS_LVO_CALL8NR(t,a1,a2,a3,a4,a5,a6,a7,a8,bt,bn,o,s) \
1084 AROS_CALL8NR(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),AROS_LCS(a5),AROS_LCA(a6),AROS_LCA(a7),AROS_LCA(a8),bt,bn)
1087 #ifndef AROS_LVO_CALL9
1088 #define AROS_LVO_CALL9(t,a1,a2,a3,a4,a5,a6,a7,a8,a9,bt,bn,o,s) \
1089 AROS_CALL9(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),AROS_LCA(a5),AROS_LCA(a6),AROS_LCA(a7),AROS_LCA(a8),AROS_LCA(a9),bt,bn)
1092 #ifndef AROS_LVO_CALL9NR
1093 #define AROS_LVO_CALL9NR(t,a1,a2,a3,a4,a5,a6,a7,a8,a9,bt,bn,o,s) \
1094 AROS_CALL9NR(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),AROS_LCS(a5),AROS_LCA(a6),AROS_LCA(a7),AROS_LCA(a8),AROS_LCA(a9),bt,bn)
1097 #ifndef AROS_LVO_CALL10
1098 #define AROS_LVO_CALL10(t,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,bt,bn,o,s) \
1099 AROS_CALL10(t,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),AROS_LCA(a5),AROS_LCA(a6),AROS_LCA(a7),AROS_LCA(a8),AROS_LCA(a9),AROS_LCA(a10),bt,bn)
1102 #ifndef AROS_LVO_CALL10NR
1103 #define AROS_LVO_CALL10NR(t,a1,a2,a3,a4,a5,a6,a7,a8,a9,bt,bn,o,s) \
1104 AROS_CALL10NR(void,__AROS_GETVECADDR(bn,o),AROS_LCA(a1),AROS_LCA(a2),AROS_LCA(a3),AROS_LCA(a4),AROS_LCS(a5),AROS_LCA(a6),AROS_LCA(a7),AROS_LCA(a8),AROS_LCA(a9),AROS_LCA(a10),bt,bn)
1106 #endif /* !(UseRegisterArgs && defined(AROS_COMPILER_NO_REGARGS)) && !defined(__AROS_CPU_SPECIFIC_LIBCALLS) */
1108 #ifdef __AROS_USE_MACROS_FOR_LIBCALL
1109 # define AROS_LPQUAD1(t,n,a1,bt,bn,o,s)
1110 # define AROS_LPQUAD2(t,n,a1,a2,bt,bn,o,s)
1112 # define AROS_LP0(t,n,bt,bn,o,s)
1113 # define AROS_LP1(t,n,a1,bt,bn,o,s)
1114 # define AROS_LP2(t,n,a1,a2,bt,bn,o,s)
1115 # define AROS_LP3(t,n,a1,a2,a3,bt,bn,o,s)
1116 # define AROS_LP4(t,n,a1,a2,a3,a4,bt,bn,o,s)
1117 # define AROS_LP5(t,n,a1,a2,a3,a4,a5,bt,bn,o,s)
1118 # define AROS_LP6(t,n,a1,a2,a3,a4,a5,a6,bt,bn,o,s)
1119 # define AROS_LP7(t,n,a1,a2,a3,a4,a5,a6,a7,bt,bn,o,s)
1120 # define AROS_LP8(t,n,a1,a2,a3,a4,a5,a6,a7,a8,bt,bn,o,s)
1121 # define AROS_LP9(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,bt,bn,o,s)
1122 # define AROS_LP10(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,bt,bn,o,s)
1123 # define AROS_LP11(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,bt,bn,o,s)
1124 # define AROS_LP12(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,bt,bn,o,s)
1125 # define AROS_LP13(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,bt,bn,o,s)
1126 # define AROS_LP14(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,bt,bn,o,s)
1127 # define AROS_LP15(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,bt,bn,o,s)
1129 /* Prototypes for library functions which need the libbase */
1130 # define AROS_LPQUAD1(t,n,a1,bt,bn,o,s) \
1131 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1,__AROS_LP_BASE(bt,bn))
1132 # define AROS_LPQUAD2(t,n,a1,a2,bt,bn,o,s) \
1133 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1,a2,__AROS_LP_BASE(bt,bn))
1135 # define AROS_LP0(t,n,bt,bn,o,s) \
1136 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (__AROS_LP_BASE(bt,bn))
1137 # define AROS_LP1(t,n,a1,bt,bn,o,s) \
1138 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1,__AROS_LP_BASE(bt,bn))
1139 # define AROS_LP2(t,n,a1,a2,bt,bn,o,s) \
1140 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1,a2,__AROS_LP_BASE(bt,bn))
1141 # define AROS_LP3(t,n,a1,a2,a3,bt,bn,o,s) \
1142 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1,a2,a3,__AROS_LP_BASE(bt,bn))
1143 # define AROS_LP4(t,n,a1,a2,a3,a4,bt,bn,o,s) \
1144 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1,a2,a3,a4,__AROS_LP_BASE(bt,bn))
1145 # define AROS_LP5(t,n,a1,a2,a3,a4,a5,bt,bn,o,s) \
1146 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1, a2,a3,a4,a5,__AROS_LP_BASE(bt,bn))
1147 # define AROS_LP6(t,n,a1,a2,a3,a4,a5,a6,bt,bn,o,s) \
1148 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1, a2,a3,a4,a5,a6,__AROS_LP_BASE(bt,bn))
1149 # define AROS_LP7(t,n,a1,a2,a3,a4,a5,a6,a7,bt,bn,o,s) \
1150 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1, a2,a3,a4,a5,a6,a7,__AROS_LP_BASE(bt,bn))
1151 # define AROS_LP8(t,n,a1,a2,a3,a4,a5,a6,a7,a8,bt,bn,o,s) \
1152 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1, a2,a3,a4,a5,a6,a7,a8,__AROS_LP_BASE(bt,bn))
1153 # define AROS_LP9(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,bt,bn,o,s) \
1154 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1, a2,a3,a4,a5,a6,a7,a8,a9,__AROS_LP_BASE(bt,bn))
1155 # define AROS_LP10(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,bt,bn,o,s) \
1156 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1, a2,a3,a4,a5,a6,a7,a8,a9,a10,__AROS_LP_BASE(bt,bn))
1157 # define AROS_LP11(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,bt,bn,o,s) \
1158 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1, a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,__AROS_LP_BASE(bt,bn))
1159 # define AROS_LP12(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,bt,bn,o,s) \
1160 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1, a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,__AROS_LP_BASE(bt,bn))
1161 # define AROS_LP13(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,bt,bn,o,s) \
1162 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1, a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,__AROS_LP_BASE(bt,bn))
1163 # define AROS_LP14(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,bt,bn,o,s) \
1164 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1, a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,__AROS_LP_BASE(bt,bn))
1165 # define AROS_LP15(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,bt,bn,o,s) \
1166 __AROS_LP_PREFIX t AROS_SLIB_ENTRY(n,s) (a1, a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,__AROS_LP_BASE(bt,bn))
1169 #ifndef __AROS_CPU_SPECIFIC_LIBCALLS
1171 /* Declarations for library functions which need the libbase */
1172 # define AROS_LDQUAD1(t,n,a1,bt,bn,o,s) \
1173 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1174 __AROS_LDAQUAD(a1), __AROS_LD_BASE(bt,bn))
1175 # define AROS_LDQUAD2(t,n,a1,a2,bt,bn,o,s) \
1176 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1177 __AROS_LDAQUAD(a1), \
1178 __AROS_LDAQUAD(a2),__AROS_LD_BASE(bt,bn))
1180 # define AROS_LD0(t,n,bt,bn,o,s) \
1181 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) (__AROS_LD_BASE(bt,bn))
1182 # define AROS_LD1(t,n,a1,bt,bn,o,s) \
1183 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1184 __AROS_LDA(a1),__AROS_LD_BASE(bt,bn))
1185 # define AROS_LD2(t,n,a1,a2,bt,bn,o,s) \
1186 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1188 __AROS_LDA(a2),__AROS_LD_BASE(bt,bn))
1189 # define AROS_LD3(t,n,a1,a2,a3,bt,bn,o,s) \
1190 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1193 __AROS_LDA(a3), __AROS_LD_BASE(bt,bn))
1194 # define AROS_LD4(t,n,a1,a2,a3,a4,bt,bn,o,s) \
1195 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1199 __AROS_LDA(a4), __AROS_LD_BASE(bt,bn))
1200 # define AROS_LD5(t,n,a1,a2,a3,a4,a5,bt,bn,o,s) \
1201 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1206 __AROS_LDA(a5), __AROS_LD_BASE(bt,bn))
1207 # define AROS_LD6(t,n,a1,a2,a3,a4,a5,a6,bt,bn,o,s) \
1208 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1214 __AROS_LDA(a6), __AROS_LD_BASE(bt,bn))
1215 # define AROS_LD7(t,n,a1,a2,a3,a4,a5,a6,a7,bt,bn,o,s) \
1216 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1223 __AROS_LDA(a7), __AROS_LD_BASE(bt,bn))
1224 # define AROS_LD8(t,n,a1,a2,a3,a4,a5,a6,a7,a8,bt,bn,o,s) \
1225 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1233 __AROS_LDA(a8), __AROS_LD_BASE(bt,bn))
1234 # define AROS_LD9(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,bt,bn,o,s) \
1235 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1244 __AROS_LDA(a9), __AROS_LD_BASE(bt,bn))
1245 # define AROS_LD10(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,bt,bn,o,s) \
1246 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1256 __AROS_LDA(a10), __AROS_LD_BASE(bt,bn))
1257 # define AROS_LD11(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,bt,bn,o,s) \
1258 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1269 __AROS_LDA(a11), __AROS_LD_BASE(bt,bn))
1270 # define AROS_LD12(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,bt,bn,o,s) \
1271 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1283 __AROS_LDA(a12), __AROS_LD_BASE(bt,bn))
1284 # define AROS_LD13(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,bt,bn,o,s) \
1285 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1298 __AROS_LDA(a13), __AROS_LD_BASE(bt,bn))
1299 # define AROS_LD14(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,bt,bn,o,s) \
1300 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1314 __AROS_LDA(a14), __AROS_LD_BASE(bt,bn))
1315 # define AROS_LD15(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,bt,bn,o,s) \
1316 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1331 __AROS_LDA(a15), __AROS_LD_BASE(bt,bn))
1333 /* Declarations for library functions which don't need the libbase */
1334 # define AROS_LD0I(t,n,bt,bn,o,s) \
1335 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) (void)
1336 # define AROS_LD1I(t,n,a1,bt,bn,o,s) \
1337 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1339 # define AROS_LD2I(t,n,a1,a2,bt,bn,o,s) \
1340 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1343 # define AROS_LD3I(t,n,a1,a2,a3,bt,bn,o,s) \
1344 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1348 # define AROS_LD4I(t,n,a1,a2,a3,a4,bt,bn,o,s) \
1349 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1354 # define AROS_LD5I(t,n,a1,a2,a3,a4,a5,bt,bn,o,s) \
1355 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1361 # define AROS_LD6I(t,n,a1,a2,a3,a4,a5,a6,bt,bn,o,s) \
1362 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1369 # define AROS_LD7I(t,n,a1,a2,a3,a4,a5,a6,a7,bt,bn,o,s) \
1370 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1378 # define AROS_LD8I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,bt,bn,o,s) \
1379 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1388 # define AROS_LD9I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,bt,bn,o,s) \
1389 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1399 # define AROS_LD10I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,bt,bn,o,s) \
1400 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1411 # define AROS_LD11I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,bt,bn,o,s) \
1412 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1424 # define AROS_LD12I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,bt,bn,o,s) \
1425 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1438 # define AROS_LD13I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,bt,bn,o,s) \
1439 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1453 # define AROS_LD14I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,bt,bn,o,s) \
1454 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1469 # define AROS_LD15I(t,n,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,bt,bn,o,s) \
1470 __AROS_LD_PREFIX t AROS_SLIB_ENTRY(n,s) ( \
1486 #endif /* !__AROS_CPU_SPECIFIC_LIBCALLS */
1488 #define AROS_LHA(type,name,reg) type,name,reg
1489 #define AROS_LPA(type,name,reg) type,name,reg
1490 #define AROS_LCA(type,name,reg) type,name,reg
1491 #define AROS_LDA(type,name,reg) type,name,reg
1493 #define AROS_LHAQUAD(type,name,reg1,reg2) type,name,reg1,reg2
1494 #define AROS_LPAQUAD(type,name,reg1,reg2) type,name,reg1,reg2
1495 #define AROS_LCAQUAD(type,name,reg1,reg2) type,name,reg1,reg2
1496 #define AROS_LDAQUAD(type,name,reg1,reg2) type,name,reg1,reg2
1498 #ifndef AROS_LIBFUNC_INIT
1499 # define AROS_LIBFUNC_INIT {
1501 #ifndef AROS_LIBFUNC_EXIT
1502 # define AROS_LIBFUNC_EXIT }}
1505 /* Tagging of private functions, so that they can be distinguished from
1506 official ones. But they have to compile the same way, so: */
1507 #define AROS_PLH0 AROS_LH0
1508 #define AROS_PLH1 AROS_LH1
1509 #define AROS_PLH2 AROS_LH2
1510 #define AROS_PLH3 AROS_LH3
1511 #define AROS_PLH4 AROS_LH4
1512 #define AROS_PLH5 AROS_LH5
1513 #define AROS_PLH6 AROS_LH6
1514 #define AROS_PLH7 AROS_LH7
1515 #define AROS_PLH8 AROS_LH8
1516 #define AROS_PLH9 AROS_LH9
1517 #define AROS_PLH10 AROS_LH10
1518 #define AROS_PLH11 AROS_LH11
1519 #define AROS_PLH12 AROS_LH12
1520 #define AROS_PLH13 AROS_LH13
1521 #define AROS_PLH14 AROS_LH14
1522 #define AROS_PLH15 AROS_LH15
1524 /* NT stands for No Tags, which means that the functions which are defined with these headers
1525 are not subject to tagcall generation by the script used to generate include files */
1526 #define AROS_NTLH0 AROS_LH0
1527 #define AROS_NTLH1 AROS_LH1
1528 #define AROS_NTLH2 AROS_LH2
1529 #define AROS_NTLH3 AROS_LH3
1530 #define AROS_NTLH4 AROS_LH4
1531 #define AROS_NTLH5 AROS_LH5
1532 #define AROS_NTLH6 AROS_LH6
1533 #define AROS_NTLH7 AROS_LH7
1534 #define AROS_NTLH8 AROS_LH8
1535 #define AROS_NTLH9 AROS_LH9
1536 #define AROS_NTLH10 AROS_LH10
1537 #define AROS_NTLH11 AROS_LH11
1538 #define AROS_NTLH12 AROS_LH12
1539 #define AROS_NTLH13 AROS_LH13
1540 #define AROS_NTLH14 AROS_LH14
1541 #define AROS_NTLH15 AROS_LH15
1543 /******************************************************************************
1544 ***** ENDE aros/libcall.h
1545 ******************************************************************************/
1547 #endif /* AROS_LIBCALL_H */