• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef __ASM_LIBGCC_H
2 #define __ASM_LIBGCC_H
3 
4 #include <asm/byteorder.h>
5 
6 typedef int word_type __attribute__ ((mode (__word__)));
7 
8 #ifdef __BIG_ENDIAN
9 struct DWstruct {
10 	int high, low;
11 };
12 
13 struct TWstruct {
14 	long long high, low;
15 };
16 #elif defined(__LITTLE_ENDIAN)
17 struct DWstruct {
18 	int low, high;
19 };
20 
21 struct TWstruct {
22 	long long low, high;
23 };
24 #else
25 #error I feel sick.
26 #endif
27 
28 typedef union {
29 	struct DWstruct s;
30 	long long ll;
31 } DWunion;
32 
33 #if defined(CONFIG_64BIT) && defined(CONFIG_CPU_MIPSR6)
34 typedef int ti_type __attribute__((mode(TI)));
35 
36 typedef union {
37 	struct TWstruct s;
38 	ti_type ti;
39 } TWunion;
40 #endif
41 
42 #endif /* __ASM_LIBGCC_H */
43