xref: /openbmc/linux/arch/microblaze/lib/libgcc.h (revision 4e07dba7cb8c9c76a52d0e32b69f13bb583a9674)
1*4e07dba7SMichal Simek #ifndef __ASM_LIBGCC_H
2*4e07dba7SMichal Simek #define __ASM_LIBGCC_H
3*4e07dba7SMichal Simek 
4*4e07dba7SMichal Simek #include <asm/byteorder.h>
5*4e07dba7SMichal Simek 
6*4e07dba7SMichal Simek typedef int word_type __attribute__ ((mode (__word__)));
7*4e07dba7SMichal Simek 
8*4e07dba7SMichal Simek #ifdef __BIG_ENDIAN
9*4e07dba7SMichal Simek struct DWstruct {
10*4e07dba7SMichal Simek 	int high, low;
11*4e07dba7SMichal Simek };
12*4e07dba7SMichal Simek #elif defined(__LITTLE_ENDIAN)
13*4e07dba7SMichal Simek struct DWstruct {
14*4e07dba7SMichal Simek 	int low, high;
15*4e07dba7SMichal Simek };
16*4e07dba7SMichal Simek #else
17*4e07dba7SMichal Simek #error I feel sick.
18*4e07dba7SMichal Simek #endif
19*4e07dba7SMichal Simek 
20*4e07dba7SMichal Simek typedef union {
21*4e07dba7SMichal Simek 	struct DWstruct s;
22*4e07dba7SMichal Simek 	long long ll;
23*4e07dba7SMichal Simek } DWunion;
24*4e07dba7SMichal Simek 
25*4e07dba7SMichal Simek #endif /* __ASM_LIBGCC_H */
26