| # Getting Involved |
| |
| LLVM welcomes contributions of all kinds. To get started, please review the following topics: |
| |
| ```{contents} |
| :local: |
| ``` |
| |
| ```{toctree} |
| :hidden: |
| |
| Contributing |
| DeveloperPolicy |
| CodeReview |
| SupportPolicy |
| SphinxQuickstartTemplate |
| HowToSubmitABug |
| BugLifeCycle |
| CodingStandards |
| GitBisecting |
| GitRepositoryPolicy |
| ``` |
| |
| * {doc}`Contributing` |
| |
| An overview on how to contribute to LLVM. |
| |
| * {doc}`DeveloperPolicy` |
| |
| The LLVM project's policy towards developers and their contributions. |
| |
| * {doc}`CodeReview` |
| |
| The LLVM project's code-review process. |
| |
| * {doc}`SupportPolicy` |
| |
| The LLVM support policy for core and non-core components. |
| |
| * {doc}`SphinxQuickstartTemplate` |
| |
| A template + tutorial for writing new Sphinx documentation. It is meant |
| to be read in source form. |
| |
| * {doc}`HowToSubmitABug` |
| |
| Instructions for properly submitting information about any bugs you run into |
| in the LLVM system. |
| |
| * {doc}`BugLifeCycle` |
| |
| Describes how bugs are reported, triaged, and closed. |
| |
| * {doc}`CodingStandards` |
| |
| Details the LLVM coding standards and provides useful information on writing |
| efficient C++ code. |
| |
| * {doc}`GitHub` |
| |
| Describes how to use the llvm-project repository and code reviews on GitHub. |
| |
| * {doc}`GitBisecting` |
| |
| Describes how to use `git bisect` on LLVM's repository. |
| |
| * {doc}`GitRepositoryPolicy` |
| |
| Collection of policies around the git repositories. |
| |
| (development-process)= |
| |
| ## Development Process |
| |
| Information about LLVM's development process. |
| |
| ```{toctree} |
| :hidden: |
| |
| Projects |
| HowToReleaseLLVM |
| ReleaseProcess |
| HowToAddABuilder |
| ReleaseNotes |
| ``` |
| |
| * {doc}`Projects` |
| |
| How-to guide and templates for new projects that *use* the LLVM |
| infrastructure. The templates (directory organization, Makefiles, and test |
| tree) allow the project code to be located outside (or inside) the `llvm/` |
| tree, while using LLVM header files and libraries. |
| |
| * {doc}`HowToReleaseLLVM` |
| |
| This is a guide to preparing LLVM releases. Most developers can ignore it. |
| |
| * {doc}`ReleaseProcess` |
| |
| This is a guide to validate a new release, during the release process. Most developers can ignore it. |
| |
| * {doc}`HowToAddABuilder` |
| |
| Instructions for adding new builder to LLVM buildbot master. |
| |
| * {doc}`Release notes for the current release <ReleaseNotes>` |
| |
| This describes new features, known bugs, and other limitations. |
| |
| (lists-forums)= |
| |
| ## Forums & Mailing Lists |
| |
| If you can't find what you need in these docs, try consulting the |
| Discourse forums. There are also commit mailing lists for all commits to the LLVM Project. |
| The {doc}`CodeOfConduct` applies to all these forums and mailing lists. |
| |
| * [LLVM Discourse](https://discourse.llvm.org/) |
| |
| The forums for all things LLVM and related sub-projects. There are categories and subcategories for a wide variety of areas within LLVM. You can also view tags or search for a specific topic. |
| |
| * [Commits Archive (llvm-commits)](http://lists.llvm.org/pipermail/llvm-commits/) |
| |
| This list contains all commit messages that are made when LLVM developers |
| commit code changes to the repository. It also serves as a forum for |
| patch review (i.e., send patches here). It is useful for those who want to |
| stay on the bleeding edge of LLVM development. This list is very high |
| volume. |
| |
| * [Bugs & Patches Archive (llvm-bugs)](http://lists.llvm.org/pipermail/llvm-bugs/) |
| |
| This list gets emailed every time a bug is opened and closed. It is |
| higher volume than the LLVM-dev list. |
| |
| * [LLVM Announcements](https://discourse.llvm.org/c/announce/46) |
| |
| If you just want project-wide announcements such as releases, developers meetings, or blog posts, then you should check out the Announcement category on LLVM Discourse. |
| |
| (online-sync-ups)= |
| |
| ## Online Sync-Ups |
| |
| A number of regular calls are organized on specific topics. It should be |
| expected that the range of topics will change over time. At the time of |
| writing, the following sync-ups are organized. |
| The {doc}`CodeOfConduct` applies to all online sync-ups. |
| |
| If you'd like to organize a new sync-up, please add the info in the table |
| below. Please also create a calendar event for it and invite calendar@llvm.org |
| to the event, so that it'll show up on the {ref}`llvm-community-calendar`. |
| Please see {ref}`llvm-community-calendar-host-guidance` for more guidance on |
| what to add to your calendar invite. |
| |
| ```{list-table} LLVM regular sync-up calls |
| :widths: 25 25 25 25 |
| :header-rows: 1 |
| |
| * - Topic |
| - Frequency |
| - Calendar link |
| - Minutes/docs link |
| * - Loop Optimization Working Group |
| - Every first Wednesday of the month |
| - [ics](./_static/LoopOptWG_invite.ics) |
| - [Minutes/docs](https://docs.google.com/document/d/1sdzoyB11s0ccTZ3fobqctDpgJmRoFcz0sviKxqczs4g/edit) |
| * - RISC-V |
| - Every 2 weeks on Thursday |
| - [ics](https://calendar.google.com/calendar/ical/lowrisc.org_0n5pkesfjcnp0bh5hps1p0bd80%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/b/1?cid=bG93cmlzYy5vcmdfMG41cGtlc2ZqY25wMGJoNWhwczFwMGJkODBAZ3JvdXAuY2FsZW5kYXIuZ29vZ2xlLmNvbQ) |
| - [Minutes/docs](https://docs.google.com/document/d/1G3ocHm2zE6AYTS2N3_3w2UxFnSEyKkcF57siLWe-NVs) |
| * - ML Guided Compiler Optimizations |
| - Monthly |
| - |
| - [Minutes/docs](https://docs.google.com/document/d/1JecbplF09l3swTjze-UVeLh4L48svJxGVy4mz_e9Rhs/edit?usp=gmail#heading=h.ts9cmcjbir1j) |
| * - [LLVM security group](https://llvm.org/docs/Security.html) |
| - Monthly, every 3rd Tuesday |
| - [ics](https://calendar.google.com/calendar/ical/eoh3m9k1l6vqbd1fkp94fv5q74%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/embed?src=eoh3m9k1l6vqbd1fkp94fv5q74%40group.calendar.google.com) |
| - [Minutes/docs](https://discourse.llvm.org/t/llvm-security-group-public-sync-ups/62735) |
| * - [CIRCT](https://github.com/llvm/circt) |
| - Weekly, on Wednesday |
| - |
| - [Minutes/docs](https://docs.google.com/document/d/1fOSRdyZR2w75D87yU2Ma9h2-_lEPL4NxvhJGJd-s5pk/edit#heading=h.mulvhjtr8dk9) |
| * - flang |
| - Multiple meeting series, [documented here](https://github.com/llvm/llvm-project/blob/main/flang/docs/GettingInvolved.md#calls) |
| - |
| - |
| * - OpenMP |
| - Multiple meeting series, [documented here](https://openmp.llvm.org/docs/SupportAndFAQ.html) |
| - |
| - |
| * - LLVM Alias Analysis |
| - Every 4 weeks on Tuesdays |
| - [ics](http://lists.llvm.org/pipermail/llvm-dev/attachments/20201103/a3499a67/attachment-0001.ics) |
| - [Minutes/docs](https://docs.google.com/document/d/17U-WvX8qyKc3S36YUKr3xfF-GHunWyYowXbxEdpHscw) |
| * - LLVM Pointer Authentication |
| - Every month on Mondays |
| - [ics](https://calendar.google.com/calendar/ical/fr1qtmrmt2s9odufjvurkb6j70%40group.calendar.google.com/public/basic.ics) |
| - [Minutes/docs](https://discourse.llvm.org/t/llvm-pointer-authentication-sync-ups/62661) |
| * - LLVM Embedded Toolchains |
| - Every 4 weeks on Thursdays |
| - [ics](https://drive.google.com/file/d/1uNa-PFYkhAfT83kR2Nc4Fi706TAQFBEL/view?usp=sharing) |
| [gcal](https://calendar.google.com/calendar/u/0?cid=ZDQyc3ZlajJmbjIzNG1jaTUybjFsdjA2dWNAZ3JvdXAuY2FsZW5kYXIuZ29vZ2xlLmNvbQ) |
| - [Minutes/docs](https://docs.google.com/document/d/1GahxppHJ7o1O_fn1Mbidu1DHEg7V2aOr92LXCtNV1_o/edit?usp=sharing) |
| * - Clang C and C++ Language Working Group |
| - 1st and 3rd Wednesday of the month |
| - |
| - [Minutes/docs](https://docs.google.com/document/d/1x5-RbOC6-jnI_NcJ9Dp4pSmGhhNe7lUevuWUIB46TeM/edit?usp=sharing) |
| * - LLVM SPIR-V Backend Working Group |
| - Every week on Monday |
| - |
| - [Meeting details/agenda](https://docs.google.com/document/d/1UjX-LAwPjJ75Nmb8a5jz-Qrm-pPtKtQw0k1S1Lop9jU/edit?usp=sharing) |
| * - SYCL Upstream Working Group |
| - Every 2 weeks on Mondays |
| - [gcal](https://calendar.google.com/calendar/u/0?cid=c3ljbC5sbHZtLndnQGdtYWlsLmNvbQ) |
| - [Meeting details/agenda](https://docs.google.com/document/d/1ivYDSn_5ChTeiZ7TiO64WC_jYJnGwAUiT9Ngi9cAdFU/edit?usp=sharing) |
| * - Formal Semantics Working Group |
| - Every 2 weeks on Mondays |
| - [gcal](https://calendar.google.com/calendar/event?eid=aHJpNnNzb3Zia3FtNzNuYjdpbmJtZG5nZGVfMjAyNjA1MDRUMTUzMDAwWiBjYWxlbmRhckBsbHZtLm9yZw) |
| - [Meeting notes](https://docs.google.com/document/d/1muS2gZ7PUhbypbl0bmjb2J-UUzY7K8AO9a8RHVw_Mjo/edit?tab=t.0) |
| * - Vectorizer Improvement Working Group |
| - 3rd Tuesday of the month |
| - [ics](https://www.icloud.com/iclouddrive/032PeZzdN6U4uRMwJRJPrS2Lw#Vectorizer_Improvements) |
| - [Meeting details/agenda:](https://docs.google.com/document/d/1Glzy2JiWuysbD-HBWGUOkZqT09GJ4_Ljodr0lXD5XfQ/edit) |
| * - [LLVM Qualification Working Group](https://llvm.org/docs/QualGroup.html) |
| - Monthly: 2nd Tuesday (EU/Asia) and 2nd Friday JST / Thursday (Americas) |
| - [ics](https://calendar.google.com/calendar/ical/f731f5b57956a132f6c553ed30f496b16e1018f831be13eb6c4b896c108a6626%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/embed?src=f731f5b57956a132f6c553ed30f496b16e1018f831be13eb6c4b896c108a6626%40group.calendar.google.com&ctz=Asia%2FTokyo) |
| - [Minutes/docs](https://discourse.llvm.org/t/llvm-qualification-wg-sync-ups-meeting-minutes/87148) |
| * - MLIR C/C++ Frontend Working Group |
| - Monthly, usually 1st Monday of the month |
| - [ics](https://calendar.google.com/calendar/ical/jvceakm3kbpku3f4jrsv1lkigo%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/embed?src=jvceakm3kbpku3f4jrsv1lkigo%40group.calendar.google.com&ctz=America%2FLos_Angeles) |
| - [Minutes/docs](https://docs.google.com/document/d/1-flHK3TjQUrkSO2Fdt4webZ2zCyeXxpTLMiRQbMW7hE) |
| * - ClangIR Upstreaming Coordination Meeting |
| - Every 2 weeks on Mondays |
| - [ics](https://calendar.google.com/calendar/ical/c_673c6cd64474c0aff173bf8fa609559f93d654e0984d9d91d71abd32d28c0486%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/embed?src=c_673c6cd64474c0aff173bf8fa609559f93d654e0984d9d91d71abd32d28c0486%40group.calendar.google.com&ctz=America%2FLos_Angeles) |
| - |
| * - GlobalISel |
| - Every 2nd Tuesday of the month |
| - [gcal](https://calendar.google.com/calendar/u/0?cid=YWZjNzhmMzE4MDNlNTAyNGY1NmE1MDIyODY0YTYwZmJmYzRjYTEwNTE1NmUxODA2NzBkYTliY2ZhYTVkNjk0NUBncm91cC5jYWxlbmRhci5nb29nbGUuY29t) |
| - [Meeting details/agenda](https://docs.google.com/document/d/1Ry8O4-Tm5BFj9AMjr8qTQFU80z-ptiNQ62687NaIvLs/edit?usp=sharing) |
| * - Clang Static Analysis Working Group |
| - Every 2 weeks on Tuesdays |
| - [ics](https://calendar.google.com/calendar/ical/9c23f3a54dbb4fbac3801c50094fc43118a37c186f5c65b2898cd0fc251c8610%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/u/0?cid=OWMyM2YzYTU0ZGJiNGZiYWMzODAxYzUwMDk0ZmM0MzExOGEzN2MxODZmNWM2NWIyODk4Y2QwZmMyNTFjODYxMEBncm91cC5jYWxlbmRhci5nb29nbGUuY29t) |
| - [Meeting notes](https://docs.google.com/document/d/1ijI8pWeyidmhFOd5Ndgvr5AziZwrMCbt2oUehv8qHmw/edit?usp=sharing) |
| * - LLVM Memory Safety Working Group |
| - Every 4 weeks on Thursdays |
| - [ics](https://calendar.google.com/calendar/ical/2d77f9a2624d18cd46e5299d15cc0fa0c90dca53fd68802261d52121d21a0573%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/u/0?cid=MmQ3N2Y5YTI2MjRkMThjZDQ2ZTUyOTlkMTVjYzBmYTBjOTBkY2E1M2ZkNjg4MDIyNjFkNTIxMjFkMjFhMDU3M0Bncm91cC5jYWxlbmRhci5nb29nbGUuY29t) |
| - [Meeting notes](https://docs.google.com/document/d/1DkCik6BTnO-cox_9y_BTKzPaJJOo_hBxiNFP3lInvOM/edit?usp=sharing) |
| * - [Lifetime Safety Breakout Group](https://github.com/orgs/llvm/projects/39) |
| - Every 2 weeks on Wednesdays |
| - [ics](https://calendar.google.com/calendar/ical/2d77f9a2624d18cd46e5299d15cc0fa0c90dca53fd68802261d52121d21a0573%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/u/0?cid=MmQ3N2Y5YTI2MjRkMThjZDQ2ZTUyOTlkMTVjYzBmYTBjOTBkY2E1M2ZkNjg4MDIyNjFkNTIxMjFkMjFhMDU3M0Bncm91cC5jYWxlbmRhci5nb29nbGUuY29t) |
| - [Meeting notes](https://docs.google.com/document/d/1DkCik6BTnO-cox_9y_BTKzPaJJOo_hBxiNFP3lInvOM/edit?tab=t.nvvd6cfloi81) |
| * - [HLSL Working Group](https://github.com/llvm/wg-hlsl) |
| - Every week on Thursday |
| - |
| - [Meeting notes](https://github.com/llvm/wg-hlsl/tree/main/meetings) |
| ``` |
| |
| For event owners, our Discord bot also supports sending automated announcements |
| of upcoming sync-ups. Please see the {ref}`discord-bot-event-pings` section for |
| info. |
| |
| ### Past online sync-ups |
| |
| Some online sync-ups are no longer happening. We keep pointing to them here to |
| keep track of the meeting notes and in case anyone would want to revive them in |
| the future. |
| |
| ```{list-table} LLVM no-longer-happening sync-up calls |
| :widths: 25 25 25 25 |
| :header-rows: 1 |
| |
| * - Topic |
| - Frequency |
| - Calendar link |
| - Minutes/docs link |
| * - Scalable Vectors and Arm SVE |
| - Monthly, every 3rd Tuesday |
| - [ics](https://calendar.google.com/calendar/ical/bjms39pe6k6bo5egtsp7don414%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/u/0/embed?src=bjms39pe6k6bo5egtsp7don414@group.calendar.google.com) |
| - [Minutes/docs](https://docs.google.com/document/d/1UPH2Hzou5RgGT8XfO39OmVXKEibWPfdYLELSaHr3xzo/edit) |
| * - MemorySSA in LLVM |
| - Every 8 weeks on Mondays |
| - [ics](https://calendar.google.com/calendar/ical/c_1mincouiltpa24ac14of14lhi4%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/embed?src=c_1mincouiltpa24ac14of14lhi4%40group.calendar.google.com) |
| - [Minutes/docs](https://docs.google.com/document/d/1-uEEZfmRdPThZlctOq9eXlmUaSSAAi8oKxhrPY_lpjk/edit#) |
| * - Vector Predication |
| - Every 2 weeks on Tuesdays, 3pm UTC |
| - |
| - [Minutes/docs](https://docs.google.com/document/d/1q26ToudQjnqN5x31zk8zgq_s0lem1-BF8pQmciLa4k8/edit?usp=sharing) |
| * - [MLIR](https://mlir.llvm.org) design meetings |
| - Weekly, on Thursdays |
| - |
| - [Minutes/docs](https://docs.google.com/document/d/1y_9f1AbfgcoVdJh4_aM6-BaSHvrHl8zuA5G4jv_94K8/edit#heading=h.cite1kolful9) |
| ``` |
| |
| (office-hours)= |
| |
| ## Office hours |
| |
| A number of experienced LLVM contributors make themselves available for a chat |
| on a regular schedule, to anyone who is looking for some guidance. Please find |
| the list of who is available when, through which medium, and what their area of |
| expertise is. Don't be too shy to dial in! |
| |
| Office hours are also listed on the {ref}`llvm-community-calendar`. Of course, |
| people take time off from time to time, so if you dial in and you don't find |
| anyone present, chances are they happen to be off that day. |
| |
| The {doc}`CodeOfConduct` applies to all office hours. |
| |
| ```{list-table} LLVM office hours |
| :widths: 15 40 15 15 15 |
| :header-rows: 1 |
| |
| * - Name |
| - In-scope topics |
| - When? |
| - Where? |
| - Languages |
| * - Kristof Beyls |
| - General questions on how to contribute to LLVM; organizing meetups; |
| submitting talks; and other general LLVM-related topics. Arm/AArch64 |
| codegen. LLVM security group. LLVM Office Hours. |
| - Every 2nd and 4th Wednesday of the month at 9.30am CET, for 30 minutes. |
| [ics](https://user.fm/calendar/v1-eac36694e3024854a9402da023f9e0fa/Kristof%20Beyls%20LLVM%20office%20hours.ics) |
| - [Jitsi](https://meet.jit.si/KristofBeylsLLVMOfficeHour) |
| - English, Flemish, Dutch |
| * - Alina Sbirlea |
| - General questions on how to contribute to LLVM; women in compilers; |
| MemorySSA, BatchAA, various loop passes, new pass manager. |
| - Monthly, 2nd Tuesdays, 10.00am PT/7:00pm CET, for 30 minutes. |
| [ics](https://calendar.google.com/calendar/ical/c_pm6e7160iq7n5fcm1s6m3rjhh4%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/embed?src=c_pm6e7160iq7n5fcm1s6m3rjhh4%40group.calendar.google.com) |
| - [GoogleMeet](https://meet.google.com/hhk-xpdj-gvx) |
| - English, Romanian |
| * - Aaron Ballman (he/him) |
| - Clang internals; frontend attributes; clang-tidy; clang-query; AST matchers |
| - Monthly, 2nd Monday and 3rd Friday of the month at 10:00am Eastern and again at 2:00pm Eastern, for 60 minutes. |
| [ics](https://calendar.google.com/calendar/ical/npgke5dug0uliud0qapptmps58%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/embed?src=npgke5dug0uliud0qapptmps58%40group.calendar.google.com) |
| - [GoogleMeet](https://meet.google.com/xok-iqne-gmi) |
| - English, Norwegian (not fluently) |
| * - Johannes Doerfert (he/him) |
| - OpenMP, LLVM-IR, interprocedural optimizations, Attributor, workshops, research, ... |
| - Every week, Wednesdays 9:30am (Pacific Time), for 1 hour. |
| [ics](https://drive.google.com/file/d/1E_QkRvirmdJzlXf2EKBUX-v8Xj7-eW3v/view?usp=sharing) |
| - [MS Teams](https://teams.microsoft.com/l/meetup-join/19%3ameeting_MTMxNzU4MWYtYzViNS00OTM2LWJmNWQtMjg5ZWFhNGVjNzgw%40thread.v2/0?context=%7b%22Tid%22%3a%22a722dec9-ae4e-4ae3-9d75-fd66e2680a63%22%2c%22Oid%22%3a%22885bda30-ce8e-46db-aa7e-15de0474831a%22%7d) |
| - English, German |
| * - Tobias Grosser |
| - General questions on how to contribute to LLVM/MLIR, Polly, Loop Optimization, FPL, Research in LLVM, PhD in CS, Summer of Code. |
| - Monthly, last Monday of the month at 18:00 London time (typically 9am PT), for 30 minutes. |
| - [Video Call](https://meet.grosser.science/LLVMOfficeHours) |
| - English, German, Spanish, French |
| * - Alexey Bader |
| - SYCL compiler, offload tools, OpenCL and SPIR-V, how to contribute. |
| - Monthly, 2nd Monday of the month at 9:30am PT, for 30 minutes. |
| - [GoogleMeet](https://meet.google.com/pdz-xhns-uus) |
| - English, Russian |
| * - Maksim Panchenko |
| - BOLT internals, IR, new passes, proposals, etc. |
| - Monthly, 2nd Wednesday of the month at 11:00am PT, for 30 minutes. |
| - [Zoom](https://fb.zoom.us/j/97065697120?pwd=NTFaUWJjZW9uVkJuaVlPTE9qclE3dz09) |
| - English, Russian |
| * - Quentin Colombet (he/him) |
| - LLVM/MLIR; Codegen (Instruction selection (GlobalISel/SDISel), Machine IR, |
| Register allocation, etc.); Optimizations; MCA |
| - Monthly, 1st Wednesday of the month at 8.00am PT, for 30 minutes. |
| [ics](https://calendar.google.com/calendar/ical/48c4ad60290a4df218e51e1ceec1106fe317b0ebc76938d9273592053f38204e%40group.calendar.google.com/public/basic.ics) |
| [gcal](https://calendar.google.com/calendar/embed?src=48c4ad60290a4df218e51e1ceec1106fe317b0ebc76938d9273592053f38204e%40group.calendar.google.com) |
| - [Google meet](https://meet.google.com/cbz-grrp-obs) |
| - English, French |
| * - Phoebe Wang (she/her) |
| - X86 backend, General questions to X86, women in compilers. |
| - Monthly, 3rd Wednesday of the month at 8:30am Beijing time, for 30 minutes. |
| - [MS Teams](https://teams.microsoft.com/l/meetup-join/19%3ameeting_NWQ0MjU0NjYtZjUyMi00YTU3LThmM2EtY2Y2YTE4NGM3NmFi%40thread.v2/0?context=%7b%22Tid%22%3a%2246c98d88-e344-4ed4-8496-4ed7712e255d%22%2c%22Oid%22%3a%227b309d9c-a9bb-44c8-a940-ab97eef42d4d%22%7d) |
| - English, Chinese |
| * - Amara Emerson |
| - GlobalISel questions. |
| - Monthly, 4th Wednesday of the month at 9:30am PT, for 30 minutes. |
| - [Google meet](https://meet.google.com/pdd-dibg-cwv) |
| - English |
| * - Maksim Levental and Jeremy Kun |
| - MLIR newcomers and general discussion ([livestreamed](https://www.youtube.com/playlist?list=PLhxO86S3jsX2k7kOhZaV-qKWm8tNsUdAE)) |
| - Every two weeks, Wednesdays at 2:00pm US Pacific, for 90 minutes. |
| - Livestream chat or [Google meet](https://meet.google.com/wit-tvzc-dwc) |
| - English |
| * - Renato Golin |
| - General LLVM, MLIR & Linalg, distributed computing, research, socials. |
| - Every first Friday of the month, 14:00 UK time, for 60 minutes. |
| - [Google meet](https://meet.google.com/jps-twgq-ivz) |
| - English, Portuguese |
| ``` |
| |
| For event owners, our Discord bot also supports sending automated announcements |
| of upcoming office hours. Please see the {ref}`discord-bot-event-pings` section |
| for info. |
| |
| ### Guidance for office hours hosts |
| |
| * If you're interested in becoming an office hours host, please add your |
| information to the list above. Please create a calendar event for it and |
| invite calendar@llvm.org to the event so that it'll show up on the |
| {ref}`llvm-community-calendar`. |
| Please see {ref}`llvm-community-calendar-host-guidance` for more guidance on |
| what to add to your calendar invite. |
| * When starting an office hours session, if you haven't set up the Discord bot |
| integration, consider typing something like "*Hi, I'm available for chats in |
| the next half hour at* video chat URL. *I'm looking forward to having |
| conversations on the video chat or here.*" on the |
| [#office-hours Discord channel](https://discord.com/channels/636084430946959380/976196303681896538). |
| |
| Doing this can help: |
| * overcome potential anxiety to call in for a first time, |
| * people who prefer to first exchange a few messages through text chat |
| before dialing in, and |
| * remind the wider community that office hours do exist. |
| * If you decide to no longer host office hours, please do remove your entry |
| from the list above. |
| |
| |
| ## Discord |
| |
| Users and developers of the LLVM project (including subprojects such as Clang) |
| can be found on the community's [Discord](https://discord.gg/xS7Z362) |
| chat server. The server is actively moderated. |
| |
| The #buildbot-status channel has a bot for |
| [LLVM buildbot](http://lab.llvm.org/buildbot/#/console) status changes. The |
| bot will update the channel with a link to a build bot when a build goes from |
| passing to failing and again when the build goes from failing back to passing. |
| It is a great way to actively monitor the status of the build. |
| |
| The bot also supports @mention-ing you when your email appears on a blamelist. |
| For more details, DM `help` to the bot. |
| |
| (discord-bot-event-pings)= |
| |
| ### Discord bot event pings |
| |
| Our Discord bot supports automatically sending messages about upcoming events |
| on [the LLVM community calendar](https://calendar.google.com/calendar/u/0/embed?src=calendar@llvm.org) |
| to Discord. This behavior is controlled on a per-event basis, by metadata in the |
| event's description. Each piece of metadata should be on its own line in the |
| event description. |
| |
| The currently supported metadata is: |
| |
| - `discord-bot-event-type` - **Required**. Specifies the event type. Valid |
| values are `office-hours` and `sync-up`. |
| - `discord-bot-channels-to-mention` - **Sometimes required**. A |
| comma-separated list of Discord channels to post notifications in. If your |
| `discord-bot-event-type` is `office-hours`, the `#office-hours` channel |
| will be implicitly appended to this list (ergo, you don't need to specify this |
| item). Otherwise, you must specify a value here. |
| - `discord-bot-mention` - **Optional**. A comma-separated list of people to |
| ping on each event notification. All names mentioned must be Discord |
| usernames, and must have a leading `@`. e.g., `@foo, @bar`. |
| - `discord-bot-reminder-time-before-start` - **Optional**. The number of |
| minutes before the beginning of an event to send a ping. This should be |
| formatted as an integer. Defaults to 30. |
| - `discord-bot-message` - **Optional**. Text to append to all event pings. |
| |
| An example of an event description with valid metadata is: |
| |
| ```text |
| Regular office hours to chat with people about LLVM! We can help with |
| questions, troubleshooting bugs, etc. |
| |
| discord-bot-channels-to-mention: #beginners, #foo |
| discord-bot-event-type: office-hours |
| discord-bot-mention: @gburgessiv, @bar |
| discord-bot-message: Come join us for office hours! |
| discord-bot-reminder-time-before-start: 5 |
| ``` |
| |
| This metadata will prompt the Discord bot to: |
| |
| * send pings 5 minutes before the given event starts, mentioning `@gburgessiv` |
| and `@bar` in the ping |
| * send the pings to the `#beginners`, `#foo`, and `#office-hours` channels |
| * include the text "Come join us for office hours!" in the ping |
| |
| A few minutes before sending a ping, the bot will double-check that the event |
| hasn't been cancelled. |
| |
| If you need help troubleshooting, or have feature requests/questions, please |
| feel free to ping @gburgessiv! |
| |
| (meetups-social-events)= |
| |
| ## Meetups and social events |
| |
| ```{toctree} |
| :hidden: |
| |
| MeetupGuidelines |
| ``` |
| |
| Besides developer [meetings and conferences](https://llvm.org/devmtg/), |
| there are several user groups called |
| [LLVM Socials](https://www.meetup.com/pro/llvm/). We greatly encourage you to |
| join one in your city. Or start a new one if there is none: |
| |
| {doc}`MeetupGuidelines` |
| |
| (community-proposals)= |
| |
| ## Community wide proposals |
| |
| Proposals for large-scale changes in how the community behaves and how the work flow |
| can be better. |
| |
| ```{toctree} |
| :hidden: |
| |
| Proposals/GitHubMove |
| BugpointRedesign |
| Proposals/TestSuite |
| Proposals/VariableNames |
| Proposals/VectorPredication |
| ``` |
| |
| * {doc}`Proposals/GitHubMove` |
| |
| Proposal to move from SVN/Git to GitHub. |
| |
| * {doc}`BugpointRedesign` |
| |
| Design doc for a redesign of the Bugpoint tool. |
| |
| * {doc}`Proposals/TestSuite` |
| |
| Proposals for additional benchmarks/programs for llvm's test-suite. |
| |
| * {doc}`Proposals/VariableNames` |
| |
| Proposal to change the variable names coding standard. |
| |
| * {doc}`Proposals/VectorPredication` |
| |
| Proposal for predicated vector instructions in LLVM. |
| |
| (llvm-community-calendar)= |
| |
| ## LLVM community calendar |
| |
| We aim to maintain a public calendar view of all events happening in the LLVM |
| community such as {ref}`online-sync-ups` and {ref}`office-hours`. The calendar |
| can be found at |
| https://calendar.google.com/calendar/u/0/embed?src=calendar@llvm.org and can |
| also be seen inline below: |
| |
| ```{raw} html |
| <iframe src="https://calendar.google.com/calendar/embed?height=600&wkst=1&bgcolor=%23ffffff&ctz=UTC&showCalendars=0&showDate=1&showNav=1&src=Y2FsZW5kYXJAbGx2bS5vcmc&color=%23039BE5" style="border:solid 1px #777" width="800" height="600" frameborder="0" scrolling="no"></iframe> |
| ``` |
| |
| Note that the web view of the LLVM community calendar shows events in |
| Coordinated Universal Time (UTC). If you use Google Calendar, consider |
| subscribing to it with the + button in the bottom-right corner to view all |
| events in your local time zone alongside your other calendars. |
| |
| (llvm-community-calendar-host-guidance)= |
| |
| ### Guidance on what to put into LLVM community calendar invites |
| |
| To add your event, create a calendar event for it and invite calendar@llvm.org |
| on it. Your event should then show up on the community calendar. |
| |
| Please put the following pieces of information in your calendar invite: |
| |
| * Write a single paragraph describing what the event is about. Include things |
| such as who the event is for and what sort of topics are discussed. |
| * State explicitly that the {doc}`CodeOfConduct` applies to this event. |
| * Make it clear who: |
| |
| * the organizer is. |
| |
| * the person to contact is in case of any code-of-conduct issues. Typically, |
| this would be the organizer. |
| |
| * If you have meeting minutes for your event, add a pointer to where those live. |
| A good place for meeting minutes could be as a post on LLVM Discourse. |
| |
| * If you're hosting a sync-up or office hours event and would like it to be |
| announced by the Discord bot, add the relevant metadata (full descriptions |
| available in the {ref}`discord-bot-event-pings` section). |
| |
| An example invite looks as follows |
| |
| ```text |
| This event is a meetup for all developers of LLDB. Meeting agendas are posted |
| on Discourse before the event. |
| |
| Attendees must adhere to the LLVM Code of Conduct |
| (https://llvm.org/docs/CodeOfConduct.html). For any Code of Conduct reports, |
| please contact the organizers and also email conduct@llvm.org. |
| |
| Agenda/Meeting Minutes: Link to minutes |
| |
| Organizer(s): First Surname (name@email.com) |
| |
| discord-bot-channels-to-mention: #lldb |
| discord-bot-event-type: sync-up |
| discord-bot-mention: @host-username, @another-host |
| discord-bot-message: Come join us to chat about LLDB! |
| discord-bot-reminder-time-before-start: 30 |
| ``` |