From 0d54fae73192c23af3657fea756c91ea84008804 Mon Sep 17 00:00:00 2001 From: inmarket Date: Wed, 8 Jul 2015 13:14:42 +1000 Subject: Correction of stackbase for mingw32 --- src/gos/gos_arduino.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/gos/gos_arduino.c') diff --git a/src/gos/gos_arduino.c b/src/gos/gos_arduino.c index 4c01695a..0c01a30c 100644 --- a/src/gos/gos_arduino.c +++ b/src/gos/gos_arduino.c @@ -239,7 +239,7 @@ void gfxSleepMicroseconds(delaytime_t ms) { #define STACK_DIR_UP FALSE #define MASK1 0x00000011 #define MASK2 0x00000000 - #define STACK_BASE 9 + #define STACK_BASE 12 #else #define AUTO_DETECT_MASK TRUE #define STACK_DIR_UP stackdirup // TRUE if the stack grow up instead of down -- cgit v1.2.3 From 8318e8dc29c571f56742df6ea81d2f8298127826 Mon Sep 17 00:00:00 2001 From: inmarket Date: Wed, 8 Jul 2015 13:53:54 +1000 Subject: Provide better access to compiler optimisations for the raw scheduler --- src/gos/gos_arduino.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'src/gos/gos_arduino.c') diff --git a/src/gos/gos_arduino.c b/src/gos/gos_arduino.c index 0c01a30c..380d528a 100644 --- a/src/gos/gos_arduino.c +++ b/src/gos/gos_arduino.c @@ -229,18 +229,19 @@ void gfxSleepMicroseconds(delaytime_t ms) { * For those it doesn't - read the compiler manuals and the library source code to * work out the correct macro values. * You can use the debugger to work out the values for your compiler and put them here. - * Defining these macros as constant values makes the system behaviour guaranteed but also - * makes your code compiler and cpu architecture dependant. + * Defining these macros as constant values makes the system behavior guaranteed but also + * makes your code compiler and cpu architecture dependent. It also saves a heap of code + * and a few bytes of RAM. */ -#if 0 - // Define your compiler constant values here. - // These example values are for mingw32 compiler (x86). +#if GFX_COMPILER == GFX_COMPILER_MINGW32 #define AUTO_DETECT_MASK FALSE #define STACK_DIR_UP FALSE #define MASK1 0x00000011 #define MASK2 0x00000000 #define STACK_BASE 12 #else + // Use auto-detection of the stack frame format + // Assumes all the relevant stuff to be relocated is in the first 256 bytes of the jmpbuf. #define AUTO_DETECT_MASK TRUE #define STACK_DIR_UP stackdirup // TRUE if the stack grow up instead of down #define MASK1 jmpmask1 // The 1st mask of jmp_buf elements that need relocation -- cgit v1.2.3