Index: general/prog/llvm.xml
===================================================================
--- general/prog/llvm.xml	(revision 0f8922e088c1b809ae2dad4acdc2ea6ac2512b31)
+++ general/prog/llvm.xml	(revision 218e13ce4ba083720efc136aedb40c5fa0d9eaf2)
@@ -9,15 +9,15 @@
   <!ENTITY llvm-download-http "&llvm-url;/llvm-&llvm-version;.src.tar.xz">
   <!ENTITY llvm-download-ftp  " ">
-  <!ENTITY llvm-md5sum        "c465413aa9ab18837f40cc5750d39a33">
-  <!ENTITY llvm-size          "54 MB">
-  <!ENTITY llvm-buildsize     "4.0 GB (938 MB installed; add 17 GB for tests and 308 MB for documentation)">
+  <!ENTITY llvm-md5sum        "c77db4c71e1eb267358204dffe2c6e10">
+  <!ENTITY llvm-size          "50 MB">
+  <!ENTITY llvm-buildsize     "2.7 GB (848 MB installed; add 18.3 GB for tests and 308 MB for documentation)">
   <!ENTITY llvm-time          "24 SBU (Using parallelism=4; add 22 SBU for tests)">
 
   <!ENTITY clang-download-http "&llvm-url;/clang-&llvm-version;.src.tar.xz">
-  <!ENTITY clang-md5sum        "d38fd3897a0fd6dc396c973ba08662aa">
-  <!ENTITY clang-size          "20 MB">
+  <!ENTITY clang-md5sum        "a6d0141e50b48f5e60c682277dac83b4">
+  <!ENTITY clang-size          "18 MB">
 
   <!ENTITY compiler-rt-download-http "&llvm-url;/compiler-rt-&llvm-version;.src.tar.xz">
-  <!ENTITY compiler-rt-md5sum        "5f0633ec762fed4f1e2c450b3654caa6">
+  <!ENTITY compiler-rt-md5sum        "12e6777354f0121cbe73ef13342a9302">
   <!ENTITY compiler-rt-size          "2.3 MB">
 
@@ -26,7 +26,9 @@
 
   <!ENTITY cmake-llvm-download-http "&sources-anduin-http;/llvm/llvm-cmake-&llvm-version;.src.tar.xz">
-  <!ENTITY cmake-llvm-md5sum         "b2103df1421f7bcc271fcacec27a24bb">
-  <!ENTITY cmake-llvm-size           "12 KB">
-
+  <!ENTITY cmake-llvm-md5sum         "c3647d253f67ce255e1aba014e528f5b">
+  <!ENTITY cmake-llvm-size           "6.8 KB">
+
+  <!-- Kept in here for the 15.0.6 revert since it isn't used in instructions
+       and should simplify upgrading again. -->
   <!ENTITY llvm-3rdparty-download-http "&sources-anduin-http;/llvm/llvm-third-party-&llvm-version;.src.tar.xz">
   <!ENTITY llvm-3rdparty-md5sum        "d51ad18774cb513b725d0945c667efb3">
@@ -129,4 +131,5 @@
     </itemizedlist>
 
+    <!-- LLVM-15.0.6 revert: Keep for when we use 16 again.
     <para>
       <emphasis role="strong">Third-party dependencies for LLVM build system</emphasis>
@@ -149,5 +152,5 @@
       </listitem>
     </itemizedlist>
-
+    -->
 
     <bridgehead renderas="sect3">Recommended Download</bridgehead>
@@ -236,4 +239,16 @@
 
     <para>
