Skip to content

Commit 947f564

Browse files
committed
tune LTO on nrf
1 parent 95fc7e4 commit 947f564

File tree

6 files changed

+12
-23
lines changed

6 files changed

+12
-23
lines changed

ports/nrf/Makefile

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,14 +84,21 @@ INC += -I../../lib/mp-readline
8484
INC += -I../../lib/tinyusb/src
8585
INC += -I../../supervisor/shared/usb
8686

87+
ifeq ($(MCU_CHIP),nrf52833)
88+
OPTIMIZATION_FLAGS ?= -Os -flto -flto-partition=one
89+
else
90+
ifeq ($(INTERNAL_FLASH_FILESYSTEM),1)
91+
OPTIMIZATION_FLAGS ?= -Os -flto
92+
endif
93+
endif
94+
8795
#Debugging/Optimization
8896
ifeq ($(DEBUG), 1)
8997
CFLAGS += -ggdb3
9098
OPTIMIZATION_FLAGS = -Og
9199
else
92100
OPTIMIZATION_FLAGS ?= -O2 -fno-inline-functions
93101
CFLAGS += -DNDEBUG -ggdb3
94-
# If -flto is needed, give it in OPTIMIZATION_FLAGS per board
95102
endif
96103

97104
ifeq ($(NRF_DEBUG_PRINT), 1)

ports/nrf/boards/bluemicro833/mpconfigboard.mk

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,3 @@ CIRCUITPY_VECTORIO = 0
4545
CIRCUITPY_ZLIB = 0
4646

4747
MICROPY_PY_ASYNC_AWAIT = 0
48-
49-
SUPEROPT_GC = 0
50-
SUPEROPT_VM = 0
51-
52-
# Override optimization to keep binary small
53-
OPTIMIZATION_FLAGS = -Os -flto -flto-partition=one

ports/nrf/boards/microbit_v2/mpconfigboard.mk

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,3 @@ CIRCUITPY_ULAB = 0
2828
CIRCUITPY_USB = 0
2929

3030
MICROPY_PY_ASYNC_AWAIT = 0
31-
32-
# Override optimization to keep binary small
33-
OPTIMIZATION_FLAGS = -Os -flto -flto-partition=one
34-
SUPEROPT_VM = 0
35-
SUPEROPT_GC = 0

ports/nrf/boards/pca10100/mpconfigboard.mk

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,3 @@ CIRCUITPY_VECTORIO = 0
3535
CIRCUITPY_ZLIB = 0
3636

3737
MICROPY_PY_ASYNC_AWAIT = 0
38-
39-
SUPEROPT_GC = 0
40-
SUPEROPT_VM = 0
41-
42-
# Override optimization to keep binary small
43-
OPTIMIZATION_FLAGS = -Os -flto -flto-partition=one

ports/nrf/boards/simmel/mpconfigboard.mk

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,3 @@ CIRCUITPY_ZLIB = 0
4646

4747
# Enable micropython.native
4848
#CIRCUITPY_ENABLE_MPY_NATIVE = 1
49-
50-
# Override optimization to keep binary small
51-
OPTIMIZATION_FLAGS = -Os -flto -flto-partition=one
52-
SUPEROPT_VM = 0
53-
SUPEROPT_GC = 0

ports/nrf/mpconfigport.mk

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,10 @@ MCU_SERIES = m4
7777
MCU_VARIANT = nrf52
7878
MCU_SUB_VARIANT = nrf52833
7979

80+
# Need the space
81+
SUPEROPT_GC ?= 0
82+
SUPEROPT_VM ?= 0
83+
8084
SD ?= s140
8185
SOFTDEV_VERSION ?= 7.0.1
8286

0 commit comments

Comments
 (0)