🔨 Build flag tweaks

This commit is contained in:
Scott Lahteine 2023-12-21 22:35:51 -06:00
parent 2c5468ce33
commit ec7ab5a277
3 changed files with 9 additions and 8 deletions

View file

@ -37,11 +37,12 @@
#define FORCE_INLINE __attribute__((always_inline)) inline #define FORCE_INLINE __attribute__((always_inline)) inline
#define NO_INLINE __attribute__((noinline)) #define NO_INLINE __attribute__((noinline))
#define _UNUSED __attribute__((unused)) #define _UNUSED __attribute__((unused))
#define __O0 __attribute__((optimize("O0"))) #define __O0 __attribute__((optimize("O0"))) // No optimization and less debug info
#define __Os __attribute__((optimize("Os"))) #define __Og __attribute__((optimize("Og"))) // Optimize the debugging experience
#define __O1 __attribute__((optimize("O1"))) #define __Os __attribute__((optimize("Os"))) // Optimize for size
#define __O2 __attribute__((optimize("O2"))) #define __O1 __attribute__((optimize("O1"))) // Try to reduce size and cycles; nothing that takes a lot of time to compile
#define __O3 __attribute__((optimize("O3"))) #define __O2 __attribute__((optimize("O2"))) // Optimize even more
#define __O3 __attribute__((optimize("O3"))) // Optimize yet more
#define IS_CONSTEXPR(...) __builtin_constant_p(__VA_ARGS__) // Only valid solution with C++14. Should use std::is_constant_evaluated() in C++20 instead #define IS_CONSTEXPR(...) __builtin_constant_p(__VA_ARGS__) // Only valid solution with C++14. Should use std::is_constant_evaluated() in C++20 instead

View file

@ -14,8 +14,8 @@
# #
[common_avr8] [common_avr8]
platform = atmelavr@~4.0.1 platform = atmelavr@~4.0.1
build_flags = ${common.build_flags} -Wl,--relax build_flags = ${common.build_flags} -std=gnu++1z -Wl,--relax
build_src_flags = -std=gnu++1z build_unflags = -std=gnu++11
board_build.f_cpu = 16000000L board_build.f_cpu = 16000000L
build_src_filter = ${common.default_src_filter} +<src/HAL/AVR> build_src_filter = ${common.default_src_filter} +<src/HAL/AVR>

View file

@ -326,7 +326,7 @@ extends = STM32F1_maple
board = marlin_malyanM200 board = marlin_malyanM200
build_flags = ${STM32F1_maple.build_flags} build_flags = ${STM32F1_maple.build_flags}
-DMCU_STM32F103CB -D__STM32F1__=1 -std=c++1y -DSERIAL_USB -ffunction-sections -fdata-sections -DMCU_STM32F103CB -D__STM32F1__=1 -std=c++1y -DSERIAL_USB -ffunction-sections -fdata-sections
-Wl,--gc-sections -DDEBUG_LEVEL=0 -D__MARLIN_FIRMWARE__ -Wl,--gc-sections -DDEBUG_LEVEL=0
lib_ignore = ${STM32F1_maple.lib_ignore} lib_ignore = ${STM32F1_maple.lib_ignore}
SoftwareSerialM SoftwareSerialM