The LLVM Qualification Group is an open working group within the LLVM community. It was created to coordinate efforts around enabling the use of LLVM components in safety-critical applications governed by functional safety standards such as IEC 61508 (for general E/E/PE systems), IEC 62304 (medical devices), ISO 26262 (automotive), DO-178C (aerospace), and EN 50716 (railways).
LLVM is increasingly used in safety-critical domains (e.g., automotive, aerospace, medical), but currently lacks a shared structure to address the specific needs of functional safety, such as systematic assurance arguments, tool qualification artifacts, and their associated documentation.
A more open, upstream, reusable, and collaborative approach would benefit the wider ecosystem. This group serves as a public forum for those interested in improving LLVM’s suitability for use in such environments.
The Qualification Group aims to:
The group is non-enforcing and does not control any part of the codebase. All technical decisions remain subject to the standard LLVM review and governance process.
The members of the LLVM Qualification Group represent a diverse cross-section of the LLVM community, including individual contributors, researchers, vendor representatives, and experts in the field of software qualification, including reliability, quality, safety, and/or security. They meet the criteria for inclusion described in the sub-sections below and are identified as active contributors. Knowing their handles help us keep track of who’s who across platforms, coordinate activities, and recognize contributions.
| Name | Affiliation | Discourse handle | Discord handle | GitHub handle |
|---|---|---|---|---|
| Carlos Andrés Ramírez | Woven by Toyota | CarlosAndresRamirez | carlos_andres_ramirez | CarlosAndresRamirez |
| Oscar Slotosch | Validas | slotosch | oscarslotosch_66740 | slotosch |
| Petter Berntsson | Arm Limited | petbernt | petbernt | petbernt |
| Wendi Urribarri | Woven by Toyota | uwendi | uwendi | uwendi |
| YoungJun Lee | NSHC | YoungJunLee | YoungJunLee | IamYJLee |
| Zaky Hermawan | (No affiliation) | ZakyHermawan | quarkz99 | zakyHermawan |
Organizations are limited to three representatives within the group to maintain diversity.
There are several ways to participate:
GettingInvolved page.The group uses its communication channels for different purposes:
When a discussion in another channel affects an artifact or tracked action, the relevant outcome should be recorded in the corresponding GitHub pull request or issue.
We understand that most members contribute in a limited capacity due to their primary responsibilities. This initiative is volunteer-driven, and we operate with the following shared principles:
However, we need a balance between flexibility, structure, and enough organization to move forward together. Thus, to support coordination and clarity, the group distinguishes between active contributors and observers / interested participants.
Active contributors are members who provide regular and substantive contributions to the group’s work. This includes ongoing engagement in at least one of the following:
Active contribution implies sustained engagement that meaningfully advances the group’s objectives. Participation may be synchronous or asynchronous, depending on availability. Participation status reflects current bandwidth and coordination needs and may be updated during the biannual membership review.
Observers, or interested participants are anyone who follows the group’s work and may participate when availability allows. This is an open status and does not require the nomination process used for active contributors. Observers remain welcome to attend meetings, provide feedback, and contribute at any time. Moreover, observer status does not imply reduced importance or access within the group.
Membership in the LLVM Qualification Group is intended for individuals with relevant experience or active engagement in qualification-related efforts. Categories include:
Individual Contributors
Researchers
Vendor Contacts
Individuals may nominate themselves or be nominated by an existing member. Nominations should:
This nomination process applies to becoming an active contributor. People who simply wish to follow the group’s work or participate occasionally may do so as observers / interested participants, without a formal nomination process.
Nominations are discussed within the group. If consensus is reached, the nominee is accepted. Otherwise, a majority vote will decide.
To ensure the group remains active and focused, member participation is reviewed every six months. Inactive members may be removed following this review.
During the biannual membership review, members who have not participated in discussions or provided substantive contributions during the review period will be contacted. After consensus, they may be transitioned to observer status to reflect current availability.
This transition is procedural and does not restrict participation. Members may resume active contributor status at any time when their engagement increases.
The LLVM Qualification Working Group aims to make decisions transparently, collaboratively, and without unnecessary formality. The goal is to maintain efficiency while encouraging broad participation and mutual understanding.
This section describes the lightweight process used to handle proposals and decisions within the group. It may be revised as the group evolves and gains experience.
Discussions remain open until a clear consensus emerges, meaning no sustained objections have been raised after reasonable discussion.
To prevent open-ended debates, if no new viewpoints are expressed after an agreed period (e.g., 2 weeks), the moderator (typically the person who started the discussion thread) may take one of the following actions:
When consensus cannot be reached or when a clear yes/no decision is needed:
Final decisions should be briefly documented (e.g., in meeting minutes, the corresponding GitHub issue, or Discord discussion thread). Once stable, the resulting policy or outcome may be reflected in this documentation for reference.
The LLVM Qualification Working Group develops and maintains its public artifacts and working materials in the fusa-qual-wg directory of the llvm-wgs repository.
This directory is the central location for the group's technical outputs, including qualification guidance, documentation templates, analyses, proposals, and other materials related to LLVM tools, libraries, quality, and safety. It also contains supporting documentation from the group's activities and meetings.
The artifacts are developed collaboratively and may have different levels of maturity. Unless stated otherwise, they should be understood as working group materials rather than formally approved LLVM policies, certification evidence, or guarantees of suitability for a particular safety-critical application.
Feedback and contributions are welcome through the standard GitHub review process and the group's public discussion channels.
Pull requests affecting materials in the fusa-qual-wg directory require:
A review may be recorded either through GitHub's approval mechanism or through an unambiguous approving comment, such as “LGTM” or “Looks good to me.”
Before merging, review comments and objections should be addressed or otherwise resolved. Additional reviews from people outside the Working Group are also very welcome, but do not replace the required reviews from Working Group members.
Our working group is actively engaged in discussions about the project's direction and tackling technical challenges.
Concrete actions and backlog items are tracked through open fusa-qual-wg issues in the llvm-wgs repository.
A higher-level overview of the group's ongoing topics is available in the Backlog document.
We welcome your contributions and feedback.
Meeting agendas, minutes, and supporting materials are published to ensure transparency and continuity.
Upcoming and past meeting agendas, and meeting minutes are published in a dedicated thread on the LLVM Discourse forum: Meeting Agendas and Minutes
Slides used to support discussions during sync-up meetings are stored in a dedicated Google Drive folder. Note that the naming convention for these slides is YYYYMM_llvm_qual_wg.
While Discourse is our active communication channel for agendas and announcements, the llvm-wgs repository is our durable, central location for both WG artifacts and meeting records. The meeting directory in the llvm-wgs repository provides the long-term archive of the working group's meeting records. It contains:
The LLVM Qualification Group may enable AI auto-transcription (currently using Gemini) during sync-up calls in order to:
The purpose of auto-transcripts is to:
Additional safeguards include:
Long-term storage or model-training settings are disabled on the account used for organizing the working group calls.
However, according to Google’s Gemini documentation, even with all history features disabled, voice and transcript data may be retained on Google’s servers for up to ~72 hours for the purpose of “keeping Gemini safe and secure, including with help from human reviewers” before deletion.
This retention period cannot currently be shortened.
We want to ensure this practice remains transparent and comfortable for everyone. If any group members have concerns (e.g., about names appearing in transcripts or minutes), they are encouraged to raise them on Discourse or Discord so they can be addressed.
We are committed to fostering a respectful, inclusive, and constructive environment where contributors from diverse backgrounds and organizations can collaborate on qualification-related efforts in the LLVM ecosystem. To support this goal, we adopt the following principles:
This is a space for shared ownership and mutual learning. If you're here, you belong. Help us shape a group where trust, technical rigor, and collaboration go hand in hand.
We will not tolerate:
Code of Conduct <CodeOfConduct>, which applies across all official LLVM communication spaces.For more information or to get involved: