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