libretiny: exclude veneer symbols from post-link IRAM fallback

Linker-generated interworking veneers (e.g. ___ZN...enable_loop_soon_
any_context_veneer at 0x9b062588) contain the same function name
substrings but live at unrelated addresses, producing a bogus multi-GB
range in the summary. Filter them out.
This commit is contained in:
J. Nick Koston
2026-04-15 15:59:26 -10:00
parent 35cafd52a5
commit 853782b251
@@ -148,7 +148,7 @@ def _post_link(target, source, env):
start = int(addr_str, 16)
elif name == "__esphome_sram_text_end":
end = int(addr_str, 16)
elif any(s in name for s in _FALLBACK_SUBSTRINGS):
elif "veneer" not in name and any(s in name for s in _FALLBACK_SUBSTRINGS):
fallback.append(int(addr_str, 16))
print("ESPHome: IRAM_ATTR placement summary ({}):".format(_variant))
if start is not None and end is not None: