diff --git a/Makefile b/Makefile index 0d1cbce5..30fe0e46 100644 --- a/Makefile +++ b/Makefile @@ -10,7 +10,7 @@ ENV ?= -e Tmp=. -e WINEDEBUG=-all DOCKER ?= docker run --platform linux/amd64 --rm $(ENV) -v $(CWD):$(CWD) -w $(CWD) VCFLAGS = /nologo /W3 /O2 /MD /I. $(DEFS) $(TFLAGS) IPV6 ?= 1 -ASAN ?= -fsanitize=address,undefined -fno-sanitize-recover=all +ASAN ?= -fsanitize=address,undefined,alignment -fno-sanitize-recover=all -fno-omit-frame-pointer -fno-common ASAN_OPTIONS ?= detect_leaks=1 EXAMPLES := $(dir $(wildcard examples/*/Makefile)) $(wildcard examples/stm32/nucleo-*) PREFIX ?= /usr/local @@ -44,7 +44,7 @@ endif all: mg_prefix unamalgamated test mip_test arm examples vc98 vc17 vc22 mingw mingw++ fuzz mip_test: test/mip_test.c mongoose.c mongoose.h Makefile - $(CC) test/mip_test.c $(INCS) $(WARN) $(OPTS) $(C_WARN) -o $@ + $(CC) test/mip_test.c $(INCS) $(WARN) $(OPTS) $(C_WARN) $(ASAN) -o $@ ASAN_OPTIONS=$(ASAN_OPTIONS) $(RUN) ./$@ examples: diff --git a/mip/driver_stm32.c b/mip/driver_stm32.c index e58a2732..e01858fc 100644 --- a/mip/driver_stm32.c +++ b/mip/driver_stm32.c @@ -68,7 +68,7 @@ static uint32_t get_hclk(void) { } else { clk = hsi; } - int hpre = (RCC->CFGR & (0x0F << 4)) >> 4; + uint32_t hpre = (RCC->CFGR & (15 << 4)) >> 4; if (hpre < 8) return clk; uint8_t ahbptab[8] = {1, 2, 3, 4, 6, 7, 8, 9}; // log2(div) diff --git a/mongoose.c b/mongoose.c index b72b981a..1fabc147 100644 --- a/mongoose.c +++ b/mongoose.c @@ -6052,7 +6052,7 @@ static uint32_t get_hclk(void) { } else { clk = hsi; } - int hpre = (RCC->CFGR & (0x0F << 4)) >> 4; + uint32_t hpre = (RCC->CFGR & (15 << 4)) >> 4; if (hpre < 8) return clk; uint8_t ahbptab[8] = {1, 2, 3, 4, 6, 7, 8, 9}; // log2(div) diff --git a/test/mip_test.c b/test/mip_test.c index 1b4af3dd..851df89c 100644 --- a/test/mip_test.c +++ b/test/mip_test.c @@ -1,4 +1,5 @@ #define MG_ENABLE_SOCKET 0 +#define MG_ENABLE_LINES 1 #define MG_ENABLE_MIP 1 #define MG_ENABLE_PACKED_FS 0