[llvm] [docs] Refresh Developer Policy text (PR #136198)

Oleksandr Alex Zinenko via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 18 01:24:00 PDT 2025


================
@@ -552,26 +556,42 @@ to do so.
 
 .. _discuss the change/gather consensus:
 
-Making a Major Change
----------------------
-
-When a developer begins a major new project with the aim of contributing it back
-to LLVM, they should inform the community with a post to the `LLVM Discourse forums`_, to the extent
-possible. The reason for this is to:
-
-#. keep the community informed about future changes to LLVM,
-
-#. avoid duplication of effort by preventing multiple parties working on the
-   same thing and not knowing about it, and
+Proposing Major Changes (RFCs)
+------------------------------
 
-#. ensure that any technical issues around the proposed work are discussed and
-   resolved before any significant work is done.
+LLVM is a large community with many stakeholders, and before landing any major
+change, it is important to discuss the design of a change publicly with the
+community. This is done by posting an Request For Comments (RFC) on the `LLVM
+Discourse forums`_.
 
 The design of LLVM is carefully controlled to ensure that all the pieces fit
 together well and are as consistent as possible. If you plan to make a major
 change to the way LLVM works or want to add a major new extension, it is a good
-idea to get consensus with the development community before you start working on
-it.
+idea to get consensus with the development community before you invest
+significant effort in an implementation. Prototype implementations, however, can
+often be helpful in making design discussions more concrete by demonstrating
+what is possible.
+
+TODO: Elaborate on best practices for making a successful RFC.
----------------
ftynse wrote:

Random ideas for this from recent experience:

 - make it targeted, don't touch components irrelevant to the task
 - explain how the change improves LLVM for all/most stakeholders rather than your specific use case
 - periodically summarize the current state of the discussion and clearly separate points where consensus seems to emerge from those where further discussion is necessary
 - by default, the burden of proof is on the proposer (though we'd like to avoid situations when somebody keeps asking for more proof as a way of exhausting the proposer)

https://github.com/llvm/llvm-project/pull/136198


More information about the llvm-commits mailing list