Skip to content

[OpenMP] Remove LLVM_ENABLE_PROJECTS=openmp build mode#176950

Merged
Meinersbur merged 2 commits intollvm:mainfrom
Meinersbur:openmp_remove-LLVM_ENABLE_PROJECTS-build_3
Jan 30, 2026
Merged

[OpenMP] Remove LLVM_ENABLE_PROJECTS=openmp build mode#176950
Meinersbur merged 2 commits intollvm:mainfrom
Meinersbur:openmp_remove-LLVM_ENABLE_PROJECTS-build_3

Conversation

@Meinersbur
Copy link
Member

@Meinersbur Meinersbur commented Jan 20, 2026

Reapply #152189 and #174963 which were reverted because it broke publish-sphinx-docs and publish-doxygen-docs.

The build mode has been deprecated in #136314 and was supposed to be removed in the LLVM 21 release (#136314).

OpenMP currently supports 4 build modes:

  • cmake <llvm-project>/llvm -DLLVM_ENABLE_PROJECTS=openmp
  • cmake <llvm-project>/llvm -DLLVM_ENABLE_RUNTIMES=openmp (bootstrapping build)
  • cmake <llvm-project>/openmp (standalone build)
  • cmake <llvm-project>/runtimes -DLLVM_ENABLE_RUNTIMES=openmp (runtimes default1/standalone2 build)

