atmel-samd: Enable longints for M4 builds.

Fixes #110
This commit is contained in:
Scott Shawcroft 2017-10-31 15:46:42 -07:00
parent 268bf6f99e
commit 9db321d505
2 changed files with 11 additions and 3 deletions

View File

@ -58,8 +58,6 @@
#define MICROPY_PY_URANDOM_EXTRA_FUNCS (0) #define MICROPY_PY_URANDOM_EXTRA_FUNCS (0)
#define MICROPY_PY_STRUCT (0) #define MICROPY_PY_STRUCT (0)
#define MICROPY_PY_SYS (1) #define MICROPY_PY_SYS (1)
// If you change MICROPY_LONGINT_IMPL, also change MPY_TOOL_LONGINT_IMPL in mpconfigport.mk.
#define MICROPY_LONGINT_IMPL (MICROPY_LONGINT_IMPL_NONE)
#define MICROPY_FLOAT_IMPL (MICROPY_FLOAT_IMPL_FLOAT) #define MICROPY_FLOAT_IMPL (MICROPY_FLOAT_IMPL_FLOAT)
#define MICROPY_STREAMS_NON_BLOCK (1) #define MICROPY_STREAMS_NON_BLOCK (1)
@ -140,12 +138,17 @@ typedef long mp_off_t;
#define CIRCUITPY_MCU_FAMILY samd21 #define CIRCUITPY_MCU_FAMILY samd21
#define MICROPY_PY_SYS_PLATFORM "Atmel SAMD21" #define MICROPY_PY_SYS_PLATFORM "Atmel SAMD21"
#define PORT_HEAP_SIZE (16384 + 4096) #define PORT_HEAP_SIZE (16384 + 4096)
// If you change MICROPY_LONGINT_IMPL, also change MPY_TOOL_LONGINT_IMPL in mpconfigport.mk.
#define MICROPY_LONGINT_IMPL (MICROPY_LONGINT_IMPL_NONE)
#endif #endif
#ifdef SAMD51 #ifdef SAMD51
#define CIRCUITPY_MCU_FAMILY samd51 #define CIRCUITPY_MCU_FAMILY samd51
#define MICROPY_PY_SYS_PLATFORM "MicroChip SAMD51" #define MICROPY_PY_SYS_PLATFORM "MicroChip SAMD51"
#define PORT_HEAP_SIZE (0x20000) // 128KiB #define PORT_HEAP_SIZE (0x20000) // 128KiB
// If you change MICROPY_LONGINT_IMPL, also change MPY_TOOL_LONGINT_IMPL in mpconfigport.mk.
#define MICROPY_LONGINT_IMPL (MICROPY_LONGINT_IMPL_MPZ)
#define MP_SSIZE_MAX (0x7fffffff)
#endif #endif
// extra built in modules to add to the list of known ones // extra built in modules to add to the list of known ones

View File

@ -1,7 +1,12 @@
# Define an equivalent for MICROPY_LONGINT_IMPL, to pass to $(MPY-TOOL) in py/mkrules.mk # Define an equivalent for MICROPY_LONGINT_IMPL, to pass to $(MPY-TOOL) in py/mkrules.mk
# $(MPY-TOOL) needs to know what kind of longint to use (if any) to freeze long integers. # $(MPY-TOOL) needs to know what kind of longint to use (if any) to freeze long integers.
# This should correspond to the MICROPY_LONGINT_IMPL definition in mpconfigport.h. # This should correspond to the MICROPY_LONGINT_IMPL definition in mpconfigport.h.
ifeq ($(CHIP_FAMILY), samd21)
MPY_TOOL_LONGINT_IMPL = -mlongint-impl=none MPY_TOOL_LONGINT_IMPL = -mlongint-impl=none
endif
ifeq ($(CHIP_FAMILY), samd51)
MPY_TOOL_LONGINT_IMPL = -mlongint-impl=mpz
endif
INTERNAL_LIBM = 1 INTERNAL_LIBM = 1