2025 LLVM Developers’ Meeting Embedded Toolchains Workshop (original) (raw)
September 24, 2025, 6:43pm 1
The 3rd edition of the Embedded Toolchains Workshop will take place on Monday, October 27. Similarly to previous years, the goal of the workshop is to provide a venue to discuss embedded-specific topics and approaches for addressing these in LLVM.
The workshop format will be a series of Birds of a Feather sessions (BOFs), informal discussions about a particular topic of interest to the embedded LLVM community. Rather than give a formal presentation, facilitators will prepare questions or ideas around a particular topic for the attendees to discuss. We will have a screen and whiteboard available for facilitators to use.
We expect the topics of interest to include code size optimization, memory management, RTOS support, debugging and profiling, security and testing. Topics related to runtimes that are specific to embedded systems are in scope, but general runtimes topics should go to the Runtime Libraries Workshop.
This will be an in-person only workshop with focus on active discussions. The BOF sessions will not be recorded but we plan to take notes, which will be shared back on Discord.
To propose a BOF session, please contact @petrhosek and @smithp35 by Friday, October 10 and include the topic, the questions to be covered and the names of facilitators.
We will discuss the workshop in the next LLVM Embedded Toolchains Working Group sync up on Thursday, October 9. Please see the LLVM community calendar for details.
We discussed the potential ideas for BOFs in the last LLVM Embedded Toolchains Working Group sync up and came up with the following list:
- Position independent code in embedded systems. How important is PIC in baremetal environments? What are the viable alternatives (e.g. PC-relative and base-relative addressing)?
- Concurrency in embedded systems. Can we support C/C++ standard library threads in baremetal environments? What are the options for TLS implementation?
- Standard I/O in baremetal environments. The continuation of the discussion from [RFC] Implementation of stdio on baremetal.
- LTO and linker scripts. How to support the use of LTO with linker scripts? Can we use LTO with runtime libraries? What are the issues when using inline assembly with LTO?
- Clang runtimes in the bare-metal driver. What are the next steps for multilib support? Is there an alternative to
clang-runtimes? Can we build runtimes from source on demand?
We are looking for facilitators. If you are willing to facilitate one of these sessions, please let us know.