[llvm] 6971081 - [Docs] Remove future extensions section from writing a pass docs (#69286)

via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 17 17:06:25 PDT 2023


Author: Aiden Grossman
Date: 2023-10-17T17:06:22-07:00
New Revision: 6971081cefdc498ed474182cc06aec68b007955c

URL: https://github.com/llvm/llvm-project/commit/6971081cefdc498ed474182cc06aec68b007955c
DIFF: https://github.com/llvm/llvm-project/commit/6971081cefdc498ed474182cc06aec68b007955c.diff

LOG: [Docs] Remove future extensions section from writing a pass docs (#69286)

This section is quite outdated at this point and no longer relevant
given LLVM (and CPUs) has evolved significantly over the past 20+ years.

This is also aimed at serving as a test of the llvm docs CI that was
recently added in.

Added: 
    

Modified: 
    llvm/docs/WritingAnLLVMPass.rst

Removed: 
    


################################################################################
diff  --git a/llvm/docs/WritingAnLLVMPass.rst b/llvm/docs/WritingAnLLVMPass.rst
index 3e6063e58334359..b94669917c90711 100644
--- a/llvm/docs/WritingAnLLVMPass.rst
+++ b/llvm/docs/WritingAnLLVMPass.rst
@@ -1020,8 +1020,7 @@ series of passes:
    instead of traversing the entire program.  It reduces the memory consumption
    of compiler, because, for example, only one `DominatorSet
    <https://llvm.org/doxygen/classllvm_1_1DominatorSet.html>`_ needs to be
-   calculated at a time.  This also makes it possible to implement some
-   :ref:`interesting enhancements <writing-an-llvm-pass-SMP>` in the future.
+   calculated at a time.
 
 The effectiveness of the ``PassManager`` is influenced directly by how much
 information it has about the behaviors of the passes it is scheduling.  For
@@ -1350,29 +1349,3 @@ some with solutions, some without.
 Hopefully these tips will help with common case debugging situations.  If you'd
 like to contribute some tips of your own, just contact `Chris
 <mailto:sabre at nondot.org>`_.
-
-Future extensions planned
--------------------------
-
-Although the LLVM Pass Infrastructure is very capable as it stands, and does
-some nifty stuff, there are things we'd like to add in the future.  Here is
-where we are going:
-
-.. _writing-an-llvm-pass-SMP:
-
-Multithreaded LLVM
-^^^^^^^^^^^^^^^^^^
-
-Multiple CPU machines are becoming more common and compilation can never be
-fast enough: obviously we should allow for a multithreaded compiler.  Because
-of the semantics defined for passes above (specifically they cannot maintain
-state across invocations of their ``run*`` methods), a nice clean way to
-implement a multithreaded compiler would be for the ``PassManager`` class to
-create multiple instances of each pass object, and allow the separate instances
-to be hacking on 
diff erent parts of the program at the same time.
-
-This implementation would prevent each of the passes from having to implement
-multithreaded constructs, requiring only the LLVM core to have locking in a few
-places (for global resources).  Although this is a simple extension, we simply
-haven't had time (or multiprocessor machines, thus a reason) to implement this.
-Despite that, we have kept the LLVM passes SMP ready, and you should too.


        


More information about the llvm-commits mailing list