+      Starting with version 15.0.0, an additional tarball,
+      <filename>llvm-cmake-&llvm-version;.src.tar.xz</filename> is needed.
+      Upstream expects it extracted at the same level as the
+      <filename>llvm-&llvm-version;.src.tar.xz</filename> tarball, and the
+      extracted directory renamed to
+      <filename class="directory">cmake</filename>. Extract it and
+      modify the build system to avoid creating a directory outside of the
+      <filename>llvm-&llvm-version;.src</filename> hierarchy:
+    </para>
+
+    <!-- LLVM-15 revert: Delete the above text when upgrading.
+    <para>
       Two additional tarballs
       <filename>llvm-cmake-&llvm-version;.src.tar.xz</filename> and
@@ -249,5 +264,12 @@
       <filename>llvm-&llvm-version;.src</filename> hierarchy:
     </para>
-
+    -->
+
+<screen><userinput>tar -xf ../llvm-cmake-&llvm-version;.src.tar.xz &amp;&amp;
+sed '/LLVM_COMMON_CMAKE_UTILS/s@../cmake@cmake-&llvm-version;.src@' \
+    -i CMakeLists.txt</userinput></screen>
+
+<!-- LLVM-15 revert: Uncomment this and delete the above commands when
+     upgrading back to LLVM-16.
 <screen><userinput>tar -xf ../llvm-cmake-&llvm-version;.src.tar.xz                              &amp;&amp;
 tar -xf ../llvm-third-party-&llvm-version;.src.tar.xz                        &amp;&amp;
@@ -256,4 +278,5 @@
 sed '/LLVM_THIRD_PARTY_DIR/s@../third-party@third-party-&llvm-version;.src@' \
     -i cmake/modules/HandleLLVMOptions.cmake</userinput></screen>
+-->
 
     <para>
@@ -291,4 +314,6 @@
 <screen><userinput remap="pre">patch -Np2 -d tools/clang &lt;../clang-&llvm-version;-enable_default_ssp-1.patch</userinput></screen>
 
+
+<!-- LLVM-15 revert: Uncomment this when going back to LLVM-16.
     <para>
       If you have downloaded <application>compiler-rt</application>,
@@ -299,4 +324,5 @@
 <screen><userinput remap="pre">sed 's/clang_dfsan/&amp; -fno-stack-protector/' \
     -i projects/compiler-rt/test/dfsan/origin_unaligned_memtrans.c</userinput></screen>
+-->
 
     <para>
Index: introduction/welcome/changelog.xml
===================================================================
--- introduction/welcome/changelog.xml	(revision 0f8922e088c1b809ae2dad4acdc2ea6ac2512b31)
+++ introduction/welcome/changelog.xml	(revision 218e13ce4ba083720efc136aedb40c5fa0d9eaf2)
@@ -39,4 +39,17 @@
     </listitem>
     -->
+   <listitem>
+     <para>March 25th, 2023</para>
+     <itemizedlist>
+       <listitem>
+         <para>[renodr] - Revert back to LLVM-15. Still leaves page
+         modifications for LLVM-16 in place, just commented to make
+         upgrading back to LLVM-16 easier. The revert is due to
+         LLVM bugs leading to miscompilations in Thunderbird and Firefox.
+         Fixes <ulink url="&blfs-ticket-root;17859">#17859</ulink>.</para>
+       </listitem>
+     </itemizedlist>
+   </listitem>
+
    <listitem>
      <para>Match 24th, 2023</para>
Index: packages.ent
===================================================================
--- packages.ent	(revision 0f8922e088c1b809ae2dad4acdc2ea6ac2512b31)
+++ packages.ent	(revision 218e13ce4ba083720efc136aedb40c5fa0d9eaf2)
@@ -319,6 +319,6 @@
 <!ENTITY guile-version                "3.0.9">
 <!ENTITY librep-version               "0.92.7">
-<!ENTITY llvm-maj-version             "16">
-<!ENTITY llvm-point-version           "0">
+<!ENTITY llvm-maj-version             "15">
+<!ENTITY llvm-point-version           "7">
 <!ENTITY llvm-version                 "&llvm-maj-version;.0.&llvm-point-version;">
 <!ENTITY lua-version                  "5.4.4">
