From 2f2a30423446f88e283f50f699bf7cc3c8cf74b8 Mon Sep 17 00:00:00 2001 From: DJ Delorie Date: Mon, 13 May 2013 21:39:51 +0000 Subject: [newlib] * configure.host (msp430): Add. * libc/include/machine/ieeefp.h: Add MSP430 support. * libc/include/machine/setjmp.h: Likewise. * libc/include/sys/config.h: Likewise. * libc/machine/configure.in (msp430): Add. * libc/machine/configure: Regenerate. * libc/machine/msp430: New directory. [libgloss] * configure.in (msp430*-*-elf): Add. * configure: Regenerate. * msp430: New directory. --- newlib/libc/include/machine/ieeefp.h | 5 +++++ newlib/libc/include/machine/setjmp.h | 10 ++++++++++ newlib/libc/include/sys/config.h | 15 +++++++++++++++ 3 files changed, 30 insertions(+) (limited to 'newlib/libc/include') diff --git a/newlib/libc/include/machine/ieeefp.h b/newlib/libc/include/machine/ieeefp.h index bf6060c53..dd1fceda9 100644 --- a/newlib/libc/include/machine/ieeefp.h +++ b/newlib/libc/include/machine/ieeefp.h @@ -359,6 +359,11 @@ #define __IEEE_BIG_ENDIAN #endif +#ifdef __MSP430__ +#define __IEEE_LITTLE_ENDIAN +#define __SMALL_BITFIELDS /* 16 Bit INT */ +#endif + #ifdef __RL78__ #define __IEEE_LITTLE_ENDIAN #define __SMALL_BITFIELDS /* 16 Bit INT */ diff --git a/newlib/libc/include/machine/setjmp.h b/newlib/libc/include/machine/setjmp.h index 1c68ce45c..78fbdd78b 100644 --- a/newlib/libc/include/machine/setjmp.h +++ b/newlib/libc/include/machine/setjmp.h @@ -281,6 +281,16 @@ _BEGIN_STD_C #define _JBTYPE unsigned short #endif /* __m32c__ */ +#ifdef __MSP430__ +#define _JBLEN 9 + +#ifdef __MSP430X_LARGE__ +#define _JBTYPE unsigned long +#else +#define _JBTYPE unsigned short +#endif +#endif + #ifdef __RL78__ /* Three banks of registers, SP, CS, ES, PC */ #define _JBLEN (8*3+8) diff --git a/newlib/libc/include/sys/config.h b/newlib/libc/include/sys/config.h index b26017b99..a641c4b29 100644 --- a/newlib/libc/include/sys/config.h +++ b/newlib/libc/include/sys/config.h @@ -145,6 +145,21 @@ #define __BUFSIZ__ 16 #define _REENT_SMALL #endif + +#if defined __MSP430__ +#ifndef _REENT_SMALL +#define _REENT_SMALL +#endif + +#define __SMALL_BITFIELDS + +#ifdef __MSP430X_LARGE__ +#define _POINTER_INT long +#else +#define _POINTER_INT int +#endif +#endif + #ifdef __m32c__ #define __SMALL_BITFIELDS #undef INT_MAX -- cgit v1.2.3