1 #ifndef LIBNWCC_H
2 #define LIBNWCC_H
3 
4 /*
5  * Duplicated libnwcc symbols caused some problems when
6  * compiling nwcc with itself; In order to prevent these,
7  * the libnwcc.o linked with nwcc1 must be compiled with
8  * EXTERNAL_USE undefined, so as to avoid nameclashes.
9  * The ``library'' version extlibnwcc.o must be compiled
10  * with -DEXTERNAL_USE.
11  */
12 #ifndef EXTERNAL_USE
13 #define __nwcc_negate		nwcc_negate
14 #define __nwcc_ulldiv		nwcc_ulldiv
15 #define __nwcc_lldiv		nwcc_lldiv
16 #define __nwcc_ullmul		nwcc_ullmul
17 #define __nwcc_llmul		nwcc_llmul
18 #define __nwcc_add		nwcc_add
19 #define __nwcc_shift_left	nwcc_shift_left
20 #define __nwcc_shift_right	nwcc_shift_right
21 #define __nwcc_stack_corrupt	nwcc_stack_corrupt
22 #define __nwcc_sub		nwcc_sub
23 #define __nwcc_conv_to_ldouble	nwcc_conv_to_ldouble
24 #define __nwcc_conv_from_ldouble	nwcc_conv_from_ldouble
25 #define llong_to_hex __llong_to_hex
26 #endif
27 
28 void
29 __nwcc_negate(unsigned char *, int);
30 
31 void
32 __nwcc_ulldiv(unsigned char *, unsigned char *, int, int);
33 
34 void
35 __nwcc_lldiv(unsigned char *, unsigned char *, int, int);
36 
37 void
38 __nwcc_ullmul(unsigned char *, unsigned char *, int);
39 
40 void
41 __nwcc_llmul(unsigned char *, unsigned char *, int);
42 
43 void
44 __nwcc_conv_to_ldouble(unsigned char *dest, unsigned char *src);
45 
46 void
47 __nwcc_conv_from_ldouble(unsigned char *dest, unsigned char *src);
48 
49 void
50 llong_to_hex(char *out, unsigned char *in, int is_bigend);
51 
52 #endif
53 
54