mirror of
https://github.com/esphome/esphome.git
synced 2026-02-13 04:57:34 -07:00
bf9e3213f2df8cef7ce45fbc06f0cb2af8ad14e9
On ESP8266 (GCC 10.3), std::vector::push_back/emplace_back emit separate _M_realloc_insert functions even when called from only one site. Adding __attribute__((flatten)) inlines the realloc path, saving the out-of-line function overhead. Changes: - wifi: Move set_sta_priority from header to .cpp (eliminates duplicate instantiation at 2 call sites) and add flatten - web_server_base: Flatten add_handler (single push_back site) - api: Flatten accept_new_connections_ (single emplace_back site) Saves 160 bytes of flash on ESP8266.
Description
ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.
Readme
Multiple Licenses
257 MiB
Languages
C++
64.2%
Python
35.5%
C
0.2%
