This makes sure that doubles are aligned properly when passed on the stack.
Signed-off-by: Keith Packard <keithp@keithp.com>
#endif
/* arm stacks must be 32-bit aligned */
#endif
/* arm stacks must be 32-bit aligned */
+#ifndef AO_STACK_ALIGNMENT
#ifdef __arm__
#define AO_STACK_ALIGNMENT __attribute__ ((aligned(4)))
#ifdef __arm__
#define AO_STACK_ALIGNMENT __attribute__ ((aligned(4)))
#define AO_STACK_ALIGNMENT
#endif
#define AO_STACK_ALIGNMENT
#endif
-#ifdef __AVR__
-#define AO_STACK_ALIGNMENT
#endif
/* An AltOS task */
#endif
/* An AltOS task */
#include <stm32f4.h>
#ifndef AO_STACK_SIZE
#include <stm32f4.h>
#ifndef AO_STACK_SIZE
-#define AO_STACK_SIZE 512
+#define AO_STACK_SIZE 1024
+#define AO_STACK_ALIGNMENT __attribute__ ((aligned(8)))
+
#define AO_PORT_TYPE uint16_t
#define ao_arch_nop() asm("nop")
#define AO_PORT_TYPE uint16_t
#define ao_arch_nop() asm("nop")