Add option for higher optimization levels

This commit is contained in:
root 2020-07-21 10:11:08 -05:00
parent ac5ad030f4
commit 49decf90c9
10 changed files with 35 additions and 0 deletions

View File

@ -106,6 +106,11 @@ CFLAGS += -Os -DNDEBUG
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_SAMD51 -DCFG_TUD_MIDI_RX_BUFSIZE=128 -DCFG_TUD_CDC_RX_BUFSIZE=256 -DCFG_TUD_MIDI_TX_BUFSIZE=128 -DCFG_TUD_CDC_TX_BUFSIZE=256 -DCFG_TUD_MSC_BUFSIZE=1024
endif
ifdef OPTIMIZATION_LEVEL
CFLAGS += -O$(OPTIMIZATION_LEVEL)
endif
$(echo PERIPHERALS_CHIP_FAMILY=$(PERIPHERALS_CHIP_FAMILY))
#Debugging/Optimization
ifeq ($(DEBUG), 1)

View File

@ -15,3 +15,5 @@ LONGINT_IMPL = MPZ
CIRCUITPY_AUDIOBUSIO = 0
CIRCUITPY_BITBANG_APA102 = 1
OPTIMIZATION_LEVEL = 2

View File

@ -16,3 +16,5 @@ CIRCUITPY_GAMEPADSHIFT = 1
CIRCUITPY_STAGE = 1
FROZEN_MPY_DIRS += $(TOP)/frozen/circuitpython-stage/pybadge
OPTIMIZATION_LEVEL = 2

View File

@ -10,3 +10,5 @@ QSPI_FLASH_FILESYSTEM = 1
EXTERNAL_FLASH_DEVICE_COUNT = 2
EXTERNAL_FLASH_DEVICES = "W25Q64JV_IQ, GD25Q64C"
LONGINT_IMPL = MPZ
OPTIMIZATION_LEVEL = 2

View File

@ -123,6 +123,11 @@ CFLAGS += \
-fdata-sections \
-Wall \
ifdef OPTIMIZATION_LEVEL
CFLAGS += -O$(OPTIMIZATION_LEVEL)
endif
LIBM = "${shell "$(CC)" $(CFLAGS) -print-file-name=libm.a}"
LIBGCC = "${shell "$(CC)" $(CFLAGS) -print-libgcc-file-name}"

View File

@ -109,6 +109,10 @@ else
### CFLAGS += -flto
endif
ifdef OPTIMIZATION_LEVEL
CFLAGS += -O$(OPTIMIZATION_LEVEL)
endif
CFLAGS += $(INC) -Werror -Wall -mlongcalls -std=gnu11 -Wl,--gc-sections $(BASE_CFLAGS) $(C_DEFS) $(CFLAGS_MOD) $(COPT)
LDFLAGS = $(CFLAGS) -Wl,-nostdlib -Wl,-Map=$@.map -Wl,-cref

View File

@ -83,6 +83,10 @@ else
### CFLAGS += -flto
endif
ifdef OPTIMIZATION_LEVEL
CFLAGS += -O$(OPTIMIZATION_LEVEL)
endif
CFLAGS += $(INC) -Werror -Wall -std=gnu11 -nostdlib -fshort-enums $(BASE_CFLAGS) $(C_DEFS) $(CFLAGS_MOD) $(COPT)
# TODO: check this

View File

@ -108,6 +108,10 @@ CFLAGS += \
-Os -g3 -Wno-unused-parameter \
-ffunction-sections -fdata-sections -fstack-usage
ifdef OPTIMIZATION_LEVEL
CFLAGS += -O$(OPTIMIZATION_LEVEL)
endif
LD_FILES = $(wildcard boards/$(BOARD)/*.ld) $(addprefix linking/, flash/$(FLASH).ld chip_family/$(CHIP_FAMILY).ld common.ld)
LD_SCRIPT_FLAG := -Wl,-T,

View File

@ -92,6 +92,9 @@ else
CFLAGS += -flto -flto-partition=none
endif
ifdef OPTIMIZATION_LEVEL
CFLAGS += -O$(OPTIMIZATION_LEVEL)
endif
CFLAGS += $(INC) -Wall -Werror -std=gnu11 -nostdlib -fshort-enums $(BASE_CFLAGS) $(CFLAGS_MOD) $(COPT)

View File

@ -91,6 +91,10 @@ else
# CFLAGS += -flto
endif
ifdef OPTIMIZATION_LEVEL
CFLAGS += -O$(OPTIMIZATION_LEVEL)
endif
# MCU Series is defined by the HAL package and doesn't need to be specified here
C_DEFS = -D$(MCU_PACKAGE) -DUSE_HAL_DRIVER -DUSE_FULL_LL_DRIVER -D$(MCU_VARIANT)