Each build mode increased the maintanance overhead since all build modes must continue working and user confusion when there do not (see #151117, #174126, #154117, ...). Let's finally remove it.

The LLVM_ENABLE_RUNTIMES system currently does not support building doxygen. Landing this PR will wait to add support in llvm-project (#176948) and llvm-zorg.

Footnotes

  1. According to https://libcxx.llvm.org/VendorDocumentation.html#the-default-build

  2. According to https://github.com/llvm/llvm-project/blob/main/runtimes/CMakeLists.txt#L14

Meinersbur added a commit that referenced this pull request Jan 21, 2026
Hoist handling of Doxygen into the top-level cmake/ directory so it can
be shared between LLVM and RUNTIMES and a default/standalone runtimes
build can support building Doxygen documentation as well.

The openmp subproject currently supports doxygen documentation using an
`LLVM_ENABLE_PROJECTS=openmp` build, but not with
`LLVM_ENABLE_RUNTIMES=openmp` because of this missing boilerplate code
in the runtimes build. This is a step towards removing the
`LLVM_ENABLE_PROJECTS=openmp` build mode which was deprecated (#124014)
and already scheduled to be removed in LLVM 21 (#136314). Eventual
removal is planned with #176950.

Hoisting CMake code for shared use with runtimes has been done before in
e.g. #84641, 7017e6c,
44e3365,
7017e6c

---------

Co-authored-by: Petr Hosek <phosek@google.com>
Harrish92 pushed a commit to Harrish92/llvm-project that referenced this pull request Jan 23, 2026
Hoist handling of Doxygen into the top-level cmake/ directory so it can
be shared between LLVM and RUNTIMES and a default/standalone runtimes
build can support building Doxygen documentation as well.

The openmp subproject currently supports doxygen documentation using an
`LLVM_ENABLE_PROJECTS=openmp` build, but not with
`LLVM_ENABLE_RUNTIMES=openmp` because of this missing boilerplate code
in the runtimes build. This is a step towards removing the
`LLVM_ENABLE_PROJECTS=openmp` build mode which was deprecated (llvm#124014)
and already scheduled to be removed in LLVM 21 (llvm#136314). Eventual
removal is planned with llvm#176950.

Hoisting CMake code for shared use with runtimes has been done before in
e.g. llvm#84641, 7017e6c,
44e3365,
7017e6c

---------

Co-authored-by: Petr Hosek <phosek@google.com>
Harrish92 pushed a commit to Harrish92/llvm-project that referenced this pull request Jan 24, 2026
Hoist handling of Doxygen into the top-level cmake/ directory so it can
be shared between LLVM and RUNTIMES and a default/standalone runtimes
build can support building Doxygen documentation as well.

The openmp subproject currently supports doxygen documentation using an
`LLVM_ENABLE_PROJECTS=openmp` build, but not with
`LLVM_ENABLE_RUNTIMES=openmp` because of this missing boilerplate code
in the runtimes build. This is a step towards removing the
`LLVM_ENABLE_PROJECTS=openmp` build mode which was deprecated (llvm#124014)
and already scheduled to be removed in LLVM 21 (llvm#136314). Eventual
removal is planned with llvm#176950.

Hoisting CMake code for shared use with runtimes has been done before in
e.g. llvm#84641, 7017e6c,
44e3365,
7017e6c

---------

Co-authored-by: Petr Hosek <phosek@google.com>
@Meinersbur Meinersbur marked this pull request as ready for review January 29, 2026 16:07
@llvmbot llvmbot added clang:static analyzer flang Flang issues not falling into any other category github:workflow openmp:libomp OpenMP host runtime flang-rt labels Jan 29, 2026
@Meinersbur
Copy link
Member Author

The buildbot publish-doxygen-docs failure has been addressed (llvm/llvm-zorg@ed6884d)

@llvmbot
Copy link
Member

llvmbot commented Jan 29, 2026

@llvm/pr-subscribers-github-workflow

@llvm/pr-subscribers-clang-static-analyzer-1

Author: Michael Kruse (Meinersbur)

Changes

Reapply #152189 and #174963 which were reverted because it broke publish-sphinx-docs and publish-doxygen-docs.

The build mode has been deprecated in #136314 and was supposed to be removed in the LLVM 21 release (#136314).

OpenMP currently supports 4 build modes:

  • cmake &lt;llvm-project&gt;/llvm -DLLVM_ENABLE_PROJECTS=openmp
  • cmake &lt;llvm-project&gt;/llvm -DLLVM_ENABLE_RUNTIMES=openmp (bootstrapping build)
  • cmake &lt;llvm-project&gt;/openmp (standalone build)
  • cmake &lt;llvm-project&gt;/runtimes -DLLVM_ENABLE_RUNTIMES=openmp (runtimes default1/standalone2 build)

Each build mode increased the maintanance overhead since all build modes must continue working and user confusion when there do not (see #151117, #174126, #154117, ...). Let's finally remove it.

The LLVM_ENABLE_RUNTIMES system currently does not support building doxygen. Landing this PR will wait to add support in llvm-project (#176948) and llvm-zorg.


Full diff: https://github.com/llvm/llvm-project/pull/176950.diff

7 Files Affected:

  • (modified) .github/workflows/docs.yml (+2-2)
  • (modified) clang/utils/analyzer/entrypoint.py (+2-2)
  • (modified) flang-rt/README.md (+2-2)
  • (modified) flang/tools/f18/CMakeLists.txt (+2-17)
  • (modified) llvm/CMakeLists.txt (+10-13)
  • (modified) llvm/runtimes/CMakeLists.txt (-7)
  • (modified) openmp/docs/ReleaseNotes.rst (+1)
diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml
index 1b1f027be1a7e..11a453b84418e 100644
--- a/.github/workflows/docs.yml
+++ b/.github/workflows/docs.yml
@@ -186,10 +186,10 @@ jobs:
           steps.docs-changed-subprojects.outputs.openmp_any_changed == 'true' ||
           steps.docs-changed-subprojects.outputs.workflow_any_changed == 'true'
         run: |
-          cmake -B openmp-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;openmp" -DLLVM_ENABLE_SPHINX=ON ./llvm
+          cmake -B openmp-build -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_RUNTIMES="openmp" -DLLVM_ENABLE_SPHINX=ON -DLLVM_INCLUDE_TESTS=OFF ./runtimes
           TZ=UTC ninja -C openmp-build docs-openmp-html
           mkdir built-docs/openmp
-          cp -r openmp-build/docs/* built-docs/openmp/
+          cp -r openmp-build/openmp/docs/* built-docs/openmp/
       - name: Build Polly docs
         if: |
           steps.docs-changed-subprojects.outputs.polly_any_changed == 'true' ||
diff --git a/clang/utils/analyzer/entrypoint.py b/clang/utils/analyzer/entrypoint.py
index c8dfc1a9f2ed8..20390d62374b8 100644
--- a/clang/utils/analyzer/entrypoint.py
+++ b/clang/utils/analyzer/entrypoint.py
@@ -53,8 +53,8 @@ def is_cmake_needed():
 CMAKE_COMMAND = (
     "cmake -G Ninja -DCMAKE_BUILD_TYPE=Release "
     "-DCMAKE_INSTALL_PREFIX=/analyzer -DLLVM_TARGETS_TO_BUILD=X86 "
-    '-DLLVM_ENABLE_PROJECTS="clang;openmp" -DLLVM_BUILD_RUNTIME=OFF '
-    "-DCLANG_ENABLE_STATIC_ANALYZER=ON"
+    '-DLLVM_ENABLE_PROJECTS="clang" -DLLVM_ENABLE_RUNTIMES="openmp" '
+    "-DLLVM_BUILD_RUNTIME=OFF -DCLANG_ENABLE_STATIC_ANALYZER=ON"
 )
 
 
diff --git a/flang-rt/README.md b/flang-rt/README.md
index 4fe66a85a269c..eecb7b8cbfdfd 100644
--- a/flang-rt/README.md
+++ b/flang-rt/README.md
@@ -58,8 +58,8 @@ not provide all C-ABI functionality (such as Windows).
 cmake -S <path-to-llvm-project-source>/llvm     \
   -GNinja                                       \
   -DCMAKE_BUILD_TYPE=Release                    \
-  -DLLVM_ENABLE_PROJECTS="clang;flang;openmp"   \
-  -DLLVM_ENABLE_RUNTIMES="compiler-rt;flang-rt" \
+  -DLLVM_ENABLE_PROJECTS="clang;flang"   \
+  -DLLVM_ENABLE_RUNTIMES="compiler-rt;flang-rt;openmp" \
   ...
 ```
 
diff --git a/flang/tools/f18/CMakeLists.txt b/flang/tools/f18/CMakeLists.txt
index 58ea782ce213e..ffd92f033840b 100644
--- a/flang/tools/f18/CMakeLists.txt
+++ b/flang/tools/f18/CMakeLists.txt
@@ -135,18 +135,7 @@ if (NOT CMAKE_CROSSCOMPILING)
   # Special case for omp_lib.mod, because its source comes from openmp/runtime/src/include.
   # It also produces two module files: omp_lib.mod and omp_lib_kinds.mod.  Compile these
   # files only if OpenMP support has been configured.
-  if (LLVM_TOOL_OPENMP_BUILD)
-    message(STATUS "OpenMP runtime support enabled via LLVM_ENABLE_PROJECTS, building omp_lib.mod")
-    set(base ${FLANG_INTRINSIC_MODULES_DIR}/omp_lib)
-    add_custom_command(OUTPUT ${base}.mod ${base}_kinds.mod
-      COMMAND ${CMAKE_COMMAND} -E make_directory ${FLANG_INTRINSIC_MODULES_DIR}
-      COMMAND flang -cpp -fsyntax-only ${opts} -module-dir ${FLANG_INTRINSIC_MODULES_DIR}
-        ${CMAKE_BINARY_DIR}/projects/openmp/runtime/src/omp_lib.F90
-      DEPENDS flang ${FLANG_INTRINSIC_MODULES_DIR}/iso_c_binding.mod ${CMAKE_BINARY_DIR}/projects/openmp/runtime/src/omp_lib.F90 ${depends}
-    )
-    list(APPEND MODULE_FILES ${base}.mod ${base}_kinds.mod)
-    install(FILES ${base}.mod ${base}_kinds.mod DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/flang" COMPONENT flang-module-interfaces)
-  elseif ("openmp" IN_LIST LLVM_ENABLE_RUNTIMES)
+  if ("openmp" IN_LIST LLVM_ENABLE_RUNTIMES)
     message(STATUS "OpenMP runtime support enabled via LLVM_ENABLE_RUNTIMES, assuming omp_lib.mod is built there")
   else()
     message(WARNING "Not building omp_lib.mod, no OpenMP runtime in either LLVM_ENABLE_PROJECTS or LLVM_ENABLE_RUNTIMES")
@@ -160,11 +149,7 @@ set_target_properties(module_files PROPERTIES FOLDER "Flang/Resources")
 
 # TODO Move this to a more suitable location
 # Copy the generated omp_lib.h header file, if OpenMP support has been configured.
-if (LLVM_TOOL_OPENMP_BUILD)
-  message(STATUS "OpenMP runtime support enabled via LLVM_ENABLE_PROJECTS, building omp_lib.h")
-  file(COPY ${CMAKE_BINARY_DIR}/projects/openmp/runtime/src/omp_lib.h DESTINATION "${CMAKE_BINARY_DIR}/include/flang/OpenMP/" FILE_PERMISSIONS OWNER_READ OWNER_WRITE)
-  install(FILES ${CMAKE_BINARY_DIR}/include/flang/OpenMP/omp_lib.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/flang/OpenMP")
-elseif ("openmp" IN_LIST LLVM_ENABLE_RUNTIMES)
+if ("openmp" IN_LIST LLVM_ENABLE_RUNTIMES)
   message(STATUS "OpenMP runtime support enabled via LLVM_ENABLE_RUNTIMES, assuming omp_lib.h is built there")
 else()
   message(STATUS "Not copying omp_lib.h, no OpenMP runtime in either LLVM_ENABLE_PROJECTS or LLVM_ENABLE_RUNTIMES")
diff --git a/llvm/CMakeLists.txt b/llvm/CMakeLists.txt
index bfc60bdae8c4f..be028c1dab1f5 100644
--- a/llvm/CMakeLists.txt
+++ b/llvm/CMakeLists.txt
@@ -104,12 +104,7 @@ endif()
 # This allows an easy way of setting up a build directory for llvm and another
 # one for llvm+clang+... using the same sources.
 # These projects will be included when "all" is included in LLVM_ENABLE_PROJECTS.
-set(LLVM_ALL_PROJECTS "bolt;clang;clang-tools-extra;compiler-rt;cross-project-tests;libclc;lld;lldb;mlir;openmp;polly")
-if ("${CMAKE_SYSTEM_NAME}" MATCHES "AIX")
-  # Disallow 'openmp' as a LLVM PROJECT on AIX as the supported way is to use
-  # LLVM_ENABLE_RUNTIMES.
-  list(REMOVE_ITEM LLVM_ALL_PROJECTS openmp)
-endif()
+set(LLVM_ALL_PROJECTS "bolt;clang;clang-tools-extra;compiler-rt;cross-project-tests;libclc;lld;lldb;mlir;polly")
 
 # The "libc" project, which is not part of "all" projects, could be included in
 # LLVM_ENABLE_PROJECTS.  It is preferred to include "libc" in
@@ -126,6 +121,15 @@ if( LLVM_ENABLE_PROJECTS STREQUAL "all" )
   set( LLVM_ENABLE_PROJECTS ${LLVM_ALL_PROJECTS})
 endif()
 
+if ("openmp" IN_LIST LLVM_ENABLE_PROJECTS)
+  message(FATAL_ERROR "
+Support for the LLVM_ENABLE_PROJECTS=openmp build mode has been removed. Please switch to the bootstrapping build
+    cmake -S <llvm-project>/llvm -B build -DLLVM_ENABLE_PROJECTS=clang -DLLVM_ENABLE_RUNTIMES=openmp
+or to the runtimes default build
+    cmake -S <llvm-project>/runtimes -B build -DLLVM_ENABLE_RUNTIMES=openmp
+")
+endif()
+
 foreach(proj ${LLVM_ENABLE_PROJECTS})
   if (NOT proj STREQUAL "llvm" AND NOT "${proj}" IN_LIST LLVM_KNOWN_PROJECTS)
      MESSAGE(FATAL_ERROR "${proj} isn't a known project: ${LLVM_KNOWN_PROJECTS}. Did you mean to enable it as a runtime in LLVM_ENABLE_RUNTIMES?")
@@ -195,13 +199,6 @@ if ("offload" IN_LIST LLVM_ENABLE_PROJECTS)
     "https://openmp.llvm.org/ for building the runtimes.")
 endif()
 
-if ("openmp" IN_LIST LLVM_ENABLE_PROJECTS)
-  message(WARNING "Using LLVM_ENABLE_PROJECTS=openmp is deprecated now, and will "
-    "become a fatal error in a future release.  Please use "
-    "-DLLVM_ENABLE_RUNTIMES=openmp or see the instructions at "
-    "https://openmp.llvm.org/ for building the runtimes.")
-endif()
-
 if ("flang-rt" IN_LIST LLVM_ENABLE_RUNTIMES)
   if (NOT "flang" IN_LIST LLVM_ENABLE_PROJECTS)
     message(FATAL_ERROR "Flang is not enabled, but is required for the Flang-RT runtime")
diff --git a/llvm/runtimes/CMakeLists.txt b/llvm/runtimes/CMakeLists.txt
index ed1fc94168f03..f0ef353a2c66c 100644
--- a/llvm/runtimes/CMakeLists.txt
+++ b/llvm/runtimes/CMakeLists.txt
@@ -700,13 +700,6 @@ if(build_runtimes)
     # We need to add the runtimes as a dependency because compiler-rt can be
     # built as part of runtimes and we need the profile runtime for PGO
     add_dependencies(clang-bootstrap-deps runtimes)
-    # The bootstrap build will attempt to configure the offload runtime
-    # before the openmp project which will error out due to failing to
-    # find libomp.so. We must add omp as a dependency before runtimes
-    # are configured.
-    if("openmp" IN_LIST LLVM_ENABLE_PROJECTS AND "offload" IN_LIST LLVM_ENABLE_RUNTIMES)
-      add_dependencies(clang-bootstrap-deps omp)
-    endif()
   endif()
 
   if(LLVM_INCLUDE_TESTS)
diff --git a/openmp/docs/ReleaseNotes.rst b/openmp/docs/ReleaseNotes.rst
index 6c1a46caf1d81..b99947540acd7 100644
--- a/openmp/docs/ReleaseNotes.rst
+++ b/openmp/docs/ReleaseNotes.rst
@@ -27,3 +27,4 @@ Device Runtime
   always build support for AMDGPU and NVPTX targets.
 - Updated the offloading entry format but retained backwards compatibility with
   the old format.
+- The LLVM_ENABLE_PROJECTS=openmp build mode has been removed.
\ No newline at end of file

Footnotes

  1. According to https://libcxx.llvm.org/VendorDocumentation.html#the-default-build

  2. According to https://github.com/llvm/llvm-project/blob/main/runtimes/CMakeLists.txt#L14

Copy link
Contributor

@boomanaiden154 boomanaiden154 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

@Meinersbur Meinersbur merged commit c15853e into llvm:main Jan 30, 2026
20 checks passed
@llvm-ci
Copy link

llvm-ci commented Jan 30, 2026

LLVM Buildbot has detected a new failure on builder clang-m68k-linux-cross running on suse-gary-m68k-cross while building .github,clang,flang-rt,flang,llvm,openmp at step 5 "ninja check 1".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/27/builds/22390

Here is the relevant piece of the build log for the reference
Step 5 (ninja check 1) failure: stage 1 checked (failure)
...
[78/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ExpectedTypeTest.cpp.o
[79/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/PathMappingTests.cpp.o
[80/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/RIFFTests.cpp.o
[81/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ProjectAwareIndexTests.cpp.o
[82/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/LSPBinderTests.cpp.o
[83/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ClangdTests.cpp.o
[84/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/BackgroundIndexTests.cpp.o
[85/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/HeaderSourceSwitchTests.cpp.o
[86/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/FindTargetTests.cpp.o
[87/1258] Building CXX object tools/clang/tools/extra/include-cleaner/unittests/CMakeFiles/ClangIncludeCleanerTests.dir/FindHeadersTest.cpp.o
FAILED: tools/clang/tools/extra/include-cleaner/unittests/CMakeFiles/ClangIncludeCleanerTests.dir/FindHeadersTest.cpp.o 
/usr/bin/c++ -DLLVM_BUILD_STATIC -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/tools/clang/tools/extra/include-cleaner/unittests -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang-tools-extra/include-cleaner/unittests -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/include -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/tools/clang/include -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/include -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/include -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang-tools-extra/include-cleaner/include -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang-tools-extra/include-cleaner/unittests/../lib -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/third-party/unittest/googletest/include -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/third-party/unittest/googlemock/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-dangling-reference -Wno-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -fno-common -Woverloaded-virtual -O3 -DNDEBUG -std=c++17 -UNDEBUG -Wno-variadic-macros -fno-exceptions -funwind-tables -fno-rtti -Wno-suggest-override -MD -MT tools/clang/tools/extra/include-cleaner/unittests/CMakeFiles/ClangIncludeCleanerTests.dir/FindHeadersTest.cpp.o -MF tools/clang/tools/extra/include-cleaner/unittests/CMakeFiles/ClangIncludeCleanerTests.dir/FindHeadersTest.cpp.o.d -o tools/clang/tools/extra/include-cleaner/unittests/CMakeFiles/ClangIncludeCleanerTests.dir/FindHeadersTest.cpp.o -c /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang-tools-extra/include-cleaner/unittests/FindHeadersTest.cpp
c++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
[88/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/InsertionPointTests.cpp.o
[89/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/IndexActionTests.cpp.o
[90/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/PrerequisiteModulesTest.cpp.o
[91/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SymbolDocumentationTests.cpp.o
[92/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/FindSymbolsTests.cpp.o
[93/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/IncludeCleanerTests.cpp.o
[94/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/FileIndexTests.cpp.o
[95/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/HeadersTests.cpp.o
[96/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/IndexTests.cpp.o
[97/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SemanticHighlightingTests.cpp.o
[98/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/QualityTests.cpp.o
[99/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/InlayHintTests.cpp.o
[100/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SemanticSelectionTests.cpp.o
[101/1258] Building CXX object tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SelectionTests.cpp.o
In file included from /usr/include/c++/14/string:51,
                 from /usr/include/c++/14/bits/locale_classes.h:40,
                 from /usr/include/c++/14/bits/ios_base.h:41,
                 from /usr/include/c++/14/streambuf:43,
                 from /usr/include/c++/14/bits/streambuf_iterator.h:35,
                 from /usr/include/c++/14/iterator:66,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/include/llvm/ADT/ADL.h:13,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/include/llvm/ADT/iterator_range.h:21,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/include/llvm/ADT/StringRef.h:14,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang-tools-extra/clangd/URI.h:12,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang-tools-extra/clangd/Protocol.h:26,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang-tools-extra/clangd/unittests/Annotations.h:15,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang-tools-extra/clangd/unittests/SelectionTests.cpp:8:
In static member function ‘static _Up* std::__copy_move<_IsMove, true, std::random_access_iterator_tag>::__copy_m(_Tp*, _Tp*, _Up*) [with _Tp = const clang::clangd::SelectionTree::Node* const; _Up = const clang::clangd::SelectionTree::Node*; bool _IsMove = false]’,
    inlined from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove = false; _II = const clang::clangd::SelectionTree::Node* const*; _OI = const clang::clangd::SelectionTree::Node**]’ at /usr/include/c++/14/bits/stl_algobase.h:521:30,
    inlined from ‘_OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove = false; _II = const clang::clangd::SelectionTree::Node* const*; _OI = const clang::clangd::SelectionTree::Node**]’ at /usr/include/c++/14/bits/stl_algobase.h:548:42,
    inlined from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove = false; _II = const clang::clangd::SelectionTree::Node* const*; _OI = const clang::clangd::SelectionTree::Node**]’ at /usr/include/c++/14/bits/stl_algobase.h:555:31,
    inlined from ‘_OI std::copy(_II, _II, _OI) [with _II = const clang::clangd::SelectionTree::Node* const*; _OI = const clang::clangd::SelectionTree::Node**]’ at /usr/include/c++/14/bits/stl_algobase.h:651:7,
    inlined from ‘static _ForwardIterator std::__uninitialized_copy<true>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = const clang::clangd::SelectionTree::Node* const*; _ForwardIterator = const clang::clangd::SelectionTree::Node**]’ at /usr/include/c++/14/bits/stl_uninitialized.h:147:27,
    inlined from ‘_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = const clang::clangd::SelectionTree::Node* const*; _ForwardIterator = const clang::clangd::SelectionTree::Node**]’ at /usr/include/c++/14/bits/stl_uninitialized.h:185:15,
    inlined from ‘_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, allocator<_Tp>&) [with _InputIterator = const clang::clangd::SelectionTree::Node* const*; _ForwardIterator = const clang::clangd::SelectionTree::Node**; _Tp = const clang::clangd::SelectionTree::Node*]’ at /usr/include/c++/14/bits/stl_uninitialized.h:373:37,

@llvm-ci
Copy link

llvm-ci commented Jan 30, 2026

LLVM Buildbot has detected a new failure on builder flang-x86_64-windows running on minipc-ryzen-win while building .github,clang,flang-rt,flang,llvm,openmp at step 7 "test-build-unified-tree-check-flang".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/166/builds/6291

Here is the relevant piece of the build log for the reference
Step 7 (test-build-unified-tree-check-flang) failure: test (failure)
******************** TEST 'Flang :: Lower/taskloop-reduction.f90' FAILED ********************
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
bbc -emit-hlfir -fopenmp -fopenmp-version=50 -o - C:\buildbot\flang-x86_64-windows\llvm-project\flang\test\Lower\taskloop-reduction.f90 2>&1 | c:\buildbot\flang-x86_64-windows\build\bin\filecheck.exe C:\buildbot\flang-x86_64-windows\llvm-project\flang\test\Lower\taskloop-reduction.f90
# executed command: bbc -emit-hlfir -fopenmp -fopenmp-version=50 -o - 'C:\buildbot\flang-x86_64-windows\llvm-project\flang\test\Lower\taskloop-reduction.f90'
# executed command: 'c:\buildbot\flang-x86_64-windows\build\bin\filecheck.exe' 'C:\buildbot\flang-x86_64-windows\llvm-project\flang\test\Lower\taskloop-reduction.f90'
# RUN: at line 2
c:\buildbot\flang-x86_64-windows\build\bin\flang.exe -fc1 -emit-hlfir -fopenmp -fopenmp-version=50 -o - C:\buildbot\flang-x86_64-windows\llvm-project\flang\test\Lower\taskloop-reduction.f90 2>&1 | c:\buildbot\flang-x86_64-windows\build\bin\filecheck.exe C:\buildbot\flang-x86_64-windows\llvm-project\flang\test\Lower\taskloop-reduction.f90
# executed command: 'c:\buildbot\flang-x86_64-windows\build\bin\flang.exe' -fc1 -emit-hlfir -fopenmp -fopenmp-version=50 -o - 'C:\buildbot\flang-x86_64-windows\llvm-project\flang\test\Lower\taskloop-reduction.f90'
# note: command had no output on stdout or stderr
# error: command failed with exit status: 0xc0000005
# executed command: 'c:\buildbot\flang-x86_64-windows\build\bin\filecheck.exe' 'C:\buildbot\flang-x86_64-windows\llvm-project\flang\test\Lower\taskloop-reduction.f90'
# .---command stderr------------
# | C:\buildbot\flang-x86_64-windows\llvm-project\flang\test\Lower\taskloop-reduction.f90:4:16: error: CHECK-LABEL: expected string not found in input
# | ! CHECK-LABEL: omp.private
# |                ^
# | <stdin>:1:1: note: scanning from here
# | warning: OpenMP support for version 50 in flang is still incomplete
# | ^
# | <stdin>:1:61: note: possible intended match here
# | warning: OpenMP support for version 50 in flang is still incomplete
# |                                                             ^
# | 
# | Input file: <stdin>
# | Check file: C:\buildbot\flang-x86_64-windows\llvm-project\flang\test\Lower\taskloop-reduction.f90
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            1: warning: OpenMP support for version 50 in flang is still incomplete 
# | label:4'0     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# | label:4'1                                                                 ?        possible intended match
# |            2: PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug. 
# | label:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            3: Stack dump: 
# | label:4'0     ~~~~~~~~~~~~
# |            4: 0. Program arguments: c:\\buildbot\\flang-x86_64-windows\\build\\bin\\flang.exe -fc1 -emit-hlfir -fopenmp -fopenmp-version=50 -o - C:\\buildbot\\flang-x86_64-windows\\llvm-project\\flang\\test\\Lower\\taskloop-reduction.f90 
# | label:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            5: Exception Code: 0xC0000005 
# | label:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            6:  #0 0x00007ff757077d3d mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\buildbot\flang-x86_64-windows\build\bin\flang.exe+0x3f77d3d) 
# | label:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            .
# |            .
# |            .
# | >>>>>>
...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

clang:static analyzer flang Flang issues not falling into any other category flang-rt github:workflow openmp:libomp OpenMP host runtime

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants