diff options
Diffstat (limited to 'arch/avr32/lib/libgcc.h')
| -rw-r--r-- | arch/avr32/lib/libgcc.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/arch/avr32/lib/libgcc.h b/arch/avr32/lib/libgcc.h new file mode 100644 index 000000000000..5a091b5e3618 --- /dev/null +++ b/arch/avr32/lib/libgcc.h | |||
| @@ -0,0 +1,33 @@ | |||
| 1 | /* Definitions for various functions 'borrowed' from gcc-3.4.3 */ | ||
| 2 | |||
| 3 | #define BITS_PER_UNIT 8 | ||
| 4 | |||
| 5 | typedef int QItype __attribute__ ((mode (QI))); | ||
| 6 | typedef unsigned int UQItype __attribute__ ((mode (QI))); | ||
| 7 | typedef int HItype __attribute__ ((mode (HI))); | ||
| 8 | typedef unsigned int UHItype __attribute__ ((mode (HI))); | ||
| 9 | typedef int SItype __attribute__ ((mode (SI))); | ||
| 10 | typedef unsigned int USItype __attribute__ ((mode (SI))); | ||
| 11 | typedef int DItype __attribute__ ((mode (DI))); | ||
| 12 | typedef unsigned int UDItype __attribute__ ((mode (DI))); | ||
| 13 | typedef float SFtype __attribute__ ((mode (SF))); | ||
| 14 | typedef float DFtype __attribute__ ((mode (DF))); | ||
| 15 | typedef int word_type __attribute__ ((mode (__word__))); | ||
| 16 | |||
| 17 | #define W_TYPE_SIZE (4 * BITS_PER_UNIT) | ||
| 18 | #define Wtype SItype | ||
| 19 | #define UWtype USItype | ||
| 20 | #define HWtype SItype | ||
| 21 | #define UHWtype USItype | ||
| 22 | #define DWtype DItype | ||
| 23 | #define UDWtype UDItype | ||
| 24 | #define __NW(a,b) __ ## a ## si ## b | ||
| 25 | #define __NDW(a,b) __ ## a ## di ## b | ||
| 26 | |||
| 27 | struct DWstruct {Wtype high, low;}; | ||
| 28 | |||
| 29 | typedef union | ||
| 30 | { | ||
| 31 | struct DWstruct s; | ||
| 32 | DWtype ll; | ||
| 33 | } DWunion; | ||
