[llvm-branch-commits] [libc] [libcxx] [libcxxabi] [libunwind] [llvm] [pstl] Revise IDE folder structure (PR #89755)
https://github.com/Meinersbur reopened https://github.com/llvm/llvm-project/pull/89755 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [polly] [polly] Revise IDE folder structure (PR #89752)
https://github.com/Meinersbur reopened https://github.com/llvm/llvm-project/pull/89752 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [openmp] [openmp] Revise IDE folder structure (PR #89750)
https://github.com/Meinersbur reopened https://github.com/llvm/llvm-project/pull/89750 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [openmp] [openmp] Revise IDE folder structure (PR #89750)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89750 >From c3edd260d7a917e120d02253083eb472e0985844 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:27:20 +0200 Subject: [PATCH 1/4] [openmp] Revise IDE folder structure --- offload/unittests/CMakeLists.txt| 2 +- openmp/CMakeLists.txt | 1 + openmp/docs/CMakeLists.txt | 1 + openmp/runtime/cmake/LibompMicroTests.cmake | 5 + openmp/runtime/src/CMakeLists.txt | 7 +++ 5 files changed, 15 insertions(+), 1 deletion(-) diff --git a/offload/unittests/CMakeLists.txt b/offload/unittests/CMakeLists.txt index 73c87b708d25f..c818a3d985ba3 100644 --- a/offload/unittests/CMakeLists.txt +++ b/offload/unittests/CMakeLists.txt @@ -1,5 +1,5 @@ add_custom_target(LibomptUnitTests) -set_target_properties(LibomptUnitTests PROPERTIES FOLDER "Tests/UnitTests") +set_target_properties(LibomptUnitTests PROPERTIES FOLDER "Tests") function(add_libompt_unittest test_dirname) add_unittest(LibomptUnitTests ${test_dirname} ${ARGN}) diff --git a/openmp/CMakeLists.txt b/openmp/CMakeLists.txt index 95f2425db3ee6..daef2b77fd4dd 100644 --- a/openmp/CMakeLists.txt +++ b/openmp/CMakeLists.txt @@ -1,4 +1,5 @@ cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "OpenMP") set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) diff --git a/openmp/docs/CMakeLists.txt b/openmp/docs/CMakeLists.txt index 1e4be31a6f609..4cb9fb486ff34 100644 --- a/openmp/docs/CMakeLists.txt +++ b/openmp/docs/CMakeLists.txt @@ -78,6 +78,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating openmp doxygen documentation." VERBATIM) + set_target_properties(doxygen-openmp PROPERTIES FOLDER "OpenMP/Docs") if (LLVM_BUILD_DOCS) add_dependencies(doxygen doxygen-openmp) diff --git a/openmp/runtime/cmake/LibompMicroTests.cmake b/openmp/runtime/cmake/LibompMicroTests.cmake index e8cc218af0c29..6fcde37259931 100644 --- a/openmp/runtime/cmake/LibompMicroTests.cmake +++ b/openmp/runtime/cmake/LibompMicroTests.cmake @@ -126,6 +126,7 @@ macro(libomp_test_touch_recipe test_touch_dir) endmacro() libomp_append(libomp_test_touch_env "KMP_VERSION=1") add_custom_target(libomp-test-touch DEPENDS ${libomp_test_touch_targets}) +set_target_properties(libomp-test-touch PROPERTIES FOLDER "OpenMP/Tests") if(WIN32) libomp_test_touch_recipe(test-touch-mt) libomp_test_touch_recipe(test-touch-md) @@ -135,6 +136,7 @@ endif() # test-relo add_custom_target(libomp-test-relo DEPENDS test-relo/.success) +set_target_properties(libomp-test-relo PROPERTIES FOLDER "OpenMP/Tests") add_custom_command( OUTPUT test-relo/.success test-relo/readelf.log COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-relo @@ -146,6 +148,7 @@ add_custom_command( # test-execstack add_custom_target(libomp-test-execstack DEPENDS test-execstack/.success) +set_target_properties(libomp-test-execstack PROPERTIES FOLDER "OpenMP/Tests") add_custom_command( OUTPUT test-execstack/.success COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-execstack @@ -157,6 +160,7 @@ add_custom_command( # test-instr add_custom_target(libomp-test-instr DEPENDS test-instr/.success) +set_target_properties(libomp-test-instr PROPERTIES FOLDER "OpenMP/Tests") add_custom_command( OUTPUT test-instr/.success COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-instr @@ -168,6 +172,7 @@ add_custom_command( # test-deps add_custom_target(libomp-test-deps DEPENDS test-deps/.success) +set_target_properties(libomp-test-deps PROPERTIES FOLDER "OpenMP/Tests") set(libomp_expected_library_deps) if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") set(libomp_expected_library_deps libc.so.7 libthr.so.3 libm.so.5) diff --git a/openmp/runtime/src/CMakeLists.txt b/openmp/runtime/src/CMakeLists.txt index a2468d04e60af..963f14bb7ffc2 100644 --- a/openmp/runtime/src/CMakeLists.txt +++ b/openmp/runtime/src/CMakeLists.txt @@ -171,6 +171,7 @@ libomp_get_libflags(LIBOMP_CONFIGURED_LIBFLAGS) # Build libomp library. Add LLVMSupport dependency if building in-tree with libomptarget profiling enabled. if(OPENMP_STANDALONE_BUILD OR (NOT OPENMP_ENABLE_LIBOMP_PROFILING)) add_library(omp ${LIBOMP_LIBRARY_KIND} ${LIBOMP_SOURCE_FILES}) + set_property(TARGET omp PROPERTY FOLDER "OpenMP/Libraries") # Linking command will include libraries in LIBOMP_CONFIGURED_LIBFLAGS target_link_libraries(omp ${LIBOMP_CONFIGURED_LIBFLAGS} ${LIBOMP_DL_LIBS}) else() @@ -252,6 +253,7 @@ set(LIBOMPTARGET_OPENMP_HOST_RTL_FOLDER "${LIBOMP_LIBRARY_DIR}" CACHE STRING # Create *.inc before compiling any sources # objects depend on : .inc files add_custom_target(libomp-needed-headers DEPENDS kmp_i18n_id.inc kmp_i18n_default.inc)
[llvm-branch-commits] [mlir] [mlir] Revise IDE folder structure (PR #89749)
https://github.com/Meinersbur reopened https://github.com/llvm/llvm-project/pull/89749 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [lldb] [lldb] Revise IDE folder structure (PR #89748)
https://github.com/Meinersbur reopened https://github.com/llvm/llvm-project/pull/89748 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [lld] [lld] Revise IDE folder structure (PR #89747)
https://github.com/Meinersbur reopened https://github.com/llvm/llvm-project/pull/89747 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [libclc] [libclc] Revise IDE folder structure (PR #89746)
https://github.com/Meinersbur reopened https://github.com/llvm/llvm-project/pull/89746 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [libclc] [libclc] Revise IDE folder structure (PR #89746)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89746 >From 61ffad5a99c584ddb05a32b5d5bf54ecbf6c774b Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 21 May 2024 22:32:39 +0200 Subject: [PATCH 1/2] [libclc] Revise IDE folder structure --- libclc/CMakeLists.txt| 13 - libclc/cmake/modules/AddLibclc.cmake | 5 - 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/libclc/CMakeLists.txt b/libclc/CMakeLists.txt index 5ce1795243085..bacc0d83ba211 100644 --- a/libclc/CMakeLists.txt +++ b/libclc/CMakeLists.txt @@ -1,6 +1,7 @@ cmake_minimum_required(VERSION 3.20.0) project( libclc VERSION 0.2.0 LANGUAGES CXX C) +set(LLVM_SUBPROJECT_TITLE "libclc") set(CMAKE_CXX_STANDARD 17) @@ -54,7 +55,10 @@ if( LIBCLC_STANDALONE_BUILD OR CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DI foreach( tool IN ITEMS clang llvm-as llvm-link opt ) find_program( LLVM_TOOL_${tool} ${tool} PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH ) add_executable( libclc::${tool} IMPORTED GLOBAL ) - set_target_properties( libclc::${tool} PROPERTIES IMPORTED_LOCATION ${LLVM_TOOL_${tool}} ) + set_target_properties( libclc::${tool} PROPERTIES +IMPORTED_LOCATION ${LLVM_TOOL_${tool}} +FOLDER "libclc/Tools" + ) endforeach() endif() else() @@ -168,6 +172,7 @@ if( LIBCLC_STANDALONE_BUILD ) else() add_llvm_utility( prepare_builtins utils/prepare-builtins.cpp ) endif() +set_target_properties( prepare_builtins PROPERTIES FOLDER "libclc/Codegenning") target_compile_definitions( prepare_builtins PRIVATE ${LLVM_VERSION_DEFINE} ) # These were not properly reported in early LLVM and we don't need them target_compile_options( prepare_builtins PRIVATE -fno-rtti -fno-exceptions ) @@ -225,12 +230,14 @@ add_custom_command( COMMAND ${Python3_EXECUTABLE} ${script_loc} > convert.cl DEPENDS ${script_loc} ) add_custom_target( "generate_convert.cl" DEPENDS convert.cl ) +set_target_properties( "generate_convert.cl" PROPERTIES FOLDER "libclc/Codegenning" ) add_custom_command( OUTPUT clspv-convert.cl COMMAND ${Python3_EXECUTABLE} ${script_loc} --clspv > clspv-convert.cl DEPENDS ${script_loc} ) add_custom_target( "clspv-generate_convert.cl" DEPENDS clspv-convert.cl ) +set_target_properties( "clspv-generate_convert.cl" PROPERTIES FOLDER "libclc/Codegenning" ) enable_testing() @@ -394,6 +401,7 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} ) DEPENDS ${builtins_link_lib} ) add_custom_target( "prepare-${spv_suffix}" ALL DEPENDS "${spv_suffix}" ) + set_target_properties( "prepare-${spv_suffix}" PROPERTIES FOLDER "libclc/Codegenning" ) install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${spv_suffix} DESTINATION "${CMAKE_INSTALL_DATADIR}/clc" ) else() @@ -410,6 +418,7 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} ) ) set_target_properties( ${builtins_opt_lib_tgt} PROPERTIES TARGET_FILE ${builtins_opt_lib_tgt}.bc + FOLDER "libclc/Device IR/Opt" ) set( builtins_opt_lib $ ) @@ -420,6 +429,7 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} ) COMMAND prepare_builtins -o ${obj_suffix} ${builtins_opt_lib} DEPENDS ${builtins_opt_lib} prepare_builtins ) add_custom_target( prepare-${obj_suffix} ALL DEPENDS ${obj_suffix} ) + set_target_properties( "prepare-${obj_suffix}" PROPERTIES FOLDER "libclc/Device IR/Prepare" ) # nvptx-- targets don't include workitem builtins if( NOT clang_triple MATCHES ".*ptx.*--$" ) @@ -434,6 +444,7 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} ) add_custom_target( ${alias_suffix} ALL COMMAND ${CMAKE_COMMAND} -E create_symlink ${obj_suffix} ${alias_suffix} DEPENDS prepare-${obj_suffix} ) +set_target_properties( "${alias_suffix}" PROPERTIES FOLDER "libclc/Device IR/Aliases" ) install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${alias_suffix} DESTINATION "${CMAKE_INSTALL_DATADIR}/clc" ) endforeach( a ) endif() diff --git a/libclc/cmake/modules/AddLibclc.cmake b/libclc/cmake/modules/AddLibclc.cmake index 7f4620fa6a21d..0276c145ff20a 100644 --- a/libclc/cmake/modules/AddLibclc.cmake +++ b/libclc/cmake/modules/AddLibclc.cmake @@ -110,7 +110,10 @@ function(link_bc) ) add_custom_target( ${ARG_TARGET} ALL DEPENDS ${ARG_TARGET}.bc ) - set_target_properties( ${ARG_TARGET} PROPERTIES TARGET_FILE ${ARG_TARGET}.bc ) + set_target_properties( ${ARG_TARGET} PROPERTIES +TARGET_FILE ${ARG_TARGET}.bc +FOLDER "libclc/Device IR/Linking" + ) endfunction() # Decomposes and returns variables based on a libclc triple and architecture >From 015bf75aa9277c516b229e3c7412470da70b2d8b Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Sat, 25 May 2024 13:36:12 +0200 Subject: [PATCH 2/2] Address review from #89750 --- libclc/CMakeLists.txt | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff
[llvm-branch-commits] [flang] [flang] Revise IDE folder structure (PR #89745)
https://github.com/Meinersbur reopened https://github.com/llvm/llvm-project/pull/89745 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [compiler-rt] [compiler-rt] Revise IDE folder structure (PR #89753)
https://github.com/Meinersbur reopened https://github.com/llvm/llvm-project/pull/89753 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [lldb] [llvm] [mlir] [clang-tools-extra] Revise IDE folder structure (PR #89744)
Valentin Clement =?utf-8?b?KOODkOODrOODsw==?=,"A. Jiang" ,Dave Lee ,Vassil Vassilev ,Konstantin Zhuravlyov ,Matt Arsenault ,Jordan Rupprecht ,Zaara Syeda ,Vlad Serebrennikov ,Matt Arsenault ,Valentin Clement =?utf-8?b?KOODkOODrOODsw==?=,Matt Arsenault ,Valentin Clement =?utf-8?q?,?�ron Ballman ,Matt Arsenault ,lolloz98 ,Edwin Vane ,Matt Arsenault ,Aaron Ballman ,Aaron Ballman ,Aaron Ballman , Martin =?utf-8?q?Storsjö?= ,Thurston Dang ,Valentin Clement =?utf-8?b?KOODkOODrOODsw==?=,Craig Topper ,Vlad Serebrennikov ,Igor Kudrin ,shaw young <58664393+shawbyo...@users.noreply.github.com>,Amir Ayupov ,Thurston Dang ,Andrew Browne ,Vlad Serebrennikov ,Louis Dionne ,Heejin Ahn ,Petr Hosek ,"Nick Desaulniers (paternity leave)",Thomas Fransham ,Damien L-G ,Michael Jones ,Heewon Cho ,Matheus Izvekov ,Heewon Cho ,Thomas Fransham ,LLVM GN Syncbot ,Evgenii Stepanov ,Joachim Meyer <5982050+fodina...@users.noreply.github.com>,Connor Sughrue <55301806+cpsugh...@users.noreply.github.com>,Jason Molenda ,csstormq ,Amir Ayupov ,Yuxuan Chen ,Wu Yingcong ,Owen Pan ,Amir Ayupov ,Amir Ayupov ,Heejin Ahn ,Shilei Tian ,Mingming Liu ,Pengcheng Wang ,csstormq ,Nikita Popov ,Carlos Alberto Enciso ,AtariDreams ,Nikita Popov ,Ivan Murashko ,Christian Ulmann ,Nikita Popov ,Sander de Smalen ,Felix Schneider ,Yingwei Zheng ,Sven van Haastregt ,Mateusz Zych ,ZhangYin ,Vlad Serebrennikov ,Florian Hahn ,Mark de Wever ,Matt Arsenault ,Kiran Chandramohan ,Momchil Velikov ,Shengchen Kan ,Lukacma ,Timm =?utf-8?q?Bäder?= ,Abid Qadeer ,Simon Pilgrim ,Simon Pilgrim ,Simon Pilgrim , Timm =?utf-8?q?Bäder?= , =?utf-8?q?Balázs_Kéri?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= ,Tom Eccles ,Carlos Alberto Enciso ,Paul Walker ,Paul Walker ,Paul Walker ,pranavm-nvidia <49246958+pranavm-nvi...@users.noreply.github.com>, Timm =?utf-8?q?Bäder?= ,LLVM GN Syncbot ,Simon Pilgrim , Timm =?utf-8?q?Bäder?= ,Florian Hahn ,Yingwei Zheng ,Krzysztof Parzyszek ,Michael Maitland ,Michael Kruse ,Nikita Popov ,Simon Pilgrim ,Janek van Oirschot , =?utf-8?q?Donát?= Nagy ,Tom Eccles ,Simon Pilgrim , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= ,Rin Dobrescu ,Corentin Ferry ,Alexey Karyakin ,Ye Luo ,Yingwei Zheng ,Mikhail Goncharov ,YunQiang Su ,Emma Pilkington ,Mikhail Goncharov ,Matt Arsenault ,Mikhail Goncharov ,Jay Foad ,Alexey Bataev ,Matheus Izvekov ,Thomas Symalla <5754458+tsyma...@users.noreply.github.com>,Han-Kuan Chen ,Timm =?utf-8?q?Bäder?= ,Yingwei Zheng ,Yingwei Zheng ,Balazs Benics ,Tom Eccles ,Krzysztof Parzyszek ,Adrian Prantl , Timm =?utf-8?q?Bäder?= ,Sirraide ,Joseph Huber ,Adam Siemieniuk ,Amir Ayupov ,shaw young <58664393+shawbyo...@users.noreply.github.com>,Amir Ayupov ,Sirraide ,Tyler Lanphear ,Heejin Ahn ,Mingming Liu ,Craig Topper ,Kiran Chandramohan ,Kazu Hirata ,Aaron Ballman ,Yingwei Zheng ,Kevin Frei =?utf-8?q?,?�ron Ballman ,Amir Ayupov ,Thomas Fransham ,Alexey Bataev ,Aaron Ballman ,shaw young <58664393+shawbyo...@users.noreply.github.com>,Joseph Huber ,Zaara Syeda ,Sirraide ,Kunwar Grover ,Sirraide ,Daniel Thornburgh ,David Green ,Jay Foad ,Amir Ayupov =?utf-8?q?,?=Matheus Izvekov ,dpalermo ,Louis Dionne ,Boian Petkantchin ,Miguel Saldivar ,Philip Reames ,Chinmay Deshpande ,Amir Ayupov ,Daniel Thornburgh ,Amir Ayupov ,Amir Ayupov ,Kiran Chandramohan ,David Blaikie , Valentin Clement =?utf-8?b?KOODkOODrOODsw==?=, Valentin Clement =?utf-8?b?KOODkOODrOODsw==?=,Jeremy Kun ,David Blaikie ,Fangrui Song ,Fangrui Song ,Jessica Clarke ,Amir Ayupov =?utf-8?q?,?=Kazu Hirata ,yronglin =?utf-8?q?,?=Charlie Barto ,Ayke ,Freddy Ye ,Freddy Ye ,Kazu Hirata ,Mingming Liu ,NAKAMURA Takumi ,Matt Arsenault ,Johannes Doerfert ,Nikita Popov ,Nikita Popov ,Guray Ozen ,Timm =?utf-8?q?Bäder?= ,Yeting Kuo <46629943+yeti...@users.noreply.github.com>,Matt Arsenault ,Vlad Serebrennikov ,Dhruv Chawla ,Anchu Rajendran S , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= ,Med Ismail Bennani ,LLVM GN Syncbot ,Med Ismail Bennani ,Mubashar Ahmad ,Alexandros Lamprineas ,Pavel Labath ,csstormq ,Tom Eccles ,Sander de Smalen ,Timm =?utf-8?q?Bäder?= ,Nikita Popov ,Timm =?utf-8?q?Bäder?= ,Dmitry Vasilyev ,Dmitry Vasilyev ,Simon Pilgrim ,Guray Ozen ,Chuanqi Xu ,Pierre van Houtryve ,Chuanqi Xu ,LLVM GN Syncbot , =?utf-8?q?Balázs_Kéri?= ,LLVM GN Syncbot ,Ramkumar Ramachandra , Timm =?utf-8?q?Bäder?= ,Tom Eccles ,Simon Pilgrim ,Jan Patrick Lehr ,Jay Foad ,Hari Limaye ,Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= ,Abid Qadeer ,2LoS ,Matheus Izvekov ,David Spickett ,Vlad Serebrennikov ,Joseph Huber ,Nikita Popov ,Matt Arsenault ,Lukacma ,Lukacma ,Matt Arsenault ,Lukacma ,Lukacma ,Vlad Serebrennikov ,YunQiang Su , Thorsten =?utf-8?q?Schütt?= ,Chuanqi Xu ,Louis Dionne ,Shilei Tian ,Joseph Huber ,Vlad Serebrennikov ,Phoebe Wang ,erichkeane ,Simon Pilgrim ,yronglin ,Vitaly Buka ,yronglin ,cor3ntin ,Fred Grim ,Michael Maitland
[llvm-branch-commits] [clang] [clang] Revise IDE folder structure (PR #89743)
https://github.com/Meinersbur reopened https://github.com/llvm/llvm-project/pull/89743 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [BOLT] Revise IDE folder structure (PR #89742)
https://github.com/Meinersbur reopened https://github.com/llvm/llvm-project/pull/89742 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [libclc] [libclc] Revise IDE folder structure (PR #89746)
https://github.com/Meinersbur closed https://github.com/llvm/llvm-project/pull/89746 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang-tools-extra] [clang-tools-extra] Revise IDE folder structure (PR #89744)
https://github.com/Meinersbur closed https://github.com/llvm/llvm-project/pull/89744 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [compiler-rt] [compiler-rt] Revise IDE folder structure (PR #89753)
https://github.com/Meinersbur closed https://github.com/llvm/llvm-project/pull/89753 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [openmp] [openmp] Revise IDE folder structure (PR #89750)
https://github.com/Meinersbur closed https://github.com/llvm/llvm-project/pull/89750 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [libc] [libcxx] [libcxxabi] [libunwind] [llvm] [pstl] Revise IDE folder structure (PR #89755)
https://github.com/Meinersbur closed https://github.com/llvm/llvm-project/pull/89755 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [mlir] [mlir] Revise IDE folder structure (PR #89749)
https://github.com/Meinersbur closed https://github.com/llvm/llvm-project/pull/89749 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [lldb] [lldb] Revise IDE folder structure (PR #89748)
https://github.com/Meinersbur closed https://github.com/llvm/llvm-project/pull/89748 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [polly] [polly] Revise IDE folder structure (PR #89752)
https://github.com/Meinersbur closed https://github.com/llvm/llvm-project/pull/89752 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [clang] Revise IDE folder structure (PR #89743)
https://github.com/Meinersbur closed https://github.com/llvm/llvm-project/pull/89743 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [flang] [flang] Revise IDE folder structure (PR #89745)
https://github.com/Meinersbur closed https://github.com/llvm/llvm-project/pull/89745 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [BOLT] Revise IDE folder structure (PR #89742)
https://github.com/Meinersbur closed https://github.com/llvm/llvm-project/pull/89742 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [lld] [lld] Revise IDE folder structure (PR #89747)
https://github.com/Meinersbur closed https://github.com/llvm/llvm-project/pull/89747 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [llvm] [Clang][OpenMP] Add permutation clause (PR #92030)
@@ -9861,13 +9842,19 @@ buildPreInits(ASTContext , /// Build pre-init statement for the given statements. static Stmt *buildPreInits(ASTContext , ArrayRef PreInits) { - if (PreInits.empty()) -return nullptr; - - SmallVector Stmts; - for (Stmt *S : PreInits) -appendFlattendedStmtList(Stmts, S); - return CompoundStmt::Create(Context, PreInits, FPOptionsOverride(), {}, {}); + if (!PreInits.empty()) { +SmallVector Stmts; +for (Stmt *S : PreInits) { + // Do not nest CompoundStmts. + if (auto *CS = dyn_cast(S)) { +llvm::append_range(Stmts, CS->body()); +continue; + } + Stmts.push_back(S); +} +return CompoundStmt::Create(Context, PreInits, FPOptionsOverride(), {}, {}); + } + return nullptr; Meinersbur wrote: I don't know why, but this patch contained the state before #91459's review. Fixed. https://github.com/llvm/llvm-project/pull/92030 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [openmp] [openmp] Revise IDE folder structure (PR #89750)
@@ -292,6 +294,7 @@ if(WIN32) set(LIBOMP_IMP_LIB_TARGET omp) set(LIBOMP_GENERATED_DEF_FILE ${LIBOMP_LIB_NAME}.def) add_custom_target(libomp-needed-def-file DEPENDS ${LIBOMP_GENERATED_DEF_FILE}) + set_target_properties(libomp-needed-def-file PROPERTIES FOLDER "OpenMP/Codegenning") Meinersbur wrote: For LLVM/Clang/MLIR the folder is already named ["Tablegenning"](https://github.com/llvm/llvm-project/blob/31f1590e4fb324c43dc36199587c453e27b6f6fa/llvm/cmake/modules/TableGen.cmake#L170) since forever. Since tablegen is not involved here, I found "Codegenning" more appropriate. https://github.com/llvm/llvm-project/pull/89750 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [openmp] [openmp] Revise IDE folder structure (PR #89750)
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/89750 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [llvm] [Clang][OpenMP] Add permutation clause (PR #92030)
@@ -5779,6 +5779,80 @@ class OMPReverseDirective final : public OMPLoopTransformationDirective { } }; +/// Represents the '#pragma omp interchange' loop transformation directive. +/// +/// \code{c} +/// #pragma omp interchange +/// for (int i = 0; i < m; ++i) +/// for (int j = 0; j < n; ++j) +/// .. +/// \endcode +class OMPInterchangeDirective final : public OMPLoopTransformationDirective { Meinersbur wrote: Interchange construct extracted out into #93022 https://github.com/llvm/llvm-project/pull/92030 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [llvm] [Clang][OpenMP] Add permutation clause (PR #92030)
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/92030 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [llvm] [Clang][OpenMP] Add permutation clause (PR #92030)
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/92030 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [llvm] [Clang][OpenMP] Add interchange directive (PR #92030)
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/92030 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [llvm] [openmp] [Clang][OpenMP] Add interchange directive (PR #93022)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/93022 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [polly] [polly] Revise IDE folder structure (PR #89752)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89752 >From a85a17723d76371ccc8feb245c455d6aaf2c297f Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:19:16 +0200 Subject: [PATCH 1/3] [polly] Revise IDE folder structure --- polly/CMakeLists.txt | 5 +++-- polly/cmake/polly_macros.cmake | 2 +- polly/docs/CMakeLists.txt | 1 + polly/lib/CMakeLists.txt | 4 +--- polly/test/CMakeLists.txt | 7 ++- polly/unittests/CMakeLists.txt | 2 +- 6 files changed, 9 insertions(+), 12 deletions(-) diff --git a/polly/CMakeLists.txt b/polly/CMakeLists.txt index 5d0f2cd7f00ec..a0d1ab49e7837 100644 --- a/polly/CMakeLists.txt +++ b/polly/CMakeLists.txt @@ -4,6 +4,7 @@ if (NOT DEFINED LLVM_MAIN_SRC_DIR) cmake_minimum_required(VERSION 3.20.0) set(POLLY_STANDALONE_BUILD TRUE) endif() +set(LLVM_SUBPROJECT_TITLE "Polly") # Must go below project(..) include(GNUInstallDirs) @@ -157,8 +158,8 @@ foreach (file IN LISTS files) endforeach () add_custom_target(polly-check-format DEPENDS ${check_format_depends}) -set_target_properties(polly-check-format PROPERTIES FOLDER "Polly") +set_target_properties(polly-check-format PROPERTIES FOLDER "Polly/Meta") add_custom_target(polly-update-format DEPENDS ${update_format_depends}) -set_target_properties(polly-update-format PROPERTIES FOLDER "Polly") +set_target_properties(polly-update-format PROPERTIES FOLDER "Polly/Meta") diff --git a/polly/cmake/polly_macros.cmake b/polly/cmake/polly_macros.cmake index df541eeccc4cb..b1bd1e1b03cda 100644 --- a/polly/cmake/polly_macros.cmake +++ b/polly/cmake/polly_macros.cmake @@ -21,7 +21,7 @@ macro(add_polly_library name) set(libkind) endif() add_library( ${name} ${libkind} ${srcs} ) - set_target_properties(${name} PROPERTIES FOLDER "Polly") + set_target_properties(${name} PROPERTIES FOLDER "Polly/Libraries") if( LLVM_COMMON_DEPENDS ) add_dependencies( ${name} ${LLVM_COMMON_DEPENDS} ) diff --git a/polly/docs/CMakeLists.txt b/polly/docs/CMakeLists.txt index a1ef5ce5277f7..2bd16e53c542f 100644 --- a/polly/docs/CMakeLists.txt +++ b/polly/docs/CMakeLists.txt @@ -77,6 +77,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating polly doxygen documentation." VERBATIM) + set_target_properties(doxygen-polly PROPERTIES FOLDER "Polly/Docs") if (LLVM_BUILD_DOCS) add_dependencies(doxygen doxygen-polly) diff --git a/polly/lib/CMakeLists.txt b/polly/lib/CMakeLists.txt index 4557878e515e6..f18cdcd09cfca 100644 --- a/polly/lib/CMakeLists.txt +++ b/polly/lib/CMakeLists.txt @@ -92,8 +92,6 @@ add_llvm_pass_plugin(Polly LINK_COMPONENTS ${POLLY_COMPONENTS} ) -set_target_properties(obj.Polly PROPERTIES FOLDER "Polly") -set_target_properties(Polly PROPERTIES FOLDER "Polly") if (MSVC_IDE OR XCODE) # Configure source groups for Polly source files. By default, in the IDE there @@ -120,7 +118,7 @@ if (WIN32 OR CYGWIN OR NOT LLVM_ENABLE_PIC) # Add dummy target, either because loadable modules are not supported # as on Windows or because PIC code has been disabled add_custom_target(LLVMPolly) - set_target_properties(LLVMPolly PROPERTIES FOLDER "Polly") + set_target_properties(LLVMPolly PROPERTIES FOLDER "Polly/Meta") else () add_polly_loadable_module(LLVMPolly Plugin/Polly.cpp diff --git a/polly/test/CMakeLists.txt b/polly/test/CMakeLists.txt index 81cee34a780d6..338c7dbfa1158 100644 --- a/polly/test/CMakeLists.txt +++ b/polly/test/CMakeLists.txt @@ -1,7 +1,7 @@ set(LLVM_SHLIBEXT "${CMAKE_SHARED_MODULE_SUFFIX}") add_custom_target(check-polly) -set_target_properties(check-polly PROPERTIES FOLDER "Polly") +set_target_properties(check-polly PROPERTIES FOLDER "Polly/Tests") if(NOT LLVM_MAIN_SRC_DIR) find_program(LLVM_OPT NAMES opt HINTS ${LLVM_TOOLS_BINARY_DIR}) @@ -64,7 +64,6 @@ add_lit_testsuite(check-polly-tests "Running polly regression tests" polly_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg DEPENDS ${POLLY_TEST_DEPS} ) -set_target_properties(check-polly-tests PROPERTIES FOLDER "Polly") add_dependencies(check-polly check-polly-tests) configure_lit_site_cfg( @@ -80,7 +79,6 @@ if (POLLY_GTEST_AVAIL) EXCLUDE_FROM_CHECK_ALL DEPENDS PollyUnitTests ) - set_target_properties(check-polly-unittests PROPERTIES FOLDER "Polly") endif () configure_file( @@ -94,7 +92,6 @@ if (POLLY_BUNDLED_ISL) EXCLUDE_FROM_CHECK_ALL DEPENDS polly-isl-test ) - set_target_properties(check-polly-isl PROPERTIES FOLDER "Polly") endif (POLLY_BUNDLED_ISL) # Run polly-check-format as part of polly-check only if we are compiling with @@ -114,5 +111,5 @@ configure_file( # Add a legacy target spelling: polly-test add_custom_target(polly-test) -set_target_properties(polly-test PROPERTIES FOLDER "Polly") +set_target_properties(polly-test
[llvm-branch-commits] [mlir] [mlir] Revise IDE folder structure (PR #89749)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89749 >From 82bac5ccd7d6d2b4e146ed4e383a8484e735606e Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:08:54 +0200 Subject: [PATCH 1/3] [mlir] Revise IDE folder structure --- mlir/CMakeLists.txt| 9 ++--- mlir/cmake/modules/AddMLIR.cmake | 5 +++-- mlir/docs/CMakeLists.txt | 1 + mlir/examples/toy/CMakeLists.txt | 2 +- mlir/examples/transform/CMakeLists.txt | 1 + mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt | 2 ++ mlir/lib/TableGen/CMakeLists.txt | 1 + mlir/test/CAPI/CMakeLists.txt | 2 ++ mlir/test/CMakeLists.txt | 2 +- mlir/tools/mlir-linalg-ods-gen/CMakeLists.txt | 1 + mlir/tools/mlir-pdll/CMakeLists.txt| 1 - mlir/tools/mlir-tblgen/CMakeLists.txt | 1 - mlir/unittests/CMakeLists.txt | 2 -- 13 files changed, 19 insertions(+), 11 deletions(-) diff --git a/mlir/CMakeLists.txt b/mlir/CMakeLists.txt index 5c4301af040b4..0ff6658f831f5 100644 --- a/mlir/CMakeLists.txt +++ b/mlir/CMakeLists.txt @@ -1,5 +1,6 @@ # MLIR project. cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "MLIR") if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) @@ -96,12 +97,13 @@ endif() # tablegen'd targets. # mlir-generic-headers are dialect-independent. add_custom_target(mlir-generic-headers) -set_target_properties(mlir-generic-headers PROPERTIES FOLDER "Misc") +set_target_properties(mlir-generic-headers PROPERTIES FOLDER "MLIR/Resources") # mlir-headers may be dialect-dependent. add_custom_target(mlir-headers) -set_target_properties(mlir-headers PROPERTIES FOLDER "Misc") +set_target_properties(mlir-headers PROPERTIES FOLDER "MLIR/Resources") add_dependencies(mlir-headers mlir-generic-headers) add_custom_target(mlir-doc) +set_target_properties(mlir-doc PROPERTIES FOLDER "MLIR/Docs") # Only enable execution engine if the native target is available. if(${LLVM_NATIVE_ARCH} IN_LIST LLVM_TARGETS_TO_BUILD) @@ -198,6 +200,7 @@ add_subdirectory(lib/CAPI) if (MLIR_INCLUDE_TESTS) add_definitions(-DMLIR_INCLUDE_TESTS) add_custom_target(MLIRUnitTests) + set_target_properties(MLIRUnitTests PROPERTIES FOLDER "MLIR/Tests") if (EXISTS ${LLVM_THIRD_PARTY_DIR}/unittest/googletest/include/gtest/gtest.h) add_subdirectory(unittests) else() @@ -258,7 +261,7 @@ endif() # Custom target to install all mlir libraries add_custom_target(mlir-libraries) -set_target_properties(mlir-libraries PROPERTIES FOLDER "Misc") +set_target_properties(mlir-libraries PROPERTIES FOLDER "MLIR/Install") if (NOT LLVM_ENABLE_IDE) add_llvm_install_targets(install-mlir-libraries diff --git a/mlir/cmake/modules/AddMLIR.cmake b/mlir/cmake/modules/AddMLIR.cmake index 1d2ed748bc2f1..5a9a5b799763a 100644 --- a/mlir/cmake/modules/AddMLIR.cmake +++ b/mlir/cmake/modules/AddMLIR.cmake @@ -173,6 +173,7 @@ function(add_mlir_doc doc_filename output_file output_directory command) DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${output_file}.md) add_custom_target(${output_file}DocGen DEPENDS ${GEN_DOC_FILE}) add_dependencies(mlir-doc ${output_file}DocGen) + set_target_properties(${output_file}DocGen PROPERTIES FOLDER "MLIR/Docs") endfunction() # Sets ${srcs} to contain the list of additional headers for the target. Extra @@ -252,7 +253,7 @@ function(add_mlir_example_library name) list(APPEND ARG_DEPENDS mlir-generic-headers) llvm_add_library(${name} ${LIBTYPE} ${ARG_UNPARSED_ARGUMENTS} ${srcs} DEPENDS ${ARG_DEPENDS} LINK_COMPONENTS ${ARG_LINK_COMPONENTS} LINK_LIBS ${ARG_LINK_LIBS}) - set_target_properties(${name} PROPERTIES FOLDER "Examples") + set_target_properties(${name} PROPERTIES FOLDER "MLIR/Examples") if (LLVM_BUILD_EXAMPLES AND NOT ${ARG_DISABLE_INSTALL}) add_mlir_library_install(${name}) else() @@ -329,7 +330,7 @@ function(add_mlir_library name) # Add empty "phony" target add_custom_target(${name}) endif() - set_target_properties(${name} PROPERTIES FOLDER "MLIR libraries") + set_target_properties(${name} PROPERTIES FOLDER "MLIR/Libraries") # Setup aggregate. if(ARG_ENABLE_AGGREGATION) diff --git a/mlir/docs/CMakeLists.txt b/mlir/docs/CMakeLists.txt index 36cd3f9983881..43192569847cf 100644 --- a/mlir/docs/CMakeLists.txt +++ b/mlir/docs/CMakeLists.txt @@ -78,6 +78,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating mlir doxygen documentation." VERBATIM) + set_target_properties(doxygen-mlir PROPERTIES FOLDER "MLIR/Docs") if (LLVM_BUILD_DOCS) add_dependencies(doxygen doxygen-mlir) diff --git a/mlir/examples/toy/CMakeLists.txt
[llvm-branch-commits] [compiler-rt] [compiler-rt] Revise IDE folder structure (PR #89753)
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/89753 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [compiler-rt] [compiler-rt] Revise IDE folder structure (PR #89753)
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/89753 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [compiler-rt] [compiler-rt] Revise IDE folder structure (PR #89753)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89753 >From 470842dbe4668a22349624e69d1d3decf00b1da6 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:15:38 +0200 Subject: [PATCH 1/2] [compiler-rt] Revise IDE folder structure --- compiler-rt/CMakeLists.txt| 3 ++- compiler-rt/cmake/Modules/AddCompilerRT.cmake | 19 ++- .../cmake/Modules/CompilerRTDarwinUtils.cmake | 4 ++-- .../cmake/Modules/CompilerRTUtils.cmake | 4 ++-- compiler-rt/cmake/base-config-ix.cmake| 4 ++-- compiler-rt/include/CMakeLists.txt| 2 +- compiler-rt/lib/asan/tests/CMakeLists.txt | 8 compiler-rt/lib/builtins/CMakeLists.txt | 2 +- compiler-rt/lib/fuzzer/tests/CMakeLists.txt | 6 +++--- compiler-rt/lib/gwp_asan/tests/CMakeLists.txt | 4 ++-- .../lib/interception/tests/CMakeLists.txt | 4 ++-- compiler-rt/lib/memprof/tests/CMakeLists.txt | 4 ++-- compiler-rt/lib/orc/tests/CMakeLists.txt | 6 +++--- .../lib/sanitizer_common/tests/CMakeLists.txt | 4 ++-- compiler-rt/lib/stats/CMakeLists.txt | 2 +- compiler-rt/lib/tsan/CMakeLists.txt | 2 +- compiler-rt/lib/tsan/dd/CMakeLists.txt| 2 +- compiler-rt/lib/tsan/rtl/CMakeLists.txt | 2 +- compiler-rt/lib/xray/tests/CMakeLists.txt | 4 ++-- compiler-rt/test/CMakeLists.txt | 1 + compiler-rt/test/asan/CMakeLists.txt | 3 --- compiler-rt/test/asan_abi/CMakeLists.txt | 1 - compiler-rt/test/builtins/CMakeLists.txt | 1 - compiler-rt/test/cfi/CMakeLists.txt | 3 --- compiler-rt/test/dfsan/CMakeLists.txt | 1 - compiler-rt/test/fuzzer/CMakeLists.txt| 1 - compiler-rt/test/gwp_asan/CMakeLists.txt | 1 - compiler-rt/test/hwasan/CMakeLists.txt| 2 -- compiler-rt/test/interception/CMakeLists.txt | 1 - compiler-rt/test/lsan/CMakeLists.txt | 1 - compiler-rt/test/memprof/CMakeLists.txt | 3 --- compiler-rt/test/metadata/CMakeLists.txt | 1 - compiler-rt/test/msan/CMakeLists.txt | 1 - compiler-rt/test/orc/CMakeLists.txt | 1 - compiler-rt/test/profile/CMakeLists.txt | 1 - compiler-rt/test/safestack/CMakeLists.txt | 1 - .../test/sanitizer_common/CMakeLists.txt | 2 -- .../test/shadowcallstack/CMakeLists.txt | 1 - compiler-rt/test/tsan/CMakeLists.txt | 1 - compiler-rt/test/ubsan/CMakeLists.txt | 2 -- compiler-rt/test/ubsan_minimal/CMakeLists.txt | 1 - compiler-rt/test/xray/CMakeLists.txt | 1 - 42 files changed, 45 insertions(+), 73 deletions(-) diff --git a/compiler-rt/CMakeLists.txt b/compiler-rt/CMakeLists.txt index 6ce451e3cac2e..65063e0057bbc 100644 --- a/compiler-rt/CMakeLists.txt +++ b/compiler-rt/CMakeLists.txt @@ -4,6 +4,7 @@ # based on the ability of the host toolchain to target various platforms. cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "Compiler-RT") if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) @@ -90,7 +91,7 @@ if (COMPILER_RT_STANDALONE_BUILD) if (TARGET intrinsics_gen) # Loading the llvm config causes this target to be imported so place it # under the appropriate folder in an IDE. -set_target_properties(intrinsics_gen PROPERTIES FOLDER "Compiler-RT Misc") +set_target_properties(intrinsics_gen PROPERTIES FOLDER "LLVM/Tablegenning") endif() find_package(Python3 COMPONENTS Interpreter) diff --git a/compiler-rt/cmake/Modules/AddCompilerRT.cmake b/compiler-rt/cmake/Modules/AddCompilerRT.cmake index 75b34c8e27e00..9be8ef1b362d8 100644 --- a/compiler-rt/cmake/Modules/AddCompilerRT.cmake +++ b/compiler-rt/cmake/Modules/AddCompilerRT.cmake @@ -91,7 +91,7 @@ function(add_compiler_rt_object_libraries name) ${extra_cflags_${libname}} ${target_flags}) set_property(TARGET ${libname} APPEND PROPERTY COMPILE_DEFINITIONS ${LIB_DEFS}) -set_target_properties(${libname} PROPERTIES FOLDER "Compiler-RT Libraries") +set_target_properties(${libname} PROPERTIES FOLDER "Compiler-RT/Libraries") if(APPLE) set_target_properties(${libname} PROPERTIES OSX_ARCHITECTURES "${LIB_ARCHS_${libname}}") @@ -110,7 +110,7 @@ endmacro() function(add_compiler_rt_component name) add_custom_target(${name}) - set_target_properties(${name} PROPERTIES FOLDER "Compiler-RT Misc") + set_target_properties(${name} PROPERTIES FOLDER "Compiler-RT/Components") if(COMMAND runtime_register_component) runtime_register_component(${name}) endif() @@ -293,7 +293,7 @@ function(add_compiler_rt_runtime name type) if(NOT TARGET ${LIB_PARENT_TARGET}) add_custom_target(${LIB_PARENT_TARGET}) set_target_properties(${LIB_PARENT_TARGET} PROPERTIES -FOLDER "Compiler-RT Misc") +FOLDER "Compiler-RT/Runtimes")
[llvm-branch-commits] [llvm] [openmp] [openmp] Revise IDE folder structure (PR #89750)
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/89750 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [openmp] [openmp] Revise IDE folder structure (PR #89750)
@@ -126,6 +126,7 @@ macro(libomp_test_touch_recipe test_touch_dir) endmacro() libomp_append(libomp_test_touch_env "KMP_VERSION=1") add_custom_target(libomp-test-touch DEPENDS ${libomp_test_touch_targets}) +set_target_properties(libomp-test-touch PROPERTIES FOLDER "OpenMP/Tests") Meinersbur wrote: * The subproject's directory name is [`openmp`](https://github.com/llvm/llvm-project/tree/main/openmp) * The [README ](https://github.com/llvm/llvm-project/blob/89c23f7683efbdf896670218be9095d57ae3e348/openmp/README.rst?plain=1#L2) calls it "LLVM OpenMP Libraries". * The website is [*openmp*.llvm.org](https://openmp.llvm.org/), and libomp is not even mentioned. Its title is "LLVM/OpenMP", I think we can drop the "LLVM" prefix within the LLVM repository. * `libompd`, `libomptarget` (formerly), `omp.h`, Archer, and ompopt documentation lives in there too, i.e. this is not the subproject for just libomp. The folder names require an IDE what display them, none of them are available for Linux. They are also not directories in the filesystem, case should not matter. I could call it "OpenMP Libraries" if that makes it clearer. https://github.com/llvm/llvm-project/pull/89750 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [BOLT] Revise IDE folder structure (PR #89742)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89742 >From 140a539c9e3248b128bdffdbc9ae5e2e8b4366c0 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:23:47 +0200 Subject: [PATCH 1/3] [bolt] Revise IDE folder structure --- bolt/CMakeLists.txt | 2 ++ bolt/cmake/modules/AddBOLT.cmake | 1 - bolt/docs/CMakeLists.txt | 1 + bolt/test/CMakeLists.txt | 3 +-- bolt/unittests/CMakeLists.txt| 2 +- 5 files changed, 5 insertions(+), 4 deletions(-) diff --git a/bolt/CMakeLists.txt b/bolt/CMakeLists.txt index cc3a70fa35e0a..26df6a4208b7a 100644 --- a/bolt/CMakeLists.txt +++ b/bolt/CMakeLists.txt @@ -1,3 +1,5 @@ +set(LLVM_SUBPROJECT_TITLE "BOLT") + include(ExternalProject) set(BOLT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) diff --git a/bolt/cmake/modules/AddBOLT.cmake b/bolt/cmake/modules/AddBOLT.cmake index 1f69b9046320a..c7ac662c6b121 100644 --- a/bolt/cmake/modules/AddBOLT.cmake +++ b/bolt/cmake/modules/AddBOLT.cmake @@ -3,7 +3,6 @@ include(LLVMDistributionSupport) macro(add_bolt_executable name) add_llvm_executable(${name} ${ARGN}) - set_target_properties(${name} PROPERTIES FOLDER "BOLT") endmacro() macro(add_bolt_tool name) diff --git a/bolt/docs/CMakeLists.txt b/bolt/docs/CMakeLists.txt index b230512fe5717..12ae852566785 100644 --- a/bolt/docs/CMakeLists.txt +++ b/bolt/docs/CMakeLists.txt @@ -79,6 +79,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating bolt doxygen documentation." VERBATIM) + set_target_properties(doxygen-bolt PROPERTIES FOLDER "BOLT/Docs") if (LLVM_BUILD_DOCS) add_dependencies(doxygen doxygen-bolt) diff --git a/bolt/test/CMakeLists.txt b/bolt/test/CMakeLists.txt index 89862fd59eb8e..d468ff984840f 100644 --- a/bolt/test/CMakeLists.txt +++ b/bolt/test/CMakeLists.txt @@ -56,7 +56,7 @@ list(APPEND BOLT_TEST_DEPS ) add_custom_target(bolt-test-depends DEPENDS ${BOLT_TEST_DEPS}) -set_target_properties(bolt-test-depends PROPERTIES FOLDER "BOLT") +set_target_properties(bolt-test-depends PROPERTIES FOLDER "BOLT/Tests") add_lit_testsuite(check-bolt "Running the BOLT regression tests" ${CMAKE_CURRENT_BINARY_DIR} @@ -64,7 +64,6 @@ add_lit_testsuite(check-bolt "Running the BOLT regression tests" DEPENDS ${BOLT_TEST_DEPS} ARGS ${BOLT_TEST_EXTRA_ARGS} ) -set_target_properties(check-bolt PROPERTIES FOLDER "BOLT") add_lit_testsuites(BOLT ${CMAKE_CURRENT_SOURCE_DIR} PARAMS ${BOLT_TEST_PARAMS} diff --git a/bolt/unittests/CMakeLists.txt b/bolt/unittests/CMakeLists.txt index 77159e92dec55..64414b83d39fe 100644 --- a/bolt/unittests/CMakeLists.txt +++ b/bolt/unittests/CMakeLists.txt @@ -1,5 +1,5 @@ add_custom_target(BoltUnitTests) -set_target_properties(BoltUnitTests PROPERTIES FOLDER "BOLT tests") +set_target_properties(BoltUnitTests PROPERTIES FOLDER "BOLT/Tests") function(add_bolt_unittest test_dirname) add_unittest(BoltUnitTests ${test_dirname} ${ARGN}) >From ad704f8babf3c065d928329bf6f663b995f7323e Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 21 May 2024 22:05:54 +0200 Subject: [PATCH 2/3] Finetune BOLT folders --- bolt/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bolt/CMakeLists.txt b/bolt/CMakeLists.txt index 26df6a4208b7a..3c1fe967d6597 100644 --- a/bolt/CMakeLists.txt +++ b/bolt/CMakeLists.txt @@ -123,7 +123,7 @@ option(BOLT_BUILD_TOOLS "Build the BOLT tools. If OFF, just generate build targets." ON) add_custom_target(bolt) -set_target_properties(bolt PROPERTIES FOLDER "BOLT") +set_target_properties(bolt PROPERTIES FOLDER "BOLT/Meta") add_llvm_install_targets(install-bolt DEPENDS bolt COMPONENT bolt) include_directories( >From 32db9e656f955cc0b6f1aecc61cb115d91cbbbce Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Wed, 22 May 2024 09:39:03 +0200 Subject: [PATCH 3/3] Use 'Metatarget' to disambiguiate from the company name --- bolt/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bolt/CMakeLists.txt b/bolt/CMakeLists.txt index 3c1fe967d6597..74907ad118d12 100644 --- a/bolt/CMakeLists.txt +++ b/bolt/CMakeLists.txt @@ -123,7 +123,7 @@ option(BOLT_BUILD_TOOLS "Build the BOLT tools. If OFF, just generate build targets." ON) add_custom_target(bolt) -set_target_properties(bolt PROPERTIES FOLDER "BOLT/Meta") +set_target_properties(bolt PROPERTIES FOLDER "BOLT/Metatargets") add_llvm_install_targets(install-bolt DEPENDS bolt COMPONENT bolt) include_directories( ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [BOLT] Revise IDE folder structure (PR #89742)
@@ -121,7 +123,7 @@ option(BOLT_BUILD_TOOLS "Build the BOLT tools. If OFF, just generate build targets." ON) add_custom_target(bolt) -set_target_properties(bolt PROPERTIES FOLDER "BOLT") +set_target_properties(bolt PROPERTIES FOLDER "BOLT/Meta") Meinersbur wrote: This is not supposed to be the company name, but meta in the sense of [self-referential](https://en.wikipedia.org/wiki/Meta_(prefix)). That is, targets that only exists to trigger the build of other targets. In this case, all of BOLT (as in `make all` if BOLT was its own build system). "Metatarget" would disambiguate the meaning. An alternative could be "[Phony](https://www.gnu.org/software/make/manual/html_node/Phony-Targets.html)". https://github.com/llvm/llvm-project/pull/89742 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [BOLT] Revise IDE folder structure (PR #89742)
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/89742 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [libc] [libcxx] [libcxxabi] [libunwind] [llvm] [pstl] Revise IDE folder structure (PR #89755)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89755 >From 0ce849c6e5455577a77f4c25d08e8ec83115a290 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:29:28 +0200 Subject: [PATCH 1/2] Revise IDE folder structure --- cross-project-tests/CMakeLists.txt | 6 +- libc/CMakeLists.txt| 1 + libcxx/CMakeLists.txt | 1 + libcxxabi/CMakeLists.txt | 1 + libunwind/CMakeLists.txt | 1 + llvm-libgcc/CMakeLists.txt | 1 + offload/CMakeLists.txt | 1 + pstl/CMakeLists.txt| 1 + runtimes/CMakeLists.txt| 1 + 9 files changed, 9 insertions(+), 5 deletions(-) diff --git a/cross-project-tests/CMakeLists.txt b/cross-project-tests/CMakeLists.txt index f7c2ca7ad83de..7f2fee48fda77 100644 --- a/cross-project-tests/CMakeLists.txt +++ b/cross-project-tests/CMakeLists.txt @@ -3,6 +3,7 @@ # The subset inside debuginfo-tests invoke clang to generate programs with # various types of debug info, and then run those programs under a debugger # such as GDB or LLDB to verify the results. +set(LLVM_SUBPROJECT_TITLE "Cross-Project") find_package(Python3 COMPONENTS Interpreter) @@ -97,8 +98,3 @@ add_lit_testsuite(check-cross-amdgpu "Running AMDGPU cross-project tests" add_lit_testsuites(CROSS_PROJECT ${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${CROSS_PROJECT_TEST_DEPS} ) - -set_target_properties(check-cross-project PROPERTIES FOLDER "Tests") -set_target_properties(check-debuginfo PROPERTIES FOLDER "Tests") -set_target_properties(check-intrinsic-headers PROPERTIES FOLDER "Tests") -set_target_properties(check-cross-amdgpu PROPERTIES FOLDER "Tests") diff --git a/libc/CMakeLists.txt b/libc/CMakeLists.txt index 175efd89d67e6..f35471a06a53e 100644 --- a/libc/CMakeLists.txt +++ b/libc/CMakeLists.txt @@ -1,4 +1,5 @@ cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "libc") # Include LLVM's cmake policies. if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) diff --git a/libcxx/CMakeLists.txt b/libcxx/CMakeLists.txt index 2977c26646cb2..d75f22ecf0222 100644 --- a/libcxx/CMakeLists.txt +++ b/libcxx/CMakeLists.txt @@ -5,6 +5,7 @@ # Setup Project #=== cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "libc++") set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake") diff --git a/libcxxabi/CMakeLists.txt b/libcxxabi/CMakeLists.txt index da998d2221dc4..f7673da25d20e 100644 --- a/libcxxabi/CMakeLists.txt +++ b/libcxxabi/CMakeLists.txt @@ -5,6 +5,7 @@ #=== cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "libc++abi") set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake") diff --git a/libunwind/CMakeLists.txt b/libunwind/CMakeLists.txt index 806d5a783ec39..2117cd9e756ef 100644 --- a/libunwind/CMakeLists.txt +++ b/libunwind/CMakeLists.txt @@ -3,6 +3,7 @@ #=== cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "libunwind") set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake") diff --git a/llvm-libgcc/CMakeLists.txt b/llvm-libgcc/CMakeLists.txt index 013c9ca2e3307..c6641ab9e3219 100644 --- a/llvm-libgcc/CMakeLists.txt +++ b/llvm-libgcc/CMakeLists.txt @@ -3,6 +3,7 @@ #=== cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "LLVM libgcc") set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake") diff --git a/offload/CMakeLists.txt b/offload/CMakeLists.txt index abc8baa0805ff..44a3d17b2e59a 100644 --- a/offload/CMakeLists.txt +++ b/offload/CMakeLists.txt @@ -11,6 +11,7 @@ ##===--===## cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "liboffload") if ("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}") set(OPENMP_STANDALONE_BUILD TRUE) diff --git a/pstl/CMakeLists.txt b/pstl/CMakeLists.txt index 255e22af9a26b..592e11d356473 100644 --- a/pstl/CMakeLists.txt +++ b/pstl/CMakeLists.txt @@ -6,6 +6,7 @@ # #===--===## cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "Parallel STL") set(PARALLELSTL_VERSION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/include/pstl/internal/pstl_config.h") file(STRINGS "${PARALLELSTL_VERSION_FILE}" PARALLELSTL_VERSION_SOURCE REGEX "#define _PSTL_VERSION .*$") diff --git a/runtimes/CMakeLists.txt b/runtimes/CMakeLists.txt index fcc59c8fa1c37..76ad8aa1f353e 100644 --- a/runtimes/CMakeLists.txt +++ b/runtimes/CMakeLists.txt @@ -9,6 +9,7 @@ include(${LLVM_COMMON_CMAKE_UTILS}/Modules/CMakePolicy.cmake
[llvm-branch-commits] [libc] [libcxx] [libcxxabi] [libunwind] [llvm] [pstl] Revise IDE folder structure (PR #89755)
@@ -9,6 +9,7 @@ include(${LLVM_COMMON_CMAKE_UTILS}/Modules/CMakePolicy.cmake include(${LLVM_COMMON_CMAKE_UTILS}/Modules/LLVMVersion.cmake) project(Runtimes C CXX ASM) +set(LLVM_SUBPROJECT_TITLE "Runtimes") Meinersbur wrote: Since LLVM is usually the top-level project everything is sorted under "LLVM" be default. I added a `LLVM_SUBPROJECT_TITLE` to all potential subprojects that are either included via `add_subdirectory` or as a stand-alone build, including this one. I just checked to see if it is actually used, and the answer is yes: At least `check-runtimes` is put into this folder when loading the solution from the `runtimes-bins` directory. I did not go through all runtime targets to ensure they are put into some folder name that makes sense like I did for the LLVM_ENABLE_PROJECTS subprojects since opening a project in the IDE from the runtimes-bin would be done only if there is a concrete problem. However, I wanted to at least make a minimal effort that allows puts targets other than `add_custom_target` into a subtproject folder. https://github.com/llvm/llvm-project/pull/89755 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [openmp] [openmp] Revise IDE folder structure (PR #89750)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89750 >From c3edd260d7a917e120d02253083eb472e0985844 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:27:20 +0200 Subject: [PATCH 1/3] [openmp] Revise IDE folder structure --- offload/unittests/CMakeLists.txt| 2 +- openmp/CMakeLists.txt | 1 + openmp/docs/CMakeLists.txt | 1 + openmp/runtime/cmake/LibompMicroTests.cmake | 5 + openmp/runtime/src/CMakeLists.txt | 7 +++ 5 files changed, 15 insertions(+), 1 deletion(-) diff --git a/offload/unittests/CMakeLists.txt b/offload/unittests/CMakeLists.txt index 73c87b708d25f..c818a3d985ba3 100644 --- a/offload/unittests/CMakeLists.txt +++ b/offload/unittests/CMakeLists.txt @@ -1,5 +1,5 @@ add_custom_target(LibomptUnitTests) -set_target_properties(LibomptUnitTests PROPERTIES FOLDER "Tests/UnitTests") +set_target_properties(LibomptUnitTests PROPERTIES FOLDER "Tests") function(add_libompt_unittest test_dirname) add_unittest(LibomptUnitTests ${test_dirname} ${ARGN}) diff --git a/openmp/CMakeLists.txt b/openmp/CMakeLists.txt index 95f2425db3ee6..daef2b77fd4dd 100644 --- a/openmp/CMakeLists.txt +++ b/openmp/CMakeLists.txt @@ -1,4 +1,5 @@ cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "OpenMP") set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) diff --git a/openmp/docs/CMakeLists.txt b/openmp/docs/CMakeLists.txt index 1e4be31a6f609..4cb9fb486ff34 100644 --- a/openmp/docs/CMakeLists.txt +++ b/openmp/docs/CMakeLists.txt @@ -78,6 +78,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating openmp doxygen documentation." VERBATIM) + set_target_properties(doxygen-openmp PROPERTIES FOLDER "OpenMP/Docs") if (LLVM_BUILD_DOCS) add_dependencies(doxygen doxygen-openmp) diff --git a/openmp/runtime/cmake/LibompMicroTests.cmake b/openmp/runtime/cmake/LibompMicroTests.cmake index e8cc218af0c29..6fcde37259931 100644 --- a/openmp/runtime/cmake/LibompMicroTests.cmake +++ b/openmp/runtime/cmake/LibompMicroTests.cmake @@ -126,6 +126,7 @@ macro(libomp_test_touch_recipe test_touch_dir) endmacro() libomp_append(libomp_test_touch_env "KMP_VERSION=1") add_custom_target(libomp-test-touch DEPENDS ${libomp_test_touch_targets}) +set_target_properties(libomp-test-touch PROPERTIES FOLDER "OpenMP/Tests") if(WIN32) libomp_test_touch_recipe(test-touch-mt) libomp_test_touch_recipe(test-touch-md) @@ -135,6 +136,7 @@ endif() # test-relo add_custom_target(libomp-test-relo DEPENDS test-relo/.success) +set_target_properties(libomp-test-relo PROPERTIES FOLDER "OpenMP/Tests") add_custom_command( OUTPUT test-relo/.success test-relo/readelf.log COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-relo @@ -146,6 +148,7 @@ add_custom_command( # test-execstack add_custom_target(libomp-test-execstack DEPENDS test-execstack/.success) +set_target_properties(libomp-test-execstack PROPERTIES FOLDER "OpenMP/Tests") add_custom_command( OUTPUT test-execstack/.success COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-execstack @@ -157,6 +160,7 @@ add_custom_command( # test-instr add_custom_target(libomp-test-instr DEPENDS test-instr/.success) +set_target_properties(libomp-test-instr PROPERTIES FOLDER "OpenMP/Tests") add_custom_command( OUTPUT test-instr/.success COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-instr @@ -168,6 +172,7 @@ add_custom_command( # test-deps add_custom_target(libomp-test-deps DEPENDS test-deps/.success) +set_target_properties(libomp-test-deps PROPERTIES FOLDER "OpenMP/Tests") set(libomp_expected_library_deps) if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") set(libomp_expected_library_deps libc.so.7 libthr.so.3 libm.so.5) diff --git a/openmp/runtime/src/CMakeLists.txt b/openmp/runtime/src/CMakeLists.txt index a2468d04e60af..963f14bb7ffc2 100644 --- a/openmp/runtime/src/CMakeLists.txt +++ b/openmp/runtime/src/CMakeLists.txt @@ -171,6 +171,7 @@ libomp_get_libflags(LIBOMP_CONFIGURED_LIBFLAGS) # Build libomp library. Add LLVMSupport dependency if building in-tree with libomptarget profiling enabled. if(OPENMP_STANDALONE_BUILD OR (NOT OPENMP_ENABLE_LIBOMP_PROFILING)) add_library(omp ${LIBOMP_LIBRARY_KIND} ${LIBOMP_SOURCE_FILES}) + set_property(TARGET omp PROPERTY FOLDER "OpenMP/Libraries") # Linking command will include libraries in LIBOMP_CONFIGURED_LIBFLAGS target_link_libraries(omp ${LIBOMP_CONFIGURED_LIBFLAGS} ${LIBOMP_DL_LIBS}) else() @@ -252,6 +253,7 @@ set(LIBOMPTARGET_OPENMP_HOST_RTL_FOLDER "${LIBOMP_LIBRARY_DIR}" CACHE STRING # Create *.inc before compiling any sources # objects depend on : .inc files add_custom_target(libomp-needed-headers DEPENDS kmp_i18n_id.inc kmp_i18n_default.inc)
[llvm-branch-commits] [libclc] [libclc] Revise IDE folder structure (PR #89746)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89746 >From 61ffad5a99c584ddb05a32b5d5bf54ecbf6c774b Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 21 May 2024 22:32:39 +0200 Subject: [PATCH] [libclc] Revise IDE folder structure --- libclc/CMakeLists.txt| 13 - libclc/cmake/modules/AddLibclc.cmake | 5 - 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/libclc/CMakeLists.txt b/libclc/CMakeLists.txt index 5ce1795243085..bacc0d83ba211 100644 --- a/libclc/CMakeLists.txt +++ b/libclc/CMakeLists.txt @@ -1,6 +1,7 @@ cmake_minimum_required(VERSION 3.20.0) project( libclc VERSION 0.2.0 LANGUAGES CXX C) +set(LLVM_SUBPROJECT_TITLE "libclc") set(CMAKE_CXX_STANDARD 17) @@ -54,7 +55,10 @@ if( LIBCLC_STANDALONE_BUILD OR CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DI foreach( tool IN ITEMS clang llvm-as llvm-link opt ) find_program( LLVM_TOOL_${tool} ${tool} PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH ) add_executable( libclc::${tool} IMPORTED GLOBAL ) - set_target_properties( libclc::${tool} PROPERTIES IMPORTED_LOCATION ${LLVM_TOOL_${tool}} ) + set_target_properties( libclc::${tool} PROPERTIES +IMPORTED_LOCATION ${LLVM_TOOL_${tool}} +FOLDER "libclc/Tools" + ) endforeach() endif() else() @@ -168,6 +172,7 @@ if( LIBCLC_STANDALONE_BUILD ) else() add_llvm_utility( prepare_builtins utils/prepare-builtins.cpp ) endif() +set_target_properties( prepare_builtins PROPERTIES FOLDER "libclc/Codegenning") target_compile_definitions( prepare_builtins PRIVATE ${LLVM_VERSION_DEFINE} ) # These were not properly reported in early LLVM and we don't need them target_compile_options( prepare_builtins PRIVATE -fno-rtti -fno-exceptions ) @@ -225,12 +230,14 @@ add_custom_command( COMMAND ${Python3_EXECUTABLE} ${script_loc} > convert.cl DEPENDS ${script_loc} ) add_custom_target( "generate_convert.cl" DEPENDS convert.cl ) +set_target_properties( "generate_convert.cl" PROPERTIES FOLDER "libclc/Codegenning" ) add_custom_command( OUTPUT clspv-convert.cl COMMAND ${Python3_EXECUTABLE} ${script_loc} --clspv > clspv-convert.cl DEPENDS ${script_loc} ) add_custom_target( "clspv-generate_convert.cl" DEPENDS clspv-convert.cl ) +set_target_properties( "clspv-generate_convert.cl" PROPERTIES FOLDER "libclc/Codegenning" ) enable_testing() @@ -394,6 +401,7 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} ) DEPENDS ${builtins_link_lib} ) add_custom_target( "prepare-${spv_suffix}" ALL DEPENDS "${spv_suffix}" ) + set_target_properties( "prepare-${spv_suffix}" PROPERTIES FOLDER "libclc/Codegenning" ) install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${spv_suffix} DESTINATION "${CMAKE_INSTALL_DATADIR}/clc" ) else() @@ -410,6 +418,7 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} ) ) set_target_properties( ${builtins_opt_lib_tgt} PROPERTIES TARGET_FILE ${builtins_opt_lib_tgt}.bc + FOLDER "libclc/Device IR/Opt" ) set( builtins_opt_lib $ ) @@ -420,6 +429,7 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} ) COMMAND prepare_builtins -o ${obj_suffix} ${builtins_opt_lib} DEPENDS ${builtins_opt_lib} prepare_builtins ) add_custom_target( prepare-${obj_suffix} ALL DEPENDS ${obj_suffix} ) + set_target_properties( "prepare-${obj_suffix}" PROPERTIES FOLDER "libclc/Device IR/Prepare" ) # nvptx-- targets don't include workitem builtins if( NOT clang_triple MATCHES ".*ptx.*--$" ) @@ -434,6 +444,7 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} ) add_custom_target( ${alias_suffix} ALL COMMAND ${CMAKE_COMMAND} -E create_symlink ${obj_suffix} ${alias_suffix} DEPENDS prepare-${obj_suffix} ) +set_target_properties( "${alias_suffix}" PROPERTIES FOLDER "libclc/Device IR/Aliases" ) install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${alias_suffix} DESTINATION "${CMAKE_INSTALL_DATADIR}/clc" ) endforeach( a ) endif() diff --git a/libclc/cmake/modules/AddLibclc.cmake b/libclc/cmake/modules/AddLibclc.cmake index 7f4620fa6a21d..0276c145ff20a 100644 --- a/libclc/cmake/modules/AddLibclc.cmake +++ b/libclc/cmake/modules/AddLibclc.cmake @@ -110,7 +110,10 @@ function(link_bc) ) add_custom_target( ${ARG_TARGET} ALL DEPENDS ${ARG_TARGET}.bc ) - set_target_properties( ${ARG_TARGET} PROPERTIES TARGET_FILE ${ARG_TARGET}.bc ) + set_target_properties( ${ARG_TARGET} PROPERTIES +TARGET_FILE ${ARG_TARGET}.bc +FOLDER "libclc/Device IR/Linking" + ) endfunction() # Decomposes and returns variables based on a libclc triple and architecture ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [compiler-rt] [llvm] [openmp] [compiler-rt] Revise IDE folder structure (PR #89753)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89753 >From 19ef183fcfb44fa8b9bae34bdc8eafb8d2425722 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:15:38 +0200 Subject: [PATCH 1/5] [compiler-rt] Revise IDE folder structure --- compiler-rt/CMakeLists.txt| 3 ++- compiler-rt/cmake/Modules/AddCompilerRT.cmake | 21 ++- .../cmake/Modules/CompilerRTDarwinUtils.cmake | 4 ++-- .../cmake/Modules/CompilerRTUtils.cmake | 4 ++-- compiler-rt/cmake/base-config-ix.cmake| 4 ++-- compiler-rt/include/CMakeLists.txt| 2 +- compiler-rt/lib/asan/tests/CMakeLists.txt | 8 +++ compiler-rt/lib/builtins/CMakeLists.txt | 2 +- compiler-rt/lib/fuzzer/tests/CMakeLists.txt | 6 +++--- compiler-rt/lib/gwp_asan/tests/CMakeLists.txt | 4 ++-- .../lib/interception/tests/CMakeLists.txt | 4 ++-- compiler-rt/lib/memprof/tests/CMakeLists.txt | 4 ++-- compiler-rt/lib/orc/tests/CMakeLists.txt | 6 +++--- .../lib/sanitizer_common/tests/CMakeLists.txt | 4 ++-- compiler-rt/lib/stats/CMakeLists.txt | 2 +- compiler-rt/lib/tsan/CMakeLists.txt | 2 +- compiler-rt/lib/tsan/dd/CMakeLists.txt| 2 +- compiler-rt/lib/tsan/rtl/CMakeLists.txt | 2 +- compiler-rt/lib/xray/tests/CMakeLists.txt | 4 ++-- compiler-rt/test/CMakeLists.txt | 1 + compiler-rt/test/asan/CMakeLists.txt | 3 --- compiler-rt/test/asan_abi/CMakeLists.txt | 1 - compiler-rt/test/builtins/CMakeLists.txt | 1 - compiler-rt/test/cfi/CMakeLists.txt | 3 --- compiler-rt/test/dfsan/CMakeLists.txt | 1 - compiler-rt/test/fuzzer/CMakeLists.txt| 1 - compiler-rt/test/gwp_asan/CMakeLists.txt | 1 - compiler-rt/test/hwasan/CMakeLists.txt| 2 -- compiler-rt/test/interception/CMakeLists.txt | 1 - compiler-rt/test/lsan/CMakeLists.txt | 1 - compiler-rt/test/memprof/CMakeLists.txt | 3 --- compiler-rt/test/metadata/CMakeLists.txt | 1 - compiler-rt/test/msan/CMakeLists.txt | 1 - compiler-rt/test/orc/CMakeLists.txt | 1 - compiler-rt/test/profile/CMakeLists.txt | 1 - compiler-rt/test/safestack/CMakeLists.txt | 1 - .../test/sanitizer_common/CMakeLists.txt | 2 -- .../test/shadowcallstack/CMakeLists.txt | 1 - compiler-rt/test/tsan/CMakeLists.txt | 1 - compiler-rt/test/ubsan/CMakeLists.txt | 2 -- compiler-rt/test/ubsan_minimal/CMakeLists.txt | 1 - compiler-rt/test/xray/CMakeLists.txt | 1 - 42 files changed, 46 insertions(+), 74 deletions(-) diff --git a/compiler-rt/CMakeLists.txt b/compiler-rt/CMakeLists.txt index 6ce451e3cac2e..65063e0057bbc 100644 --- a/compiler-rt/CMakeLists.txt +++ b/compiler-rt/CMakeLists.txt @@ -4,6 +4,7 @@ # based on the ability of the host toolchain to target various platforms. cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "Compiler-RT") if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) @@ -90,7 +91,7 @@ if (COMPILER_RT_STANDALONE_BUILD) if (TARGET intrinsics_gen) # Loading the llvm config causes this target to be imported so place it # under the appropriate folder in an IDE. -set_target_properties(intrinsics_gen PROPERTIES FOLDER "Compiler-RT Misc") +set_target_properties(intrinsics_gen PROPERTIES FOLDER "LLVM/Tablegenning") endif() find_package(Python3 COMPONENTS Interpreter) diff --git a/compiler-rt/cmake/Modules/AddCompilerRT.cmake b/compiler-rt/cmake/Modules/AddCompilerRT.cmake index 6e0d9dbff65a9..61c727b36bff3 100644 --- a/compiler-rt/cmake/Modules/AddCompilerRT.cmake +++ b/compiler-rt/cmake/Modules/AddCompilerRT.cmake @@ -89,7 +89,7 @@ function(add_compiler_rt_object_libraries name) "${libname}" MATCHES ".*\.osx.*") foreach(arch ${LIB_ARCHS_${libname}}) list(APPEND target_flags - "SHELL:-target ${arch}-apple-macos${DARWIN_osx_MIN_VER} -darwin-target-variant ${arch}-apple-ios13.1-macabi") + "SHELL:-target ${arch}-apple-macos${DARWIN_osx_MIN_V357ER} -darwin-target-variant ${arch}-apple-ios13.1-macabi") endforeach() endif() @@ -97,7 +97,7 @@ function(add_compiler_rt_object_libraries name) ${extra_cflags_${libname}} ${target_flags}) set_property(TARGET ${libname} APPEND PROPERTY COMPILE_DEFINITIONS ${LIB_DEFS}) -set_target_properties(${libname} PROPERTIES FOLDER "Compiler-RT Libraries") +set_target_properties(${libname} PROPERTIES FOLDER "Compiler-RT/Libraries") if(APPLE) set_target_properties(${libname} PROPERTIES OSX_ARCHITECTURES "${LIB_ARCHS_${libname}}") @@ -116,7 +116,7 @@ endmacro() function(add_compiler_rt_component name) add_custom_target(${name}) - set_target_properties(${name} PROPERTIES FOLDER "Compiler-RT Misc") +
[llvm-branch-commits] [compiler-rt] [llvm] [openmp] [compiler-rt] Revise IDE folder structure (PR #89753)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89753 >From 19ef183fcfb44fa8b9bae34bdc8eafb8d2425722 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:15:38 +0200 Subject: [PATCH 1/4] [compiler-rt] Revise IDE folder structure --- compiler-rt/CMakeLists.txt| 3 ++- compiler-rt/cmake/Modules/AddCompilerRT.cmake | 21 ++- .../cmake/Modules/CompilerRTDarwinUtils.cmake | 4 ++-- .../cmake/Modules/CompilerRTUtils.cmake | 4 ++-- compiler-rt/cmake/base-config-ix.cmake| 4 ++-- compiler-rt/include/CMakeLists.txt| 2 +- compiler-rt/lib/asan/tests/CMakeLists.txt | 8 +++ compiler-rt/lib/builtins/CMakeLists.txt | 2 +- compiler-rt/lib/fuzzer/tests/CMakeLists.txt | 6 +++--- compiler-rt/lib/gwp_asan/tests/CMakeLists.txt | 4 ++-- .../lib/interception/tests/CMakeLists.txt | 4 ++-- compiler-rt/lib/memprof/tests/CMakeLists.txt | 4 ++-- compiler-rt/lib/orc/tests/CMakeLists.txt | 6 +++--- .../lib/sanitizer_common/tests/CMakeLists.txt | 4 ++-- compiler-rt/lib/stats/CMakeLists.txt | 2 +- compiler-rt/lib/tsan/CMakeLists.txt | 2 +- compiler-rt/lib/tsan/dd/CMakeLists.txt| 2 +- compiler-rt/lib/tsan/rtl/CMakeLists.txt | 2 +- compiler-rt/lib/xray/tests/CMakeLists.txt | 4 ++-- compiler-rt/test/CMakeLists.txt | 1 + compiler-rt/test/asan/CMakeLists.txt | 3 --- compiler-rt/test/asan_abi/CMakeLists.txt | 1 - compiler-rt/test/builtins/CMakeLists.txt | 1 - compiler-rt/test/cfi/CMakeLists.txt | 3 --- compiler-rt/test/dfsan/CMakeLists.txt | 1 - compiler-rt/test/fuzzer/CMakeLists.txt| 1 - compiler-rt/test/gwp_asan/CMakeLists.txt | 1 - compiler-rt/test/hwasan/CMakeLists.txt| 2 -- compiler-rt/test/interception/CMakeLists.txt | 1 - compiler-rt/test/lsan/CMakeLists.txt | 1 - compiler-rt/test/memprof/CMakeLists.txt | 3 --- compiler-rt/test/metadata/CMakeLists.txt | 1 - compiler-rt/test/msan/CMakeLists.txt | 1 - compiler-rt/test/orc/CMakeLists.txt | 1 - compiler-rt/test/profile/CMakeLists.txt | 1 - compiler-rt/test/safestack/CMakeLists.txt | 1 - .../test/sanitizer_common/CMakeLists.txt | 2 -- .../test/shadowcallstack/CMakeLists.txt | 1 - compiler-rt/test/tsan/CMakeLists.txt | 1 - compiler-rt/test/ubsan/CMakeLists.txt | 2 -- compiler-rt/test/ubsan_minimal/CMakeLists.txt | 1 - compiler-rt/test/xray/CMakeLists.txt | 1 - 42 files changed, 46 insertions(+), 74 deletions(-) diff --git a/compiler-rt/CMakeLists.txt b/compiler-rt/CMakeLists.txt index 6ce451e3cac2e..65063e0057bbc 100644 --- a/compiler-rt/CMakeLists.txt +++ b/compiler-rt/CMakeLists.txt @@ -4,6 +4,7 @@ # based on the ability of the host toolchain to target various platforms. cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "Compiler-RT") if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) @@ -90,7 +91,7 @@ if (COMPILER_RT_STANDALONE_BUILD) if (TARGET intrinsics_gen) # Loading the llvm config causes this target to be imported so place it # under the appropriate folder in an IDE. -set_target_properties(intrinsics_gen PROPERTIES FOLDER "Compiler-RT Misc") +set_target_properties(intrinsics_gen PROPERTIES FOLDER "LLVM/Tablegenning") endif() find_package(Python3 COMPONENTS Interpreter) diff --git a/compiler-rt/cmake/Modules/AddCompilerRT.cmake b/compiler-rt/cmake/Modules/AddCompilerRT.cmake index 6e0d9dbff65a9..61c727b36bff3 100644 --- a/compiler-rt/cmake/Modules/AddCompilerRT.cmake +++ b/compiler-rt/cmake/Modules/AddCompilerRT.cmake @@ -89,7 +89,7 @@ function(add_compiler_rt_object_libraries name) "${libname}" MATCHES ".*\.osx.*") foreach(arch ${LIB_ARCHS_${libname}}) list(APPEND target_flags - "SHELL:-target ${arch}-apple-macos${DARWIN_osx_MIN_VER} -darwin-target-variant ${arch}-apple-ios13.1-macabi") + "SHELL:-target ${arch}-apple-macos${DARWIN_osx_MIN_V357ER} -darwin-target-variant ${arch}-apple-ios13.1-macabi") endforeach() endif() @@ -97,7 +97,7 @@ function(add_compiler_rt_object_libraries name) ${extra_cflags_${libname}} ${target_flags}) set_property(TARGET ${libname} APPEND PROPERTY COMPILE_DEFINITIONS ${LIB_DEFS}) -set_target_properties(${libname} PROPERTIES FOLDER "Compiler-RT Libraries") +set_target_properties(${libname} PROPERTIES FOLDER "Compiler-RT/Libraries") if(APPLE) set_target_properties(${libname} PROPERTIES OSX_ARCHITECTURES "${LIB_ARCHS_${libname}}") @@ -116,7 +116,7 @@ endmacro() function(add_compiler_rt_component name) add_custom_target(${name}) - set_target_properties(${name} PROPERTIES FOLDER "Compiler-RT Misc") +
[llvm-branch-commits] [clang] [clang] Revise IDE folder structure (PR #89743)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89743 >From afadef1f53e03e2cf3a1695f3c693913b27382dd Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:03:11 +0200 Subject: [PATCH 1/3] [clang] Revise IDE folder structure --- clang/CMakeLists.txt| 8 +--- clang/bindings/python/tests/CMakeLists.txt | 2 +- clang/cmake/modules/AddClang.cmake | 3 --- clang/docs/CMakeLists.txt | 1 + clang/lib/Analysis/FlowSensitive/CMakeLists.txt | 1 + clang/lib/Headers/CMakeLists.txt| 4 ++-- clang/lib/Tooling/CMakeLists.txt| 2 ++ clang/test/CMakeLists.txt | 5 ++--- clang/tools/libclang/CMakeLists.txt | 2 +- clang/unittests/CMakeLists.txt | 2 +- clang/utils/ClangVisualizers/CMakeLists.txt | 2 +- clang/utils/TableGen/CMakeLists.txt | 2 -- clang/utils/hmaptool/CMakeLists.txt | 2 +- 13 files changed, 18 insertions(+), 18 deletions(-) diff --git a/clang/CMakeLists.txt b/clang/CMakeLists.txt index f092766fa19f0..09da3ad9979ff 100644 --- a/clang/CMakeLists.txt +++ b/clang/CMakeLists.txt @@ -1,4 +1,5 @@ cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "Clang") if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) @@ -390,7 +391,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) # Installing the headers needs to depend on generating any public # tablegen'd headers. add_custom_target(clang-headers DEPENDS clang-tablegen-targets) - set_target_properties(clang-headers PROPERTIES FOLDER "Misc") + set_target_properties(clang-headers PROPERTIES FOLDER "Clang/Resources") if(NOT LLVM_ENABLE_IDE) add_llvm_install_targets(install-clang-headers DEPENDS clang-headers @@ -398,6 +399,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) endif() add_custom_target(bash-autocomplete DEPENDS utils/bash-autocomplete.sh) + set_target_properties(bash-autocomplete PROPERTIES FOLDER "Clang/Misc") install(FILES utils/bash-autocomplete.sh DESTINATION "${CMAKE_INSTALL_DATADIR}/clang" COMPONENT bash-autocomplete) @@ -478,7 +480,7 @@ add_custom_target(clang-tablegen-targets omp_gen ClangDriverOptions ${CLANG_TABLEGEN_TARGETS}) -set_target_properties(clang-tablegen-targets PROPERTIES FOLDER "Misc") +set_target_properties(clang-tablegen-targets PROPERTIES FOLDER "Clang/Tablegenning/Targets") list(APPEND LLVM_COMMON_DEPENDS clang-tablegen-targets) # Force target to be built as soon as possible. Clang modules builds depend @@ -541,7 +543,7 @@ endif() # Custom target to install all clang libraries. add_custom_target(clang-libraries) -set_target_properties(clang-libraries PROPERTIES FOLDER "Misc") +set_target_properties(clang-libraries PROPERTIES FOLDER "Clang/Install") if(NOT LLVM_ENABLE_IDE) add_llvm_install_targets(install-clang-libraries diff --git a/clang/bindings/python/tests/CMakeLists.txt b/clang/bindings/python/tests/CMakeLists.txt index c4cd2539e9d6c..2543cf739463d 100644 --- a/clang/bindings/python/tests/CMakeLists.txt +++ b/clang/bindings/python/tests/CMakeLists.txt @@ -11,7 +11,7 @@ add_custom_target(check-clang-python WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/..) set(RUN_PYTHON_TESTS TRUE) -set_target_properties(check-clang-python PROPERTIES FOLDER "Clang tests") +set_target_properties(check-clang-python PROPERTIES FOLDER "Clang/Tests") # Tests require libclang.so which is only built with LLVM_ENABLE_PIC=ON if(NOT LLVM_ENABLE_PIC) diff --git a/clang/cmake/modules/AddClang.cmake b/clang/cmake/modules/AddClang.cmake index 75b0080f67156..a5ef639187d9d 100644 --- a/clang/cmake/modules/AddClang.cmake +++ b/clang/cmake/modules/AddClang.cmake @@ -26,7 +26,6 @@ function(clang_tablegen) if(CTG_TARGET) add_public_tablegen_target(${CTG_TARGET}) -set_target_properties( ${CTG_TARGET} PROPERTIES FOLDER "Clang tablegenning") set_property(GLOBAL APPEND PROPERTY CLANG_TABLEGEN_TARGETS ${CTG_TARGET}) endif() endfunction(clang_tablegen) @@ -138,13 +137,11 @@ macro(add_clang_library name) endif() endforeach() - set_target_properties(${name} PROPERTIES FOLDER "Clang libraries") set_clang_windows_version_resource_properties(${name}) endmacro(add_clang_library) macro(add_clang_executable name) add_llvm_executable( ${name} ${ARGN} ) - set_target_properties(${name} PROPERTIES FOLDER "Clang executables") set_clang_windows_version_resource_properties(${name}) endmacro(add_clang_executable) diff --git a/clang/docs/CMakeLists.txt b/clang/docs/CMakeLists.txt index 4163dd2d90ad5..51e9db29f887f 100644 --- a/clang/docs/CMakeLists.txt +++ b/clang/docs/CMakeLists.txt @@ -78,6 +78,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY
[llvm-branch-commits] [lldb] [lldb] Revise IDE folder structure (PR #89748)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89748 >From e29002224ef168934ae414e75e765cf197f65bc0 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:21:43 +0200 Subject: [PATCH 1/3] [lldb] Revise IDE folder structure --- lldb/CMakeLists.txt | 1 + lldb/cmake/modules/AddLLDB.cmake| 6 ++ lldb/cmake/modules/LLDBConfig.cmake | 2 +- lldb/cmake/modules/LLDBFramework.cmake | 2 +- lldb/cmake/modules/LLDBStandalone.cmake | 4 ++-- lldb/docs/CMakeLists.txt| 1 + lldb/source/API/CMakeLists.txt | 3 +-- lldb/test/API/CMakeLists.txt| 1 + lldb/test/CMakeLists.txt| 4 ++-- lldb/test/Shell/CMakeLists.txt | 1 + lldb/test/Unit/CMakeLists.txt | 1 + lldb/tools/driver/CMakeLists.txt| 2 -- .../lldb-commandinterpreter-fuzzer/CMakeLists.txt | 1 + lldb/tools/lldb-fuzzer/lldb-target-fuzzer/CMakeLists.txt| 1 + lldb/tools/lldb-server/CMakeLists.txt | 1 - lldb/unittests/CMakeLists.txt | 2 +- lldb/unittests/tools/lldb-server/CMakeLists.txt | 2 +- lldb/utils/TableGen/CMakeLists.txt | 1 - lldb/utils/lit-cpuid/CMakeLists.txt | 2 +- lldb/utils/lldb-dotest/CMakeLists.txt | 2 +- lldb/utils/lldb-repro/CMakeLists.txt| 2 +- 21 files changed, 21 insertions(+), 21 deletions(-) diff --git a/lldb/CMakeLists.txt b/lldb/CMakeLists.txt index 7844d93d78d29..db9e5517e287b 100644 --- a/lldb/CMakeLists.txt +++ b/lldb/CMakeLists.txt @@ -1,4 +1,5 @@ cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "LLDB") if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) diff --git a/lldb/cmake/modules/AddLLDB.cmake b/lldb/cmake/modules/AddLLDB.cmake index fdc4ee0c05d75..538029037dd46 100644 --- a/lldb/cmake/modules/AddLLDB.cmake +++ b/lldb/cmake/modules/AddLLDB.cmake @@ -29,7 +29,6 @@ function(lldb_tablegen) if(LTG_TARGET) add_public_tablegen_target(${LTG_TARGET}) -set_target_properties( ${LTG_TARGET} PROPERTIES FOLDER "LLDB tablegenning") set_property(GLOBAL APPEND PROPERTY LLDB_TABLEGEN_TARGETS ${LTG_TARGET}) endif() endfunction(lldb_tablegen) @@ -165,10 +164,10 @@ function(add_lldb_library name) get_property(parent_dir DIRECTORY PROPERTY PARENT_DIRECTORY) if(EXISTS ${parent_dir}) get_filename_component(category ${parent_dir} NAME) - set_target_properties(${name} PROPERTIES FOLDER "lldb plugins/${category}") + set_target_properties(${name} PROPERTIES FOLDER "LLDB/Plugins/${category}") endif() else() -set_target_properties(${name} PROPERTIES FOLDER "lldb libraries") +set_target_properties(${name} PROPERTIES FOLDER "LLDB/Libraries") endif() # If we want to export all lldb symbols (i.e LLDB_EXPORT_ALL_SYMBOLS=ON), we @@ -208,7 +207,6 @@ function(add_lldb_executable name) else() target_link_libraries(${name} PRIVATE ${ARG_CLANG_LIBS}) endif() - set_target_properties(${name} PROPERTIES FOLDER "lldb executables") if (ARG_BUILD_RPATH) set_target_properties(${name} PROPERTIES BUILD_RPATH "${ARG_BUILD_RPATH}") diff --git a/lldb/cmake/modules/LLDBConfig.cmake b/lldb/cmake/modules/LLDBConfig.cmake index a758261073ac5..13d07a4fabd6d 100644 --- a/lldb/cmake/modules/LLDBConfig.cmake +++ b/lldb/cmake/modules/LLDBConfig.cmake @@ -271,7 +271,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) ) add_custom_target(lldb-headers) - set_target_properties(lldb-headers PROPERTIES FOLDER "lldb misc") + set_target_properties(lldb-headers PROPERTIES FOLDER "LLDB/Resources") if (NOT CMAKE_CONFIGURATION_TYPES) add_llvm_install_targets(install-lldb-headers diff --git a/lldb/cmake/modules/LLDBFramework.cmake b/lldb/cmake/modules/LLDBFramework.cmake index f915839f6b45a..88ea6a568ec4c 100644 --- a/lldb/cmake/modules/LLDBFramework.cmake +++ b/lldb/cmake/modules/LLDBFramework.cmake @@ -104,7 +104,7 @@ endforeach() # Wrap output in a target, so lldb-framework can depend on it. add_custom_target(liblldb-resource-headers DEPENDS ${lldb_staged_headers}) -set_target_properties(liblldb-resource-headers PROPERTIES FOLDER "lldb misc") +set_target_properties(liblldb-resource-headers PROPERTIES FOLDER "LLDB/Resources") add_dependencies(liblldb liblldb-resource-headers) # At build time, copy the staged headers into the framework bundle (and do diff --git a/lldb/cmake/modules/LLDBStandalone.cmake b/lldb/cmake/modules/LLDBStandalone.cmake index fd16716d71419..c9367214848fd 100644 ---
[llvm-branch-commits] [llvm] [openmp] [openmp] Revise IDE folder structure (PR #89750)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89750 >From c3edd260d7a917e120d02253083eb472e0985844 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:27:20 +0200 Subject: [PATCH 1/2] [openmp] Revise IDE folder structure --- offload/unittests/CMakeLists.txt| 2 +- openmp/CMakeLists.txt | 1 + openmp/docs/CMakeLists.txt | 1 + openmp/runtime/cmake/LibompMicroTests.cmake | 5 + openmp/runtime/src/CMakeLists.txt | 7 +++ 5 files changed, 15 insertions(+), 1 deletion(-) diff --git a/offload/unittests/CMakeLists.txt b/offload/unittests/CMakeLists.txt index 73c87b708d25f..c818a3d985ba3 100644 --- a/offload/unittests/CMakeLists.txt +++ b/offload/unittests/CMakeLists.txt @@ -1,5 +1,5 @@ add_custom_target(LibomptUnitTests) -set_target_properties(LibomptUnitTests PROPERTIES FOLDER "Tests/UnitTests") +set_target_properties(LibomptUnitTests PROPERTIES FOLDER "Tests") function(add_libompt_unittest test_dirname) add_unittest(LibomptUnitTests ${test_dirname} ${ARGN}) diff --git a/openmp/CMakeLists.txt b/openmp/CMakeLists.txt index 95f2425db3ee6..daef2b77fd4dd 100644 --- a/openmp/CMakeLists.txt +++ b/openmp/CMakeLists.txt @@ -1,4 +1,5 @@ cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "OpenMP") set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) diff --git a/openmp/docs/CMakeLists.txt b/openmp/docs/CMakeLists.txt index 1e4be31a6f609..4cb9fb486ff34 100644 --- a/openmp/docs/CMakeLists.txt +++ b/openmp/docs/CMakeLists.txt @@ -78,6 +78,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating openmp doxygen documentation." VERBATIM) + set_target_properties(doxygen-openmp PROPERTIES FOLDER "OpenMP/Docs") if (LLVM_BUILD_DOCS) add_dependencies(doxygen doxygen-openmp) diff --git a/openmp/runtime/cmake/LibompMicroTests.cmake b/openmp/runtime/cmake/LibompMicroTests.cmake index e8cc218af0c29..6fcde37259931 100644 --- a/openmp/runtime/cmake/LibompMicroTests.cmake +++ b/openmp/runtime/cmake/LibompMicroTests.cmake @@ -126,6 +126,7 @@ macro(libomp_test_touch_recipe test_touch_dir) endmacro() libomp_append(libomp_test_touch_env "KMP_VERSION=1") add_custom_target(libomp-test-touch DEPENDS ${libomp_test_touch_targets}) +set_target_properties(libomp-test-touch PROPERTIES FOLDER "OpenMP/Tests") if(WIN32) libomp_test_touch_recipe(test-touch-mt) libomp_test_touch_recipe(test-touch-md) @@ -135,6 +136,7 @@ endif() # test-relo add_custom_target(libomp-test-relo DEPENDS test-relo/.success) +set_target_properties(libomp-test-relo PROPERTIES FOLDER "OpenMP/Tests") add_custom_command( OUTPUT test-relo/.success test-relo/readelf.log COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-relo @@ -146,6 +148,7 @@ add_custom_command( # test-execstack add_custom_target(libomp-test-execstack DEPENDS test-execstack/.success) +set_target_properties(libomp-test-execstack PROPERTIES FOLDER "OpenMP/Tests") add_custom_command( OUTPUT test-execstack/.success COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-execstack @@ -157,6 +160,7 @@ add_custom_command( # test-instr add_custom_target(libomp-test-instr DEPENDS test-instr/.success) +set_target_properties(libomp-test-instr PROPERTIES FOLDER "OpenMP/Tests") add_custom_command( OUTPUT test-instr/.success COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/test-instr @@ -168,6 +172,7 @@ add_custom_command( # test-deps add_custom_target(libomp-test-deps DEPENDS test-deps/.success) +set_target_properties(libomp-test-deps PROPERTIES FOLDER "OpenMP/Tests") set(libomp_expected_library_deps) if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") set(libomp_expected_library_deps libc.so.7 libthr.so.3 libm.so.5) diff --git a/openmp/runtime/src/CMakeLists.txt b/openmp/runtime/src/CMakeLists.txt index a2468d04e60af..963f14bb7ffc2 100644 --- a/openmp/runtime/src/CMakeLists.txt +++ b/openmp/runtime/src/CMakeLists.txt @@ -171,6 +171,7 @@ libomp_get_libflags(LIBOMP_CONFIGURED_LIBFLAGS) # Build libomp library. Add LLVMSupport dependency if building in-tree with libomptarget profiling enabled. if(OPENMP_STANDALONE_BUILD OR (NOT OPENMP_ENABLE_LIBOMP_PROFILING)) add_library(omp ${LIBOMP_LIBRARY_KIND} ${LIBOMP_SOURCE_FILES}) + set_property(TARGET omp PROPERTY FOLDER "OpenMP/Libraries") # Linking command will include libraries in LIBOMP_CONFIGURED_LIBFLAGS target_link_libraries(omp ${LIBOMP_CONFIGURED_LIBFLAGS} ${LIBOMP_DL_LIBS}) else() @@ -252,6 +253,7 @@ set(LIBOMPTARGET_OPENMP_HOST_RTL_FOLDER "${LIBOMP_LIBRARY_DIR}" CACHE STRING # Create *.inc before compiling any sources # objects depend on : .inc files add_custom_target(libomp-needed-headers DEPENDS kmp_i18n_id.inc kmp_i18n_default.inc)
[llvm-branch-commits] [polly] [polly] Revise IDE folder structure (PR #89752)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89752 >From a85a17723d76371ccc8feb245c455d6aaf2c297f Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:19:16 +0200 Subject: [PATCH 1/2] [polly] Revise IDE folder structure --- polly/CMakeLists.txt | 5 +++-- polly/cmake/polly_macros.cmake | 2 +- polly/docs/CMakeLists.txt | 1 + polly/lib/CMakeLists.txt | 4 +--- polly/test/CMakeLists.txt | 7 ++- polly/unittests/CMakeLists.txt | 2 +- 6 files changed, 9 insertions(+), 12 deletions(-) diff --git a/polly/CMakeLists.txt b/polly/CMakeLists.txt index 5d0f2cd7f00ec..a0d1ab49e7837 100644 --- a/polly/CMakeLists.txt +++ b/polly/CMakeLists.txt @@ -4,6 +4,7 @@ if (NOT DEFINED LLVM_MAIN_SRC_DIR) cmake_minimum_required(VERSION 3.20.0) set(POLLY_STANDALONE_BUILD TRUE) endif() +set(LLVM_SUBPROJECT_TITLE "Polly") # Must go below project(..) include(GNUInstallDirs) @@ -157,8 +158,8 @@ foreach (file IN LISTS files) endforeach () add_custom_target(polly-check-format DEPENDS ${check_format_depends}) -set_target_properties(polly-check-format PROPERTIES FOLDER "Polly") +set_target_properties(polly-check-format PROPERTIES FOLDER "Polly/Meta") add_custom_target(polly-update-format DEPENDS ${update_format_depends}) -set_target_properties(polly-update-format PROPERTIES FOLDER "Polly") +set_target_properties(polly-update-format PROPERTIES FOLDER "Polly/Meta") diff --git a/polly/cmake/polly_macros.cmake b/polly/cmake/polly_macros.cmake index df541eeccc4cb..b1bd1e1b03cda 100644 --- a/polly/cmake/polly_macros.cmake +++ b/polly/cmake/polly_macros.cmake @@ -21,7 +21,7 @@ macro(add_polly_library name) set(libkind) endif() add_library( ${name} ${libkind} ${srcs} ) - set_target_properties(${name} PROPERTIES FOLDER "Polly") + set_target_properties(${name} PROPERTIES FOLDER "Polly/Libraries") if( LLVM_COMMON_DEPENDS ) add_dependencies( ${name} ${LLVM_COMMON_DEPENDS} ) diff --git a/polly/docs/CMakeLists.txt b/polly/docs/CMakeLists.txt index a1ef5ce5277f7..2bd16e53c542f 100644 --- a/polly/docs/CMakeLists.txt +++ b/polly/docs/CMakeLists.txt @@ -77,6 +77,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating polly doxygen documentation." VERBATIM) + set_target_properties(doxygen-polly PROPERTIES FOLDER "Polly/Docs") if (LLVM_BUILD_DOCS) add_dependencies(doxygen doxygen-polly) diff --git a/polly/lib/CMakeLists.txt b/polly/lib/CMakeLists.txt index 4557878e515e6..f18cdcd09cfca 100644 --- a/polly/lib/CMakeLists.txt +++ b/polly/lib/CMakeLists.txt @@ -92,8 +92,6 @@ add_llvm_pass_plugin(Polly LINK_COMPONENTS ${POLLY_COMPONENTS} ) -set_target_properties(obj.Polly PROPERTIES FOLDER "Polly") -set_target_properties(Polly PROPERTIES FOLDER "Polly") if (MSVC_IDE OR XCODE) # Configure source groups for Polly source files. By default, in the IDE there @@ -120,7 +118,7 @@ if (WIN32 OR CYGWIN OR NOT LLVM_ENABLE_PIC) # Add dummy target, either because loadable modules are not supported # as on Windows or because PIC code has been disabled add_custom_target(LLVMPolly) - set_target_properties(LLVMPolly PROPERTIES FOLDER "Polly") + set_target_properties(LLVMPolly PROPERTIES FOLDER "Polly/Meta") else () add_polly_loadable_module(LLVMPolly Plugin/Polly.cpp diff --git a/polly/test/CMakeLists.txt b/polly/test/CMakeLists.txt index 81cee34a780d6..338c7dbfa1158 100644 --- a/polly/test/CMakeLists.txt +++ b/polly/test/CMakeLists.txt @@ -1,7 +1,7 @@ set(LLVM_SHLIBEXT "${CMAKE_SHARED_MODULE_SUFFIX}") add_custom_target(check-polly) -set_target_properties(check-polly PROPERTIES FOLDER "Polly") +set_target_properties(check-polly PROPERTIES FOLDER "Polly/Tests") if(NOT LLVM_MAIN_SRC_DIR) find_program(LLVM_OPT NAMES opt HINTS ${LLVM_TOOLS_BINARY_DIR}) @@ -64,7 +64,6 @@ add_lit_testsuite(check-polly-tests "Running polly regression tests" polly_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg DEPENDS ${POLLY_TEST_DEPS} ) -set_target_properties(check-polly-tests PROPERTIES FOLDER "Polly") add_dependencies(check-polly check-polly-tests) configure_lit_site_cfg( @@ -80,7 +79,6 @@ if (POLLY_GTEST_AVAIL) EXCLUDE_FROM_CHECK_ALL DEPENDS PollyUnitTests ) - set_target_properties(check-polly-unittests PROPERTIES FOLDER "Polly") endif () configure_file( @@ -94,7 +92,6 @@ if (POLLY_BUNDLED_ISL) EXCLUDE_FROM_CHECK_ALL DEPENDS polly-isl-test ) - set_target_properties(check-polly-isl PROPERTIES FOLDER "Polly") endif (POLLY_BUNDLED_ISL) # Run polly-check-format as part of polly-check only if we are compiling with @@ -114,5 +111,5 @@ configure_file( # Add a legacy target spelling: polly-test add_custom_target(polly-test) -set_target_properties(polly-test PROPERTIES FOLDER "Polly") +set_target_properties(polly-test
[llvm-branch-commits] [libc] [libcxx] [libcxxabi] [libunwind] [llvm] [pstl] Revise IDE folder structure (PR #89755)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89755 >From 0ce849c6e5455577a77f4c25d08e8ec83115a290 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:29:28 +0200 Subject: [PATCH] Revise IDE folder structure --- cross-project-tests/CMakeLists.txt | 6 +- libc/CMakeLists.txt| 1 + libcxx/CMakeLists.txt | 1 + libcxxabi/CMakeLists.txt | 1 + libunwind/CMakeLists.txt | 1 + llvm-libgcc/CMakeLists.txt | 1 + offload/CMakeLists.txt | 1 + pstl/CMakeLists.txt| 1 + runtimes/CMakeLists.txt| 1 + 9 files changed, 9 insertions(+), 5 deletions(-) diff --git a/cross-project-tests/CMakeLists.txt b/cross-project-tests/CMakeLists.txt index f7c2ca7ad83de..7f2fee48fda77 100644 --- a/cross-project-tests/CMakeLists.txt +++ b/cross-project-tests/CMakeLists.txt @@ -3,6 +3,7 @@ # The subset inside debuginfo-tests invoke clang to generate programs with # various types of debug info, and then run those programs under a debugger # such as GDB or LLDB to verify the results. +set(LLVM_SUBPROJECT_TITLE "Cross-Project") find_package(Python3 COMPONENTS Interpreter) @@ -97,8 +98,3 @@ add_lit_testsuite(check-cross-amdgpu "Running AMDGPU cross-project tests" add_lit_testsuites(CROSS_PROJECT ${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${CROSS_PROJECT_TEST_DEPS} ) - -set_target_properties(check-cross-project PROPERTIES FOLDER "Tests") -set_target_properties(check-debuginfo PROPERTIES FOLDER "Tests") -set_target_properties(check-intrinsic-headers PROPERTIES FOLDER "Tests") -set_target_properties(check-cross-amdgpu PROPERTIES FOLDER "Tests") diff --git a/libc/CMakeLists.txt b/libc/CMakeLists.txt index 175efd89d67e6..f35471a06a53e 100644 --- a/libc/CMakeLists.txt +++ b/libc/CMakeLists.txt @@ -1,4 +1,5 @@ cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "libc") # Include LLVM's cmake policies. if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) diff --git a/libcxx/CMakeLists.txt b/libcxx/CMakeLists.txt index 2977c26646cb2..d75f22ecf0222 100644 --- a/libcxx/CMakeLists.txt +++ b/libcxx/CMakeLists.txt @@ -5,6 +5,7 @@ # Setup Project #=== cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "libc++") set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake") diff --git a/libcxxabi/CMakeLists.txt b/libcxxabi/CMakeLists.txt index da998d2221dc4..f7673da25d20e 100644 --- a/libcxxabi/CMakeLists.txt +++ b/libcxxabi/CMakeLists.txt @@ -5,6 +5,7 @@ #=== cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "libc++abi") set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake") diff --git a/libunwind/CMakeLists.txt b/libunwind/CMakeLists.txt index 806d5a783ec39..2117cd9e756ef 100644 --- a/libunwind/CMakeLists.txt +++ b/libunwind/CMakeLists.txt @@ -3,6 +3,7 @@ #=== cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "libunwind") set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake") diff --git a/llvm-libgcc/CMakeLists.txt b/llvm-libgcc/CMakeLists.txt index 013c9ca2e3307..c6641ab9e3219 100644 --- a/llvm-libgcc/CMakeLists.txt +++ b/llvm-libgcc/CMakeLists.txt @@ -3,6 +3,7 @@ #=== cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "LLVM libgcc") set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake") diff --git a/offload/CMakeLists.txt b/offload/CMakeLists.txt index abc8baa0805ff..44a3d17b2e59a 100644 --- a/offload/CMakeLists.txt +++ b/offload/CMakeLists.txt @@ -11,6 +11,7 @@ ##===--===## cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "liboffload") if ("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}") set(OPENMP_STANDALONE_BUILD TRUE) diff --git a/pstl/CMakeLists.txt b/pstl/CMakeLists.txt index 255e22af9a26b..592e11d356473 100644 --- a/pstl/CMakeLists.txt +++ b/pstl/CMakeLists.txt @@ -6,6 +6,7 @@ # #===--===## cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "Parallel STL") set(PARALLELSTL_VERSION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/include/pstl/internal/pstl_config.h") file(STRINGS "${PARALLELSTL_VERSION_FILE}" PARALLELSTL_VERSION_SOURCE REGEX "#define _PSTL_VERSION .*$") diff --git a/runtimes/CMakeLists.txt b/runtimes/CMakeLists.txt index fcc59c8fa1c37..76ad8aa1f353e 100644 --- a/runtimes/CMakeLists.txt +++ b/runtimes/CMakeLists.txt @@ -9,6 +9,7 @@ include(${LLVM_COMMON_CMAKE_UTILS}/Modules/CMakePolicy.cmake
[llvm-branch-commits] [llvm] [bolt] Revise IDE folder structure (PR #89742)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89742 >From 140a539c9e3248b128bdffdbc9ae5e2e8b4366c0 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:23:47 +0200 Subject: [PATCH 1/2] [bolt] Revise IDE folder structure --- bolt/CMakeLists.txt | 2 ++ bolt/cmake/modules/AddBOLT.cmake | 1 - bolt/docs/CMakeLists.txt | 1 + bolt/test/CMakeLists.txt | 3 +-- bolt/unittests/CMakeLists.txt| 2 +- 5 files changed, 5 insertions(+), 4 deletions(-) diff --git a/bolt/CMakeLists.txt b/bolt/CMakeLists.txt index cc3a70fa35e0a..26df6a4208b7a 100644 --- a/bolt/CMakeLists.txt +++ b/bolt/CMakeLists.txt @@ -1,3 +1,5 @@ +set(LLVM_SUBPROJECT_TITLE "BOLT") + include(ExternalProject) set(BOLT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) diff --git a/bolt/cmake/modules/AddBOLT.cmake b/bolt/cmake/modules/AddBOLT.cmake index 1f69b9046320a..c7ac662c6b121 100644 --- a/bolt/cmake/modules/AddBOLT.cmake +++ b/bolt/cmake/modules/AddBOLT.cmake @@ -3,7 +3,6 @@ include(LLVMDistributionSupport) macro(add_bolt_executable name) add_llvm_executable(${name} ${ARGN}) - set_target_properties(${name} PROPERTIES FOLDER "BOLT") endmacro() macro(add_bolt_tool name) diff --git a/bolt/docs/CMakeLists.txt b/bolt/docs/CMakeLists.txt index b230512fe5717..12ae852566785 100644 --- a/bolt/docs/CMakeLists.txt +++ b/bolt/docs/CMakeLists.txt @@ -79,6 +79,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating bolt doxygen documentation." VERBATIM) + set_target_properties(doxygen-bolt PROPERTIES FOLDER "BOLT/Docs") if (LLVM_BUILD_DOCS) add_dependencies(doxygen doxygen-bolt) diff --git a/bolt/test/CMakeLists.txt b/bolt/test/CMakeLists.txt index 89862fd59eb8e..d468ff984840f 100644 --- a/bolt/test/CMakeLists.txt +++ b/bolt/test/CMakeLists.txt @@ -56,7 +56,7 @@ list(APPEND BOLT_TEST_DEPS ) add_custom_target(bolt-test-depends DEPENDS ${BOLT_TEST_DEPS}) -set_target_properties(bolt-test-depends PROPERTIES FOLDER "BOLT") +set_target_properties(bolt-test-depends PROPERTIES FOLDER "BOLT/Tests") add_lit_testsuite(check-bolt "Running the BOLT regression tests" ${CMAKE_CURRENT_BINARY_DIR} @@ -64,7 +64,6 @@ add_lit_testsuite(check-bolt "Running the BOLT regression tests" DEPENDS ${BOLT_TEST_DEPS} ARGS ${BOLT_TEST_EXTRA_ARGS} ) -set_target_properties(check-bolt PROPERTIES FOLDER "BOLT") add_lit_testsuites(BOLT ${CMAKE_CURRENT_SOURCE_DIR} PARAMS ${BOLT_TEST_PARAMS} diff --git a/bolt/unittests/CMakeLists.txt b/bolt/unittests/CMakeLists.txt index 77159e92dec55..64414b83d39fe 100644 --- a/bolt/unittests/CMakeLists.txt +++ b/bolt/unittests/CMakeLists.txt @@ -1,5 +1,5 @@ add_custom_target(BoltUnitTests) -set_target_properties(BoltUnitTests PROPERTIES FOLDER "BOLT tests") +set_target_properties(BoltUnitTests PROPERTIES FOLDER "BOLT/Tests") function(add_bolt_unittest test_dirname) add_unittest(BoltUnitTests ${test_dirname} ${ARGN}) >From ad704f8babf3c065d928329bf6f663b995f7323e Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 21 May 2024 22:05:54 +0200 Subject: [PATCH 2/2] Finetune BOLT folders --- bolt/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bolt/CMakeLists.txt b/bolt/CMakeLists.txt index 26df6a4208b7a..3c1fe967d6597 100644 --- a/bolt/CMakeLists.txt +++ b/bolt/CMakeLists.txt @@ -123,7 +123,7 @@ option(BOLT_BUILD_TOOLS "Build the BOLT tools. If OFF, just generate build targets." ON) add_custom_target(bolt) -set_target_properties(bolt PROPERTIES FOLDER "BOLT") +set_target_properties(bolt PROPERTIES FOLDER "BOLT/Meta") add_llvm_install_targets(install-bolt DEPENDS bolt COMPONENT bolt) include_directories( ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [flang] [flang] Revise IDE folder structure (PR #89745)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89745 >From 90d0d0f3bed2d826dc38e962a7a9140bf2ff3615 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:13:53 +0200 Subject: [PATCH 1/2] [flang] Revise IDE folder structure --- flang/CMakeLists.txt | 3 ++- flang/cmake/modules/AddFlang.cmake | 3 +-- flang/docs/CMakeLists.txt| 2 +- flang/include/flang/Optimizer/Dialect/CMakeLists.txt | 2 ++ flang/runtime/CMakeLists.txt | 5 + flang/test/CMakeLists.txt| 3 ++- flang/tools/f18/CMakeLists.txt | 1 + flang/unittests/CMakeLists.txt | 3 ++- flang/unittests/Evaluate/CMakeLists.txt | 1 + 9 files changed, 17 insertions(+), 6 deletions(-) diff --git a/flang/CMakeLists.txt b/flang/CMakeLists.txt index c8e75024823f2..3bc4b5dd10c0e 100644 --- a/flang/CMakeLists.txt +++ b/flang/CMakeLists.txt @@ -1,4 +1,5 @@ cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "Flang") if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) @@ -481,7 +482,7 @@ endif() # Custom target to install Flang libraries. add_custom_target(flang-libraries) -set_target_properties(flang-libraries PROPERTIES FOLDER "Misc") +set_target_properties(flang-libraries PROPERTIES FOLDER "Flang/Meta") if (NOT LLVM_ENABLE_IDE) add_llvm_install_targets(install-flang-libraries diff --git a/flang/cmake/modules/AddFlang.cmake b/flang/cmake/modules/AddFlang.cmake index 41ce8738e7bf2..3a5119b83831f 100644 --- a/flang/cmake/modules/AddFlang.cmake +++ b/flang/cmake/modules/AddFlang.cmake @@ -94,13 +94,12 @@ function(add_flang_library name) add_custom_target(${name}) endif() - set_target_properties(${name} PROPERTIES FOLDER "Flang libraries") + set_target_properties(${name} PROPERTIES FOLDER "Flang/Libraries") set_flang_windows_version_resource_properties(${name}) endfunction(add_flang_library) macro(add_flang_executable name) add_llvm_executable(${name} ${ARGN}) - set_target_properties(${name} PROPERTIES FOLDER "Flang executables") set_flang_windows_version_resource_properties(${name}) endmacro(add_flang_executable) diff --git a/flang/docs/CMakeLists.txt b/flang/docs/CMakeLists.txt index 3414b8e3acc46..3e4883e881ffa 100644 --- a/flang/docs/CMakeLists.txt +++ b/flang/docs/CMakeLists.txt @@ -79,7 +79,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating flang doxygen documentation." VERBATIM) - + set_target_properties(doxygen-flang PROPERTIES FOLDER "Flang/Docs") if (LLVM_BUILD_DOCS) add_dependencies(doxygen doxygen-flang) endif() diff --git a/flang/include/flang/Optimizer/Dialect/CMakeLists.txt b/flang/include/flang/Optimizer/Dialect/CMakeLists.txt index f00993d4d3778..203ac212d3ccf 100644 --- a/flang/include/flang/Optimizer/Dialect/CMakeLists.txt +++ b/flang/include/flang/Optimizer/Dialect/CMakeLists.txt @@ -31,6 +31,7 @@ mlir_tablegen(CanonicalizationPatterns.inc -gen-rewriters) add_public_tablegen_target(CanonicalizationPatternsIncGen) add_custom_target(flang-doc) +set_target_properties(flang-doc PROPERTIES FOLDER "Flang/Meta") set(dialect_doc_filename "FIRLangRef") set(LLVM_TARGET_DEFINITIONS FIROps.td) @@ -43,4 +44,5 @@ add_custom_command( ${GEN_DOC_FILE} DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${dialect_doc_filename}.md) add_custom_target(${dialect_doc_filename}DocGen DEPENDS ${GEN_DOC_FILE}) +set_target_properties(${dialect_doc_filename}DocGen PROPERTIES FOLDER "Flang/Docs") add_dependencies(flang-doc ${dialect_doc_filename}DocGen) diff --git a/flang/runtime/CMakeLists.txt b/flang/runtime/CMakeLists.txt index bdd0e07bbfd4d..eaa79851046c6 100644 --- a/flang/runtime/CMakeLists.txt +++ b/flang/runtime/CMakeLists.txt @@ -269,21 +269,26 @@ else() LINK_LIBS FortranDecimal.static INSTALL_WITH_TOOLCHAIN) + set_target_properties(FortranRuntime.static PROPERTIES FOLDER "Flang/Runtime Libraries") set(CMAKE_MSVC_RUNTIME_LIBRARY MultiThreadedDLL) add_flang_library(FortranRuntime.dynamic ${sources} LINK_LIBS FortranDecimal.dynamic INSTALL_WITH_TOOLCHAIN) + set_target_properties(FortranRuntime.dynamic PROPERTIES FOLDER "Flang/Runtime Libraries") set(CMAKE_MSVC_RUNTIME_LIBRARY MultiThreadedDebug) add_flang_library(FortranRuntime.static_dbg ${sources} LINK_LIBS FortranDecimal.static_dbg INSTALL_WITH_TOOLCHAIN) + set_target_properties(FortranRuntime.static_dbg PROPERTIES FOLDER "Flang/Runtime Libraries") set(CMAKE_MSVC_RUNTIME_LIBRARY MultiThreadedDebugDLL) add_flang_library(FortranRuntime.dynamic_dbg ${sources} LINK_LIBS FortranDecimal.dynamic_dbg INSTALL_WITH_TOOLCHAIN) +
[llvm-branch-commits] [mlir] [mlir] Revise IDE folder structure (PR #89749)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89749 >From 82bac5ccd7d6d2b4e146ed4e383a8484e735606e Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:08:54 +0200 Subject: [PATCH 1/2] [mlir] Revise IDE folder structure --- mlir/CMakeLists.txt| 9 ++--- mlir/cmake/modules/AddMLIR.cmake | 5 +++-- mlir/docs/CMakeLists.txt | 1 + mlir/examples/toy/CMakeLists.txt | 2 +- mlir/examples/transform/CMakeLists.txt | 1 + mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt | 2 ++ mlir/lib/TableGen/CMakeLists.txt | 1 + mlir/test/CAPI/CMakeLists.txt | 2 ++ mlir/test/CMakeLists.txt | 2 +- mlir/tools/mlir-linalg-ods-gen/CMakeLists.txt | 1 + mlir/tools/mlir-pdll/CMakeLists.txt| 1 - mlir/tools/mlir-tblgen/CMakeLists.txt | 1 - mlir/unittests/CMakeLists.txt | 2 -- 13 files changed, 19 insertions(+), 11 deletions(-) diff --git a/mlir/CMakeLists.txt b/mlir/CMakeLists.txt index 5c4301af040b4..0ff6658f831f5 100644 --- a/mlir/CMakeLists.txt +++ b/mlir/CMakeLists.txt @@ -1,5 +1,6 @@ # MLIR project. cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "MLIR") if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) @@ -96,12 +97,13 @@ endif() # tablegen'd targets. # mlir-generic-headers are dialect-independent. add_custom_target(mlir-generic-headers) -set_target_properties(mlir-generic-headers PROPERTIES FOLDER "Misc") +set_target_properties(mlir-generic-headers PROPERTIES FOLDER "MLIR/Resources") # mlir-headers may be dialect-dependent. add_custom_target(mlir-headers) -set_target_properties(mlir-headers PROPERTIES FOLDER "Misc") +set_target_properties(mlir-headers PROPERTIES FOLDER "MLIR/Resources") add_dependencies(mlir-headers mlir-generic-headers) add_custom_target(mlir-doc) +set_target_properties(mlir-doc PROPERTIES FOLDER "MLIR/Docs") # Only enable execution engine if the native target is available. if(${LLVM_NATIVE_ARCH} IN_LIST LLVM_TARGETS_TO_BUILD) @@ -198,6 +200,7 @@ add_subdirectory(lib/CAPI) if (MLIR_INCLUDE_TESTS) add_definitions(-DMLIR_INCLUDE_TESTS) add_custom_target(MLIRUnitTests) + set_target_properties(MLIRUnitTests PROPERTIES FOLDER "MLIR/Tests") if (EXISTS ${LLVM_THIRD_PARTY_DIR}/unittest/googletest/include/gtest/gtest.h) add_subdirectory(unittests) else() @@ -258,7 +261,7 @@ endif() # Custom target to install all mlir libraries add_custom_target(mlir-libraries) -set_target_properties(mlir-libraries PROPERTIES FOLDER "Misc") +set_target_properties(mlir-libraries PROPERTIES FOLDER "MLIR/Install") if (NOT LLVM_ENABLE_IDE) add_llvm_install_targets(install-mlir-libraries diff --git a/mlir/cmake/modules/AddMLIR.cmake b/mlir/cmake/modules/AddMLIR.cmake index 1d2ed748bc2f1..5a9a5b799763a 100644 --- a/mlir/cmake/modules/AddMLIR.cmake +++ b/mlir/cmake/modules/AddMLIR.cmake @@ -173,6 +173,7 @@ function(add_mlir_doc doc_filename output_file output_directory command) DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${output_file}.md) add_custom_target(${output_file}DocGen DEPENDS ${GEN_DOC_FILE}) add_dependencies(mlir-doc ${output_file}DocGen) + set_target_properties(${output_file}DocGen PROPERTIES FOLDER "MLIR/Docs") endfunction() # Sets ${srcs} to contain the list of additional headers for the target. Extra @@ -252,7 +253,7 @@ function(add_mlir_example_library name) list(APPEND ARG_DEPENDS mlir-generic-headers) llvm_add_library(${name} ${LIBTYPE} ${ARG_UNPARSED_ARGUMENTS} ${srcs} DEPENDS ${ARG_DEPENDS} LINK_COMPONENTS ${ARG_LINK_COMPONENTS} LINK_LIBS ${ARG_LINK_LIBS}) - set_target_properties(${name} PROPERTIES FOLDER "Examples") + set_target_properties(${name} PROPERTIES FOLDER "MLIR/Examples") if (LLVM_BUILD_EXAMPLES AND NOT ${ARG_DISABLE_INSTALL}) add_mlir_library_install(${name}) else() @@ -329,7 +330,7 @@ function(add_mlir_library name) # Add empty "phony" target add_custom_target(${name}) endif() - set_target_properties(${name} PROPERTIES FOLDER "MLIR libraries") + set_target_properties(${name} PROPERTIES FOLDER "MLIR/Libraries") # Setup aggregate. if(ARG_ENABLE_AGGREGATION) diff --git a/mlir/docs/CMakeLists.txt b/mlir/docs/CMakeLists.txt index 36cd3f9983881..43192569847cf 100644 --- a/mlir/docs/CMakeLists.txt +++ b/mlir/docs/CMakeLists.txt @@ -78,6 +78,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating mlir doxygen documentation." VERBATIM) + set_target_properties(doxygen-mlir PROPERTIES FOLDER "MLIR/Docs") if (LLVM_BUILD_DOCS) add_dependencies(doxygen doxygen-mlir) diff --git a/mlir/examples/toy/CMakeLists.txt
[llvm-branch-commits] [lld] [lld] Revise IDE folder structure (PR #89747)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89747 >From 6c3206c8100ed68ab77ceb98741bef42659bcfc1 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:12:03 +0200 Subject: [PATCH] [lld] Revise IDE folder structure --- lld/CMakeLists.txt | 2 ++ lld/cmake/modules/AddLLD.cmake | 2 -- lld/test/CMakeLists.txt| 5 ++--- lld/unittests/CMakeLists.txt | 2 -- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/lld/CMakeLists.txt b/lld/CMakeLists.txt index cd8ba627306ed..64c9f23805509 100644 --- a/lld/CMakeLists.txt +++ b/lld/CMakeLists.txt @@ -1,4 +1,5 @@ cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "LLD") if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) @@ -192,6 +193,7 @@ add_subdirectory(tools/lld) if (LLVM_INCLUDE_TESTS) add_custom_target(LLDUnitTests) + set_target_properties(LLDUnitTests PROPERTIES FOLDER "LLD/Tests") if (TARGET llvm_gtest) add_subdirectory(unittests) endif() diff --git a/lld/cmake/modules/AddLLD.cmake b/lld/cmake/modules/AddLLD.cmake index 2ee066b415351..9f2684b6f933e 100644 --- a/lld/cmake/modules/AddLLD.cmake +++ b/lld/cmake/modules/AddLLD.cmake @@ -11,7 +11,6 @@ macro(add_lld_library name) set(ARG_ENABLE_SHARED SHARED) endif() llvm_add_library(${name} ${ARG_ENABLE_SHARED} ${ARG_UNPARSED_ARGUMENTS}) - set_target_properties(${name} PROPERTIES FOLDER "lld libraries") if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) get_target_export_arg(${name} LLD export_to_lldtargets) @@ -33,7 +32,6 @@ endmacro(add_lld_library) macro(add_lld_executable name) add_llvm_executable(${name} ${ARGN}) - set_target_properties(${name} PROPERTIES FOLDER "lld executables") endmacro(add_lld_executable) macro(add_lld_tool name) diff --git a/lld/test/CMakeLists.txt b/lld/test/CMakeLists.txt index bb6164f19dcef..25d8f0a424926 100644 --- a/lld/test/CMakeLists.txt +++ b/lld/test/CMakeLists.txt @@ -83,10 +83,9 @@ add_lit_testsuite(check-lld "Running lld test suite" ${CMAKE_CURRENT_BINARY_DIR} DEPENDS ${LLD_TEST_DEPS} ) -set_target_properties(check-lld PROPERTIES FOLDER "lld tests") add_custom_target(lld-test-depends DEPENDS ${LLD_TEST_DEPS}) -set_target_properties(lld-test-depends PROPERTIES FOLDER "lld tests") +set_target_properties(lld-test-depends PROPERTIES FOLDER "LLD/Tests") add_lit_testsuites(LLD ${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${LLD_TEST_DEPS} @@ -95,4 +94,4 @@ add_lit_testsuites(LLD ${CMAKE_CURRENT_SOURCE_DIR} # Add a legacy target spelling: lld-test add_custom_target(lld-test) add_dependencies(lld-test check-lld) -set_target_properties(lld-test PROPERTIES FOLDER "lld tests") +set_target_properties(lld-test PROPERTIES FOLDER "LLD/Tests") diff --git a/lld/unittests/CMakeLists.txt b/lld/unittests/CMakeLists.txt index ac878fa019083..ffaea3f207833 100644 --- a/lld/unittests/CMakeLists.txt +++ b/lld/unittests/CMakeLists.txt @@ -1,5 +1,3 @@ -set_target_properties(LLDUnitTests PROPERTIES FOLDER "lld tests") - function(add_lld_unittests test_dirname) add_unittest(LLDUnitTests ${test_dirname} ${ARGN}) endfunction() ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang-tools-extra] [clang-tools-extra] Revise IDE folder structure (PR #89744)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89744 >From 937a7728542d880fd37c439bec6dca4ccd3f07d2 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:06:06 +0200 Subject: [PATCH] [clang-tools-extra] Revise IDE folder structure --- clang-tools-extra/CMakeLists.txt | 2 ++ clang-tools-extra/clang-tidy/CMakeLists.txt| 2 +- clang-tools-extra/clang-tidy/misc/CMakeLists.txt | 2 ++ clang-tools-extra/clangd/unittests/CMakeLists.txt | 1 + clang-tools-extra/docs/CMakeLists.txt | 1 + clang-tools-extra/include-cleaner/unittests/CMakeLists.txt | 1 + clang-tools-extra/pseudo/include/CMakeLists.txt| 1 + clang-tools-extra/pseudo/tool/CMakeLists.txt | 1 + clang-tools-extra/pseudo/unittests/CMakeLists.txt | 1 + clang-tools-extra/test/CMakeLists.txt | 1 - clang-tools-extra/unittests/CMakeLists.txt | 2 +- 11 files changed, 12 insertions(+), 3 deletions(-) diff --git a/clang-tools-extra/CMakeLists.txt b/clang-tools-extra/CMakeLists.txt index 6a3f741721ee6..f6a6b57b5ef0b 100644 --- a/clang-tools-extra/CMakeLists.txt +++ b/clang-tools-extra/CMakeLists.txt @@ -1,3 +1,5 @@ +set(LLVM_SUBPROJECT_TITLE "Clang Tools Extra") + include(CMakeDependentOption) include(GNUInstallDirs) diff --git a/clang-tools-extra/clang-tidy/CMakeLists.txt b/clang-tools-extra/clang-tidy/CMakeLists.txt index 7e1905aa897b7..430ea4cdbb38e 100644 --- a/clang-tools-extra/clang-tidy/CMakeLists.txt +++ b/clang-tools-extra/clang-tidy/CMakeLists.txt @@ -121,7 +121,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) PATTERN "*.h" ) add_custom_target(clang-tidy-headers) - set_target_properties(clang-tidy-headers PROPERTIES FOLDER "Misc") + set_target_properties(clang-tidy-headers PROPERTIES FOLDER "Clang Tools Extra/Resources") if(NOT LLVM_ENABLE_IDE) add_llvm_install_targets(install-clang-tidy-headers DEPENDS clang-tidy-headers diff --git a/clang-tools-extra/clang-tidy/misc/CMakeLists.txt b/clang-tools-extra/clang-tidy/misc/CMakeLists.txt index d9ec268650c05..4eda705c45d2a 100644 --- a/clang-tools-extra/clang-tidy/misc/CMakeLists.txt +++ b/clang-tools-extra/clang-tidy/misc/CMakeLists.txt @@ -15,6 +15,7 @@ add_custom_command( DEPENDS ${clang_tidy_confusable_chars_gen_target} ConfusableTable/confusables.txt) add_custom_target(genconfusable DEPENDS Confusables.inc) +set_target_properties(genconfusable PROPERTIES FOLDER "Clang Tools Extra/Tablegenning") add_clang_library(clangTidyMiscModule ConstCorrectnessCheck.cpp @@ -51,6 +52,7 @@ add_clang_library(clangTidyMiscModule genconfusable ClangDriverOptions ) +set_target_properties(clangTidyMiscModule PROPERTIES FOLDER "Clang Tools Extra/Libraries") clang_target_link_libraries(clangTidyMiscModule PRIVATE diff --git a/clang-tools-extra/clangd/unittests/CMakeLists.txt b/clang-tools-extra/clangd/unittests/CMakeLists.txt index 7f1ae5c43d80c..0d4628ccf25d8 100644 --- a/clang-tools-extra/clangd/unittests/CMakeLists.txt +++ b/clang-tools-extra/clangd/unittests/CMakeLists.txt @@ -29,6 +29,7 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/../quality/CompletionModel.cmake) gen_decision_forest(${CMAKE_CURRENT_SOURCE_DIR}/decision_forest_model DecisionForestRuntimeTest ::ns1::ns2::test::Example) add_custom_target(ClangdUnitTests) +set_target_properties(ClangdUnitTests PROPERTIES FOLDER "Clang Tools Extra/Tests") add_unittest(ClangdUnitTests ClangdTests Annotations.cpp ASTTests.cpp diff --git a/clang-tools-extra/docs/CMakeLists.txt b/clang-tools-extra/docs/CMakeLists.txt index 8f442e1f661ed..272db266b5054 100644 --- a/clang-tools-extra/docs/CMakeLists.txt +++ b/clang-tools-extra/docs/CMakeLists.txt @@ -77,6 +77,7 @@ if (DOXYGEN_FOUND) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating clang doxygen documentation." VERBATIM) +set_target_properties(doxygen-clang-tools PROPERTIES FOLDER "Clang Tools Extra/Docs") if (LLVM_BUILD_DOCS) add_dependencies(doxygen doxygen-clang-tools) diff --git a/clang-tools-extra/include-cleaner/unittests/CMakeLists.txt b/clang-tools-extra/include-cleaner/unittests/CMakeLists.txt index 1e89534b51116..416535649f622 100644 --- a/clang-tools-extra/include-cleaner/unittests/CMakeLists.txt +++ b/clang-tools-extra/include-cleaner/unittests/CMakeLists.txt @@ -4,6 +4,7 @@ set(LLVM_LINK_COMPONENTS ) add_custom_target(ClangIncludeCleanerUnitTests) +set_target_properties(ClangIncludeCleanerUnitTests PROPERTIES FOLDER "Clang Tools Extra/Tests") add_unittest(ClangIncludeCleanerUnitTests ClangIncludeCleanerTests AnalysisTest.cpp FindHeadersTest.cpp diff --git a/clang-tools-extra/pseudo/include/CMakeLists.txt b/clang-tools-extra/pseudo/include/CMakeLists.txt index
[llvm-branch-commits] [polly] [polly] Revise IDE folder structure (PR #89752)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/89752 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [libc] [libcxx] [libcxxabi] [libunwind] [llvm] [pstl] Revise IDE folder structure (PR #89755)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/89755 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [openmp] [openmp] Revise IDE folder structure (PR #89750)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/89750 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [mlir] [mlir] Revise IDE folder structure (PR #89749)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/89749 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [lldb] [lldb] Revise IDE folder structure (PR #89748)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/89748 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [lld] [lld] Revise IDE folder structure (PR #89747)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/89747 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [libclc] [libclc] Revise IDE folder structure (PR #89746)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/89746 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [flang] [flang] Revise IDE folder structure (PR #89745)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/89745 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [compiler-rt] [compiler-rt] Revise IDE folder structure (PR #89753)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/89753 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang-tools-extra] [clang-tools-extra] Revise IDE folder structure (PR #89744)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/89744 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [clang] Revise IDE folder structure (PR #89743)
Meinersbur wrote: > Oh the fun of PR numbers now lining up with Phabricator numbers. I thought > you meant https://reviews.llvm.org/D89741 and was very confused until I saw > #89741. :-D I'll take a look! Well, seems I still have muscle memory from Phabricator times :-) Thanks for the review! https://github.com/llvm/llvm-project/pull/89743 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [llvm] [openmp] [Clang][OpenMP] Add interchange directive (PR #92030)
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/92030 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [llvm] [openmp] [Clang][OpenMP] Add reverse directive (PR #92916)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/92916 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [llvm] [openmp] [Clang][OpenMP] Add interchange directive (PR #92030)
Meinersbur wrote: Extracted out the reverse part into #92916 https://github.com/llvm/llvm-project/pull/92030 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [llvm] [openmp] [Clang][OpenMP] Add interchange directive (PR #92030)
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/92030 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [llvm] [openmp] [Clang][OpenMP] Add reverse and interchange directives (PR #92030)
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/92030 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [llvm] [openmp] [Clang][OpenMP] Add reverse and interchange directives (PR #92030)
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/92030 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [clang] Revise IDE folder structure (PR #89743)
Meinersbur wrote: @AaronBallman Would you mind reviewing D89741 ? I was convinced a stakeholder there but they decided to drop out instead of approving it. https://github.com/llvm/llvm-project/pull/89743 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [mlir] [MLIR][OpenMP] Support clause-based representation of operations (PR #92519)
Meinersbur wrote: I like the idea, but also have some questions: 1. How does an operation definition look like with all its clauses defined? Does it have to be repeated for each operation supporting the same clause(s)? 2. It seems this requires all properties of a clause specified in its constructor. Wouldn't it be better if you could subclass `OpenMP_Clause` and in there overwrite all the properties that are non-default? 3. Have you considered to define/derive from all this info in OpenMP.td of LLVMFrontend? Clause information should be language-independent. https://github.com/llvm/llvm-project/pull/92519 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [llvm] [openmp] [Clang][OpenMP] Add reverse and interchange directives (PR #92030)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/92030 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [flang] [llvm] [openmp] [Clang][OpenMP] Add reverse and interchange directives (PR #92030)
Meinersbur wrote: Buildkite failure is unrelated: `fatal error C1060: compiler is out of heap space` https://github.com/llvm/llvm-project/pull/92030 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [clang] Revise IDE folder structure (PR #89743)
Meinersbur wrote: @AaronBallman Thanks for having a look. > With this patch, I get errors when loading a visual studio solution generated > with these change, and all of clang's libraries are placed at the top level. > The error is a dialog box saying "The solution already contains an item named > 'clang'." I got similar errors with "Unittest" and "UnitTest". I only solved it by using "Unit". I am assuming this is because there is something else already with that name but inconsistent case. I never for this for "Clang"/"clang", but it could be when not all patches from the series are applied. Specifically I think clang-tools-extra may use "Clang"/"clang". > Another thing (that is existing behavior) worth noting is that at some point, > we lost the ability to browse directly to files in Visual Studio. Instead of > going to `Clang Libraries->clangDriver->Source Files->ToolChain.cpp`, you > have to go to `Object Libraries->obj.clangDriver->Source > Files->ToolChain.cpp` which is pretty strange. Your patch doesn't change > this, but if we're correcting folder structure behavior, we should probably > address that at the same time if we can. This is how CMake handles object libraries. There is one target `obj.clangDriver` that builds all the *.obj file, and a library that is not used. The target `clangDriver` then has a dependency on `obj.clangDriver` and has its *.obj files added, but not the source files. This is to be able to link a static library (`clangDriver_static`) and a dynamic library (`clangDriver`) at the [same time](https://github.com/llvm/llvm-project/blob/ca1bd5995f6ed934f9187305190a5abfac049173/llvm/cmake/modules/AddLLVM.cmake#L593) but compiling the source files just once. I don't know the reason, but in contrast to other subprojects Clang uses this build mode [even when building just one library](https://github.com/llvm/llvm-project/blob/ca1bd5995f6ed934f9187305190a5abfac049173/clang/cmake/modules/AddClang.cmake#L102). There is an exception for XCode, and we could do the same for MSVC (or add the source files as `ADDITIONAL_HEADERS` to make them show up). However, for this patch series I did not intent to change anything about how the build system works. https://github.com/llvm/llvm-project/pull/89743 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP][Tile] Allow non-constant tile sizes. (PR #91345)
@@ -17432,16 +17457,54 @@ OMPClause *SemaOpenMP::ActOnOpenMPSizesClause(ArrayRef SizeExprs, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc) { - for (Expr *SizeExpr : SizeExprs) { -ExprResult NumForLoopsResult = VerifyPositiveIntegerConstantInClause( -SizeExpr, OMPC_sizes, /*StrictlyPositive=*/true); -if (!NumForLoopsResult.isUsable()) - return nullptr; + SmallVector SanitizedSizeExprs; + llvm::append_range(SanitizedSizeExprs, SizeExprs); + + for (Expr * : SanitizedSizeExprs) { +// Skip if already sanitized, e.g. during a partial template instantiation. +if (!SizeExpr) + continue; + +bool IsValid = isNonNegativeIntegerValue(SizeExpr, SemaRef, OMPC_sizes, + /*StrictlyPositive=*/true); + +// isNonNegativeIntegerValue returns true for non-integral types (but still +// emits error diagnostic), so check for the expected type explicitly. +QualType SizeTy = SizeExpr->getType(); +if (!SizeTy->isIntegerType()) + IsValid = false; + +// Handling in templates is tricky. There are four possibilities to +// consider: +// +// 1a. The expression is valid and we are in a instantiated template or not +// in a template: +// Pass valid expression to be further analysed later in Sema. +// 1b. The expression is valid and we are in a template (including partial +// instantiation): +// isNonNegativeIntegerValue skipped any checks so there is no +// guarantee it will be correct after instantiation. +// ActOnOpenMPSizesClause will be called again at instantiation when +// it is not in a dependent context anymore. This may cause warnings +// to be emitted multiple times. +// 2a. The expression is invalid and we are in an instantiated template or +// not in a template: +// Invalidate the expression with a clearly wrong value (nullptr) so +// later in Sema we do not have to do the same validity analysis again +// or crash from unexpected data. Error diagnostics have already been +// emitted. +// 2b. The expression is invalid and we are in a template (including partial +// instantiation): +// Pass the invalid expression as-is, template instantiation may +// replace unexpected types/values with valid ones. The directives +// with this clause must not try to use these expressions in dependent +// contexts. Meinersbur wrote: Added clarification https://github.com/llvm/llvm-project/pull/91345 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP][Tile] Allow non-constant tile sizes. (PR #91345)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/91345 >From a2aa6950ce3880b8e669025d95ac9e72245e26a7 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 7 May 2024 16:42:41 +0200 Subject: [PATCH 1/5] Allow non-constant tile sizes --- clang/include/clang/Parse/Parser.h| 17 ++ clang/lib/Parse/ParseOpenMP.cpp | 65 -- clang/lib/Sema/SemaOpenMP.cpp | 113 +++-- clang/test/OpenMP/tile_ast_print.cpp | 17 ++ clang/test/OpenMP/tile_codegen.cpp| 216 -- clang/test/OpenMP/tile_messages.cpp | 50 +++- openmp/runtime/test/transform/tile/intfor.c | 187 +++ .../test/transform/tile/negtile_intfor.c | 44 .../tile/parallel-wsloop-collapse-intfor.cpp | 100 9 files changed, 737 insertions(+), 72 deletions(-) create mode 100644 openmp/runtime/test/transform/tile/intfor.c create mode 100644 openmp/runtime/test/transform/tile/negtile_intfor.c create mode 100644 openmp/runtime/test/transform/tile/parallel-wsloop-collapse-intfor.cpp diff --git a/clang/include/clang/Parse/Parser.h b/clang/include/clang/Parse/Parser.h index daefd4f28f011..1b500c11457f4 100644 --- a/clang/include/clang/Parse/Parser.h +++ b/clang/include/clang/Parse/Parser.h @@ -3553,6 +3553,23 @@ class Parser : public CodeCompletionHandler { OMPClause *ParseOpenMPVarListClause(OpenMPDirectiveKind DKind, OpenMPClauseKind Kind, bool ParseOnly); + /// Parses a clause consisting of a list of expressions. + /// + /// \param Kind The clause to parse. + /// \param ClauseNameLoc [out] The location of the clause name. + /// \param OpenLoc [out] The location of '('. + /// \param CloseLoc [out] The location of ')'. + /// \param Exprs [out] The parsed expressions. + /// \param ReqIntConst If true, each expression must be an integer constant. + /// + /// \return Whether the clause was parsed successfully. + bool ParseOpenMPExprListClause(OpenMPClauseKind Kind, + SourceLocation , + SourceLocation , + SourceLocation , + SmallVectorImpl , + bool ReqIntConst = false); + /// Parses and creates OpenMP 5.0 iterators expression: /// = 'iterator' '(' { [ ] identifier = /// }+ ')' diff --git a/clang/lib/Parse/ParseOpenMP.cpp b/clang/lib/Parse/ParseOpenMP.cpp index 18ba1185ee8de..b8b32f9546c4f 100644 --- a/clang/lib/Parse/ParseOpenMP.cpp +++ b/clang/lib/Parse/ParseOpenMP.cpp @@ -3107,34 +3107,14 @@ bool Parser::ParseOpenMPSimpleVarList( } OMPClause *Parser::ParseOpenMPSizesClause() { - SourceLocation ClauseNameLoc = ConsumeToken(); + SourceLocation ClauseNameLoc, OpenLoc, CloseLoc; SmallVector ValExprs; - - BalancedDelimiterTracker T(*this, tok::l_paren, tok::annot_pragma_openmp_end); - if (T.consumeOpen()) { -Diag(Tok, diag::err_expected) << tok::l_paren; + if (ParseOpenMPExprListClause(OMPC_sizes, ClauseNameLoc, OpenLoc, CloseLoc, +ValExprs)) return nullptr; - } - - while (true) { -ExprResult Val = ParseConstantExpression(); -if (!Val.isUsable()) { - T.skipToEnd(); - return nullptr; -} - -ValExprs.push_back(Val.get()); - -if (Tok.is(tok::r_paren) || Tok.is(tok::annot_pragma_openmp_end)) - break; - -ExpectAndConsume(tok::comma); - } - - T.consumeClose(); - return Actions.OpenMP().ActOnOpenMPSizesClause( - ValExprs, ClauseNameLoc, T.getOpenLocation(), T.getCloseLocation()); + return Actions.OpenMP().ActOnOpenMPSizesClause(ValExprs, ClauseNameLoc, + OpenLoc, CloseLoc); } OMPClause *Parser::ParseOpenMPUsesAllocatorClause(OpenMPDirectiveKind DKind) { @@ -4991,3 +4971,38 @@ OMPClause *Parser::ParseOpenMPVarListClause(OpenMPDirectiveKind DKind, OMPVarListLocTy Locs(Loc, LOpen, Data.RLoc); return Actions.OpenMP().ActOnOpenMPVarListClause(Kind, Vars, Locs, Data); } + +bool Parser::ParseOpenMPExprListClause(OpenMPClauseKind Kind, + SourceLocation , + SourceLocation , + SourceLocation , + SmallVectorImpl , + bool ReqIntConst) { + assert(getOpenMPClauseName(Kind) == PP.getSpelling(Tok) && + "Expected parsing to start at clause name"); + ClauseNameLoc = ConsumeToken(); + + // Parse inside of '(' and ')'. + BalancedDelimiterTracker T(*this, tok::l_paren, tok::annot_pragma_openmp_end); + if (T.consumeOpen()) { +Diag(Tok, diag::err_expected) << tok::l_paren; +return true; + } + + // Parse the list with interleaved commas. + do { +ExprResult Val = +ReqIntConst ?
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP][Tile] Allow non-constant tile sizes. (PR #91345)
@@ -15197,6 +15202,36 @@ StmtResult SemaOpenMP::ActOnOpenMPTileDirective(ArrayRef Clauses, // Once the original iteration values are set, append the innermost body. Stmt *Inner = Body; + auto MakeDimTileSize = [ = this->SemaRef, , , + SizesClause, CurScope](int I) -> Expr * { +Expr *DimTileSizeExpr = SizesClause->getSizesRefs()[I]; +if (isa(DimTileSizeExpr)) + return AssertSuccess(CopyTransformer.TransformExpr(DimTileSizeExpr)); + +// When the tile size is not a constant but a variable, it is possible to +// pass non-positive numbers. To preserve the invariant that every loop Meinersbur wrote: Added the example to the comment to clarify https://github.com/llvm/llvm-project/pull/91345 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP][Tile] Allow non-constant tile sizes. (PR #91345)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/91345 >From a2aa6950ce3880b8e669025d95ac9e72245e26a7 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 7 May 2024 16:42:41 +0200 Subject: [PATCH 1/4] Allow non-constant tile sizes --- clang/include/clang/Parse/Parser.h| 17 ++ clang/lib/Parse/ParseOpenMP.cpp | 65 -- clang/lib/Sema/SemaOpenMP.cpp | 113 +++-- clang/test/OpenMP/tile_ast_print.cpp | 17 ++ clang/test/OpenMP/tile_codegen.cpp| 216 -- clang/test/OpenMP/tile_messages.cpp | 50 +++- openmp/runtime/test/transform/tile/intfor.c | 187 +++ .../test/transform/tile/negtile_intfor.c | 44 .../tile/parallel-wsloop-collapse-intfor.cpp | 100 9 files changed, 737 insertions(+), 72 deletions(-) create mode 100644 openmp/runtime/test/transform/tile/intfor.c create mode 100644 openmp/runtime/test/transform/tile/negtile_intfor.c create mode 100644 openmp/runtime/test/transform/tile/parallel-wsloop-collapse-intfor.cpp diff --git a/clang/include/clang/Parse/Parser.h b/clang/include/clang/Parse/Parser.h index daefd4f28f011..1b500c11457f4 100644 --- a/clang/include/clang/Parse/Parser.h +++ b/clang/include/clang/Parse/Parser.h @@ -3553,6 +3553,23 @@ class Parser : public CodeCompletionHandler { OMPClause *ParseOpenMPVarListClause(OpenMPDirectiveKind DKind, OpenMPClauseKind Kind, bool ParseOnly); + /// Parses a clause consisting of a list of expressions. + /// + /// \param Kind The clause to parse. + /// \param ClauseNameLoc [out] The location of the clause name. + /// \param OpenLoc [out] The location of '('. + /// \param CloseLoc [out] The location of ')'. + /// \param Exprs [out] The parsed expressions. + /// \param ReqIntConst If true, each expression must be an integer constant. + /// + /// \return Whether the clause was parsed successfully. + bool ParseOpenMPExprListClause(OpenMPClauseKind Kind, + SourceLocation , + SourceLocation , + SourceLocation , + SmallVectorImpl , + bool ReqIntConst = false); + /// Parses and creates OpenMP 5.0 iterators expression: /// = 'iterator' '(' { [ ] identifier = /// }+ ')' diff --git a/clang/lib/Parse/ParseOpenMP.cpp b/clang/lib/Parse/ParseOpenMP.cpp index 18ba1185ee8de..b8b32f9546c4f 100644 --- a/clang/lib/Parse/ParseOpenMP.cpp +++ b/clang/lib/Parse/ParseOpenMP.cpp @@ -3107,34 +3107,14 @@ bool Parser::ParseOpenMPSimpleVarList( } OMPClause *Parser::ParseOpenMPSizesClause() { - SourceLocation ClauseNameLoc = ConsumeToken(); + SourceLocation ClauseNameLoc, OpenLoc, CloseLoc; SmallVector ValExprs; - - BalancedDelimiterTracker T(*this, tok::l_paren, tok::annot_pragma_openmp_end); - if (T.consumeOpen()) { -Diag(Tok, diag::err_expected) << tok::l_paren; + if (ParseOpenMPExprListClause(OMPC_sizes, ClauseNameLoc, OpenLoc, CloseLoc, +ValExprs)) return nullptr; - } - - while (true) { -ExprResult Val = ParseConstantExpression(); -if (!Val.isUsable()) { - T.skipToEnd(); - return nullptr; -} - -ValExprs.push_back(Val.get()); - -if (Tok.is(tok::r_paren) || Tok.is(tok::annot_pragma_openmp_end)) - break; - -ExpectAndConsume(tok::comma); - } - - T.consumeClose(); - return Actions.OpenMP().ActOnOpenMPSizesClause( - ValExprs, ClauseNameLoc, T.getOpenLocation(), T.getCloseLocation()); + return Actions.OpenMP().ActOnOpenMPSizesClause(ValExprs, ClauseNameLoc, + OpenLoc, CloseLoc); } OMPClause *Parser::ParseOpenMPUsesAllocatorClause(OpenMPDirectiveKind DKind) { @@ -4991,3 +4971,38 @@ OMPClause *Parser::ParseOpenMPVarListClause(OpenMPDirectiveKind DKind, OMPVarListLocTy Locs(Loc, LOpen, Data.RLoc); return Actions.OpenMP().ActOnOpenMPVarListClause(Kind, Vars, Locs, Data); } + +bool Parser::ParseOpenMPExprListClause(OpenMPClauseKind Kind, + SourceLocation , + SourceLocation , + SourceLocation , + SmallVectorImpl , + bool ReqIntConst) { + assert(getOpenMPClauseName(Kind) == PP.getSpelling(Tok) && + "Expected parsing to start at clause name"); + ClauseNameLoc = ConsumeToken(); + + // Parse inside of '(' and ')'. + BalancedDelimiterTracker T(*this, tok::l_paren, tok::annot_pragma_openmp_end); + if (T.consumeOpen()) { +Diag(Tok, diag::err_expected) << tok::l_paren; +return true; + } + + // Parse the list with interleaved commas. + do { +ExprResult Val = +ReqIntConst ?
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP] Fix tile/unroll on iterator- and foreach-loops. (PR #91459)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/91459 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP][Tile] Allow non-constant tile sizes. (PR #91345)
@@ -4991,3 +4971,38 @@ OMPClause *Parser::ParseOpenMPVarListClause(OpenMPDirectiveKind DKind, OMPVarListLocTy Locs(Loc, LOpen, Data.RLoc); return Actions.OpenMP().ActOnOpenMPVarListClause(Kind, Vars, Locs, Data); } + +bool Parser::ParseOpenMPExprListClause(OpenMPClauseKind Kind, + SourceLocation , + SourceLocation , + SourceLocation , + SmallVectorImpl , + bool ReqIntConst) { + assert(getOpenMPClauseName(Kind) == PP.getSpelling(Tok) && + "Expected parsing to start at clause name"); + ClauseNameLoc = ConsumeToken(); + + // Parse inside of '(' and ')'. + BalancedDelimiterTracker T(*this, tok::l_paren, tok::annot_pragma_openmp_end); + if (T.consumeOpen()) { +Diag(Tok, diag::err_expected) << tok::l_paren; +return true; + } + + // Parse the list with interleaved commas. + do { +ExprResult Val = +ReqIntConst ? ParseConstantExpression() : ParseAssignmentExpression(); +if (!Val.isUsable()) { + // Encountered something other than an expression; abort to ')'. + T.skipToEnd(); + return true; Meinersbur wrote: Callers should not use the output parameters when returning true. This seems to be common for `Parse...` methods, such as `ParseOpenACCIntExprList`, `parseOpenMPDeclareMapperVarDecl`, `ParseOpenMPParensExpr`, ... https://github.com/llvm/llvm-project/pull/91345 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP][Tile] Allow non-constant tile sizes. (PR #91345)
@@ -17432,16 +17457,54 @@ OMPClause *SemaOpenMP::ActOnOpenMPSizesClause(ArrayRef SizeExprs, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc) { - for (Expr *SizeExpr : SizeExprs) { -ExprResult NumForLoopsResult = VerifyPositiveIntegerConstantInClause( -SizeExpr, OMPC_sizes, /*StrictlyPositive=*/true); -if (!NumForLoopsResult.isUsable()) - return nullptr; + SmallVector SanitizedSizeExprs; + llvm::append_range(SanitizedSizeExprs, SizeExprs); + + for (Expr * : SanitizedSizeExprs) { +// Skip if already sanitized, e.g. during a partial template instantiation. +if (!SizeExpr) + continue; + +bool IsValid = isNonNegativeIntegerValue(SizeExpr, SemaRef, OMPC_sizes, + /*StrictlyPositive=*/true); + +// isNonNegativeIntegerValue returns true for non-integral types (but still +// emits error diagnostic), so check for the expected type explicitly. +QualType SizeTy = SizeExpr->getType(); +if (!SizeTy->isIntegerType()) + IsValid = false; + +// Handling in templates is tricky. There are four possibilities to +// consider: +// +// 1a. The expression is valid and we are in a instantiated template or not +// in a template: +// Pass valid expression to be further analysed later in Sema. +// 1b. The expression is valid and we are in a template (including partial +// instantiation): +// isNonNegativeIntegerValue skipped any checks so there is no +// guarantee it will be correct after instantiation. +// ActOnOpenMPSizesClause will be called again at instantiation when +// it is not in a dependent context anymore. This may cause warnings +// to be emitted multiple times. +// 2a. The expression is invalid and we are in an instantiated template or +// not in a template: +// Invalidate the expression with a clearly wrong value (nullptr) so +// later in Sema we do not have to do the same validity analysis again +// or crash from unexpected data. Error diagnostics have already been +// emitted. +// 2b. The expression is invalid and we are in a template (including partial +// instantiation): +// Pass the invalid expression as-is, template instantiation may +// replace unexpected types/values with valid ones. The directives +// with this clause must not try to use these expressions in dependent +// contexts. Meinersbur wrote: Case 2b is already adhered to in `ActOnOpenMPTileDirective`: ``` // Delay tiling to when template is completely instantiated. if (SemaRef.CurContext->isDependentContext()) return OMPTileDirective::Create(Context, StartLoc, EndLoc, Clauses, NumLoops, AStmt, nullptr, nullptr); ``` Delaying further analysis seems generally to be what OpenMP does, e.g. ``` isNonNegativeIntegerValue(...) { if (!ValExpr->isTypeDependent() && !ValExpr->isValueDependent() && !ValExpr->isInstantiationDependent()) { ``` https://github.com/llvm/llvm-project/pull/91345 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP][Tile] Allow non-constant tile sizes. (PR #91345)
@@ -15197,6 +15202,36 @@ StmtResult SemaOpenMP::ActOnOpenMPTileDirective(ArrayRef Clauses, // Once the original iteration values are set, append the innermost body. Stmt *Inner = Body; + auto MakeDimTileSize = [ = this->SemaRef, , , + SizesClause, CurScope](int I) -> Expr * { +Expr *DimTileSizeExpr = SizesClause->getSizesRefs()[I]; +if (isa(DimTileSizeExpr)) + return AssertSuccess(CopyTransformer.TransformExpr(DimTileSizeExpr)); + +// When the tile size is not a constant but a variable, it is possible to +// pass non-positive numbers. To preserve the invariant that every loop Meinersbur wrote: ``` int a = 0; #pragma omp tile sizes(a) for (int i = 0; i < 42; ++i) body(i); ``` While I don't think it can be expected this gives any useful tiling, it should still execute `body` 42 times. https://github.com/llvm/llvm-project/pull/91345 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP][Tile] Allow non-constant tile sizes. (PR #91345)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/91345 >From a2aa6950ce3880b8e669025d95ac9e72245e26a7 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 7 May 2024 16:42:41 +0200 Subject: [PATCH 1/3] Allow non-constant tile sizes --- clang/include/clang/Parse/Parser.h| 17 ++ clang/lib/Parse/ParseOpenMP.cpp | 65 -- clang/lib/Sema/SemaOpenMP.cpp | 113 +++-- clang/test/OpenMP/tile_ast_print.cpp | 17 ++ clang/test/OpenMP/tile_codegen.cpp| 216 -- clang/test/OpenMP/tile_messages.cpp | 50 +++- openmp/runtime/test/transform/tile/intfor.c | 187 +++ .../test/transform/tile/negtile_intfor.c | 44 .../tile/parallel-wsloop-collapse-intfor.cpp | 100 9 files changed, 737 insertions(+), 72 deletions(-) create mode 100644 openmp/runtime/test/transform/tile/intfor.c create mode 100644 openmp/runtime/test/transform/tile/negtile_intfor.c create mode 100644 openmp/runtime/test/transform/tile/parallel-wsloop-collapse-intfor.cpp diff --git a/clang/include/clang/Parse/Parser.h b/clang/include/clang/Parse/Parser.h index daefd4f28f011..1b500c11457f4 100644 --- a/clang/include/clang/Parse/Parser.h +++ b/clang/include/clang/Parse/Parser.h @@ -3553,6 +3553,23 @@ class Parser : public CodeCompletionHandler { OMPClause *ParseOpenMPVarListClause(OpenMPDirectiveKind DKind, OpenMPClauseKind Kind, bool ParseOnly); + /// Parses a clause consisting of a list of expressions. + /// + /// \param Kind The clause to parse. + /// \param ClauseNameLoc [out] The location of the clause name. + /// \param OpenLoc [out] The location of '('. + /// \param CloseLoc [out] The location of ')'. + /// \param Exprs [out] The parsed expressions. + /// \param ReqIntConst If true, each expression must be an integer constant. + /// + /// \return Whether the clause was parsed successfully. + bool ParseOpenMPExprListClause(OpenMPClauseKind Kind, + SourceLocation , + SourceLocation , + SourceLocation , + SmallVectorImpl , + bool ReqIntConst = false); + /// Parses and creates OpenMP 5.0 iterators expression: /// = 'iterator' '(' { [ ] identifier = /// }+ ')' diff --git a/clang/lib/Parse/ParseOpenMP.cpp b/clang/lib/Parse/ParseOpenMP.cpp index 18ba1185ee8de..b8b32f9546c4f 100644 --- a/clang/lib/Parse/ParseOpenMP.cpp +++ b/clang/lib/Parse/ParseOpenMP.cpp @@ -3107,34 +3107,14 @@ bool Parser::ParseOpenMPSimpleVarList( } OMPClause *Parser::ParseOpenMPSizesClause() { - SourceLocation ClauseNameLoc = ConsumeToken(); + SourceLocation ClauseNameLoc, OpenLoc, CloseLoc; SmallVector ValExprs; - - BalancedDelimiterTracker T(*this, tok::l_paren, tok::annot_pragma_openmp_end); - if (T.consumeOpen()) { -Diag(Tok, diag::err_expected) << tok::l_paren; + if (ParseOpenMPExprListClause(OMPC_sizes, ClauseNameLoc, OpenLoc, CloseLoc, +ValExprs)) return nullptr; - } - - while (true) { -ExprResult Val = ParseConstantExpression(); -if (!Val.isUsable()) { - T.skipToEnd(); - return nullptr; -} - -ValExprs.push_back(Val.get()); - -if (Tok.is(tok::r_paren) || Tok.is(tok::annot_pragma_openmp_end)) - break; - -ExpectAndConsume(tok::comma); - } - - T.consumeClose(); - return Actions.OpenMP().ActOnOpenMPSizesClause( - ValExprs, ClauseNameLoc, T.getOpenLocation(), T.getCloseLocation()); + return Actions.OpenMP().ActOnOpenMPSizesClause(ValExprs, ClauseNameLoc, + OpenLoc, CloseLoc); } OMPClause *Parser::ParseOpenMPUsesAllocatorClause(OpenMPDirectiveKind DKind) { @@ -4991,3 +4971,38 @@ OMPClause *Parser::ParseOpenMPVarListClause(OpenMPDirectiveKind DKind, OMPVarListLocTy Locs(Loc, LOpen, Data.RLoc); return Actions.OpenMP().ActOnOpenMPVarListClause(Kind, Vars, Locs, Data); } + +bool Parser::ParseOpenMPExprListClause(OpenMPClauseKind Kind, + SourceLocation , + SourceLocation , + SourceLocation , + SmallVectorImpl , + bool ReqIntConst) { + assert(getOpenMPClauseName(Kind) == PP.getSpelling(Tok) && + "Expected parsing to start at clause name"); + ClauseNameLoc = ConsumeToken(); + + // Parse inside of '(' and ')'. + BalancedDelimiterTracker T(*this, tok::l_paren, tok::annot_pragma_openmp_end); + if (T.consumeOpen()) { +Diag(Tok, diag::err_expected) << tok::l_paren; +return true; + } + + // Parse the list with interleaved commas. + do { +ExprResult Val = +ReqIntConst ?
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP][Tile] Allow non-constant tile sizes. (PR #91345)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/91345 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP][Tile] Allow non-constant tile sizes. (PR #91345)
Meinersbur wrote: Test failure is from unrelated `DataFlowSanitizer-x86_64 :: release_shadow_space.c` https://github.com/llvm/llvm-project/pull/91345 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP][Tile] Allow non-constant tile sizes. (PR #91345)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/91345 >From a2aa6950ce3880b8e669025d95ac9e72245e26a7 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 7 May 2024 16:42:41 +0200 Subject: [PATCH 1/2] Allow non-constant tile sizes --- clang/include/clang/Parse/Parser.h| 17 ++ clang/lib/Parse/ParseOpenMP.cpp | 65 -- clang/lib/Sema/SemaOpenMP.cpp | 113 +++-- clang/test/OpenMP/tile_ast_print.cpp | 17 ++ clang/test/OpenMP/tile_codegen.cpp| 216 -- clang/test/OpenMP/tile_messages.cpp | 50 +++- openmp/runtime/test/transform/tile/intfor.c | 187 +++ .../test/transform/tile/negtile_intfor.c | 44 .../tile/parallel-wsloop-collapse-intfor.cpp | 100 9 files changed, 737 insertions(+), 72 deletions(-) create mode 100644 openmp/runtime/test/transform/tile/intfor.c create mode 100644 openmp/runtime/test/transform/tile/negtile_intfor.c create mode 100644 openmp/runtime/test/transform/tile/parallel-wsloop-collapse-intfor.cpp diff --git a/clang/include/clang/Parse/Parser.h b/clang/include/clang/Parse/Parser.h index daefd4f28f011..1b500c11457f4 100644 --- a/clang/include/clang/Parse/Parser.h +++ b/clang/include/clang/Parse/Parser.h @@ -3553,6 +3553,23 @@ class Parser : public CodeCompletionHandler { OMPClause *ParseOpenMPVarListClause(OpenMPDirectiveKind DKind, OpenMPClauseKind Kind, bool ParseOnly); + /// Parses a clause consisting of a list of expressions. + /// + /// \param Kind The clause to parse. + /// \param ClauseNameLoc [out] The location of the clause name. + /// \param OpenLoc [out] The location of '('. + /// \param CloseLoc [out] The location of ')'. + /// \param Exprs [out] The parsed expressions. + /// \param ReqIntConst If true, each expression must be an integer constant. + /// + /// \return Whether the clause was parsed successfully. + bool ParseOpenMPExprListClause(OpenMPClauseKind Kind, + SourceLocation , + SourceLocation , + SourceLocation , + SmallVectorImpl , + bool ReqIntConst = false); + /// Parses and creates OpenMP 5.0 iterators expression: /// = 'iterator' '(' { [ ] identifier = /// }+ ')' diff --git a/clang/lib/Parse/ParseOpenMP.cpp b/clang/lib/Parse/ParseOpenMP.cpp index 18ba1185ee8de..b8b32f9546c4f 100644 --- a/clang/lib/Parse/ParseOpenMP.cpp +++ b/clang/lib/Parse/ParseOpenMP.cpp @@ -3107,34 +3107,14 @@ bool Parser::ParseOpenMPSimpleVarList( } OMPClause *Parser::ParseOpenMPSizesClause() { - SourceLocation ClauseNameLoc = ConsumeToken(); + SourceLocation ClauseNameLoc, OpenLoc, CloseLoc; SmallVector ValExprs; - - BalancedDelimiterTracker T(*this, tok::l_paren, tok::annot_pragma_openmp_end); - if (T.consumeOpen()) { -Diag(Tok, diag::err_expected) << tok::l_paren; + if (ParseOpenMPExprListClause(OMPC_sizes, ClauseNameLoc, OpenLoc, CloseLoc, +ValExprs)) return nullptr; - } - - while (true) { -ExprResult Val = ParseConstantExpression(); -if (!Val.isUsable()) { - T.skipToEnd(); - return nullptr; -} - -ValExprs.push_back(Val.get()); - -if (Tok.is(tok::r_paren) || Tok.is(tok::annot_pragma_openmp_end)) - break; - -ExpectAndConsume(tok::comma); - } - - T.consumeClose(); - return Actions.OpenMP().ActOnOpenMPSizesClause( - ValExprs, ClauseNameLoc, T.getOpenLocation(), T.getCloseLocation()); + return Actions.OpenMP().ActOnOpenMPSizesClause(ValExprs, ClauseNameLoc, + OpenLoc, CloseLoc); } OMPClause *Parser::ParseOpenMPUsesAllocatorClause(OpenMPDirectiveKind DKind) { @@ -4991,3 +4971,38 @@ OMPClause *Parser::ParseOpenMPVarListClause(OpenMPDirectiveKind DKind, OMPVarListLocTy Locs(Loc, LOpen, Data.RLoc); return Actions.OpenMP().ActOnOpenMPVarListClause(Kind, Vars, Locs, Data); } + +bool Parser::ParseOpenMPExprListClause(OpenMPClauseKind Kind, + SourceLocation , + SourceLocation , + SourceLocation , + SmallVectorImpl , + bool ReqIntConst) { + assert(getOpenMPClauseName(Kind) == PP.getSpelling(Tok) && + "Expected parsing to start at clause name"); + ClauseNameLoc = ConsumeToken(); + + // Parse inside of '(' and ')'. + BalancedDelimiterTracker T(*this, tok::l_paren, tok::annot_pragma_openmp_end); + if (T.consumeOpen()) { +Diag(Tok, diag::err_expected) << tok::l_paren; +return true; + } + + // Parse the list with interleaved commas. + do { +ExprResult Val = +ReqIntConst ?
[llvm-branch-commits] [clang] [openmp] [Clang][OpenMP][Tile] Allow non-constant tile sizes. (PR #91345)
https://github.com/Meinersbur created https://github.com/llvm/llvm-project/pull/91345 Allow non-constants in the `sizes` clause such as ``` #pragma omp tile sizes(a) for (int i = 0; i < n; ++i) ``` This is permitted since tile was introduced in [OpenMP 5.1](https://www.openmp.org/spec-html/5.1/openmpsu53.html#x78-860002.11.9). It is possible to sneak-in negative numbers at runtime as in ``` int a = -1; #pragma omp tile sizes(a) ``` Even though it is not well-formed, it should still result in every loop iteration to be executed exactly once, an invariant of the tile construct that we should ensure. `ParseOpenMPExprListClause` is extracted-out to be reused by the `permutation` clause if the `interchange` construct. Some care was put in to ensure correct behavior in template contexts. This patch also adds end-to-end tests. This is to avoid errors like the off-by-one error I caused with the initial implementation of the unroll construct. >From a2aa6950ce3880b8e669025d95ac9e72245e26a7 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 7 May 2024 16:42:41 +0200 Subject: [PATCH] Allow non-constant tile sizes --- clang/include/clang/Parse/Parser.h| 17 ++ clang/lib/Parse/ParseOpenMP.cpp | 65 -- clang/lib/Sema/SemaOpenMP.cpp | 113 +++-- clang/test/OpenMP/tile_ast_print.cpp | 17 ++ clang/test/OpenMP/tile_codegen.cpp| 216 -- clang/test/OpenMP/tile_messages.cpp | 50 +++- openmp/runtime/test/transform/tile/intfor.c | 187 +++ .../test/transform/tile/negtile_intfor.c | 44 .../tile/parallel-wsloop-collapse-intfor.cpp | 100 9 files changed, 737 insertions(+), 72 deletions(-) create mode 100644 openmp/runtime/test/transform/tile/intfor.c create mode 100644 openmp/runtime/test/transform/tile/negtile_intfor.c create mode 100644 openmp/runtime/test/transform/tile/parallel-wsloop-collapse-intfor.cpp diff --git a/clang/include/clang/Parse/Parser.h b/clang/include/clang/Parse/Parser.h index daefd4f28f011a..1b500c11457f4d 100644 --- a/clang/include/clang/Parse/Parser.h +++ b/clang/include/clang/Parse/Parser.h @@ -3553,6 +3553,23 @@ class Parser : public CodeCompletionHandler { OMPClause *ParseOpenMPVarListClause(OpenMPDirectiveKind DKind, OpenMPClauseKind Kind, bool ParseOnly); + /// Parses a clause consisting of a list of expressions. + /// + /// \param Kind The clause to parse. + /// \param ClauseNameLoc [out] The location of the clause name. + /// \param OpenLoc [out] The location of '('. + /// \param CloseLoc [out] The location of ')'. + /// \param Exprs [out] The parsed expressions. + /// \param ReqIntConst If true, each expression must be an integer constant. + /// + /// \return Whether the clause was parsed successfully. + bool ParseOpenMPExprListClause(OpenMPClauseKind Kind, + SourceLocation , + SourceLocation , + SourceLocation , + SmallVectorImpl , + bool ReqIntConst = false); + /// Parses and creates OpenMP 5.0 iterators expression: /// = 'iterator' '(' { [ ] identifier = /// }+ ')' diff --git a/clang/lib/Parse/ParseOpenMP.cpp b/clang/lib/Parse/ParseOpenMP.cpp index 18ba1185ee8de7..b8b32f9546c4fb 100644 --- a/clang/lib/Parse/ParseOpenMP.cpp +++ b/clang/lib/Parse/ParseOpenMP.cpp @@ -3107,34 +3107,14 @@ bool Parser::ParseOpenMPSimpleVarList( } OMPClause *Parser::ParseOpenMPSizesClause() { - SourceLocation ClauseNameLoc = ConsumeToken(); + SourceLocation ClauseNameLoc, OpenLoc, CloseLoc; SmallVector ValExprs; - - BalancedDelimiterTracker T(*this, tok::l_paren, tok::annot_pragma_openmp_end); - if (T.consumeOpen()) { -Diag(Tok, diag::err_expected) << tok::l_paren; + if (ParseOpenMPExprListClause(OMPC_sizes, ClauseNameLoc, OpenLoc, CloseLoc, +ValExprs)) return nullptr; - } - - while (true) { -ExprResult Val = ParseConstantExpression(); -if (!Val.isUsable()) { - T.skipToEnd(); - return nullptr; -} - -ValExprs.push_back(Val.get()); - -if (Tok.is(tok::r_paren) || Tok.is(tok::annot_pragma_openmp_end)) - break; - -ExpectAndConsume(tok::comma); - } - - T.consumeClose(); - return Actions.OpenMP().ActOnOpenMPSizesClause( - ValExprs, ClauseNameLoc, T.getOpenLocation(), T.getCloseLocation()); + return Actions.OpenMP().ActOnOpenMPSizesClause(ValExprs, ClauseNameLoc, + OpenLoc, CloseLoc); } OMPClause *Parser::ParseOpenMPUsesAllocatorClause(OpenMPDirectiveKind DKind) { @@ -4991,3 +4971,38 @@ OMPClause *Parser::ParseOpenMPVarListClause(OpenMPDirectiveKind DKind, OMPVarListLocTy Locs(Loc, LOpen, Data.RLoc); return
[llvm-branch-commits] [compiler-rt] [compiler-rt] Revise IDE folder structure (PR #89753)
@@ -89,15 +89,15 @@ function(add_compiler_rt_object_libraries name) "${libname}" MATCHES ".*\.osx.*") foreach(arch ${LIB_ARCHS_${libname}}) list(APPEND target_flags - "SHELL:-target ${arch}-apple-macos${DARWIN_osx_MIN_VER} -darwin-target-variant ${arch}-apple-ios13.1-macabi") + "SHELL:-target ${arch}-apple-macos${DARWIN_osx_MIN_V357ER} -darwin-target-variant ${arch}-apple-ios13.1-macabi") Meinersbur wrote: This was not intentional. It is possible that I was trying to jump to line 357 and instead typed into the edited. I always look for unnecessary changes before pushing but seem to have missed this one. Thanks for noticing. https://github.com/llvm/llvm-project/pull/89753 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [compiler-rt] [compiler-rt] Revise IDE folder structure (PR #89753)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89753 >From 19ef183fcfb44fa8b9bae34bdc8eafb8d2425722 Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:15:38 +0200 Subject: [PATCH 1/2] [compiler-rt] Revise IDE folder structure --- compiler-rt/CMakeLists.txt| 3 ++- compiler-rt/cmake/Modules/AddCompilerRT.cmake | 21 ++- .../cmake/Modules/CompilerRTDarwinUtils.cmake | 4 ++-- .../cmake/Modules/CompilerRTUtils.cmake | 4 ++-- compiler-rt/cmake/base-config-ix.cmake| 4 ++-- compiler-rt/include/CMakeLists.txt| 2 +- compiler-rt/lib/asan/tests/CMakeLists.txt | 8 +++ compiler-rt/lib/builtins/CMakeLists.txt | 2 +- compiler-rt/lib/fuzzer/tests/CMakeLists.txt | 6 +++--- compiler-rt/lib/gwp_asan/tests/CMakeLists.txt | 4 ++-- .../lib/interception/tests/CMakeLists.txt | 4 ++-- compiler-rt/lib/memprof/tests/CMakeLists.txt | 4 ++-- compiler-rt/lib/orc/tests/CMakeLists.txt | 6 +++--- .../lib/sanitizer_common/tests/CMakeLists.txt | 4 ++-- compiler-rt/lib/stats/CMakeLists.txt | 2 +- compiler-rt/lib/tsan/CMakeLists.txt | 2 +- compiler-rt/lib/tsan/dd/CMakeLists.txt| 2 +- compiler-rt/lib/tsan/rtl/CMakeLists.txt | 2 +- compiler-rt/lib/xray/tests/CMakeLists.txt | 4 ++-- compiler-rt/test/CMakeLists.txt | 1 + compiler-rt/test/asan/CMakeLists.txt | 3 --- compiler-rt/test/asan_abi/CMakeLists.txt | 1 - compiler-rt/test/builtins/CMakeLists.txt | 1 - compiler-rt/test/cfi/CMakeLists.txt | 3 --- compiler-rt/test/dfsan/CMakeLists.txt | 1 - compiler-rt/test/fuzzer/CMakeLists.txt| 1 - compiler-rt/test/gwp_asan/CMakeLists.txt | 1 - compiler-rt/test/hwasan/CMakeLists.txt| 2 -- compiler-rt/test/interception/CMakeLists.txt | 1 - compiler-rt/test/lsan/CMakeLists.txt | 1 - compiler-rt/test/memprof/CMakeLists.txt | 3 --- compiler-rt/test/metadata/CMakeLists.txt | 1 - compiler-rt/test/msan/CMakeLists.txt | 1 - compiler-rt/test/orc/CMakeLists.txt | 1 - compiler-rt/test/profile/CMakeLists.txt | 1 - compiler-rt/test/safestack/CMakeLists.txt | 1 - .../test/sanitizer_common/CMakeLists.txt | 2 -- .../test/shadowcallstack/CMakeLists.txt | 1 - compiler-rt/test/tsan/CMakeLists.txt | 1 - compiler-rt/test/ubsan/CMakeLists.txt | 2 -- compiler-rt/test/ubsan_minimal/CMakeLists.txt | 1 - compiler-rt/test/xray/CMakeLists.txt | 1 - 42 files changed, 46 insertions(+), 74 deletions(-) diff --git a/compiler-rt/CMakeLists.txt b/compiler-rt/CMakeLists.txt index 6ce451e3cac2e3..65063e0057bbca 100644 --- a/compiler-rt/CMakeLists.txt +++ b/compiler-rt/CMakeLists.txt @@ -4,6 +4,7 @@ # based on the ability of the host toolchain to target various platforms. cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "Compiler-RT") if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) @@ -90,7 +91,7 @@ if (COMPILER_RT_STANDALONE_BUILD) if (TARGET intrinsics_gen) # Loading the llvm config causes this target to be imported so place it # under the appropriate folder in an IDE. -set_target_properties(intrinsics_gen PROPERTIES FOLDER "Compiler-RT Misc") +set_target_properties(intrinsics_gen PROPERTIES FOLDER "LLVM/Tablegenning") endif() find_package(Python3 COMPONENTS Interpreter) diff --git a/compiler-rt/cmake/Modules/AddCompilerRT.cmake b/compiler-rt/cmake/Modules/AddCompilerRT.cmake index 6e0d9dbff65a9e..61c727b36bff30 100644 --- a/compiler-rt/cmake/Modules/AddCompilerRT.cmake +++ b/compiler-rt/cmake/Modules/AddCompilerRT.cmake @@ -89,7 +89,7 @@ function(add_compiler_rt_object_libraries name) "${libname}" MATCHES ".*\.osx.*") foreach(arch ${LIB_ARCHS_${libname}}) list(APPEND target_flags - "SHELL:-target ${arch}-apple-macos${DARWIN_osx_MIN_VER} -darwin-target-variant ${arch}-apple-ios13.1-macabi") + "SHELL:-target ${arch}-apple-macos${DARWIN_osx_MIN_V357ER} -darwin-target-variant ${arch}-apple-ios13.1-macabi") endforeach() endif() @@ -97,7 +97,7 @@ function(add_compiler_rt_object_libraries name) ${extra_cflags_${libname}} ${target_flags}) set_property(TARGET ${libname} APPEND PROPERTY COMPILE_DEFINITIONS ${LIB_DEFS}) -set_target_properties(${libname} PROPERTIES FOLDER "Compiler-RT Libraries") +set_target_properties(${libname} PROPERTIES FOLDER "Compiler-RT/Libraries") if(APPLE) set_target_properties(${libname} PROPERTIES OSX_ARCHITECTURES "${LIB_ARCHS_${libname}}") @@ -116,7 +116,7 @@ endmacro() function(add_compiler_rt_component name) add_custom_target(${name}) - set_target_properties(${name} PROPERTIES FOLDER "Compiler-RT Misc") +
[llvm-branch-commits] [clang] [clang] Revise IDE folder structure (PR #89743)
https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89743 >From afadef1f53e03e2cf3a1695f3c693913b27382dd Mon Sep 17 00:00:00 2001 From: Michael Kruse Date: Tue, 23 Apr 2024 13:03:11 +0200 Subject: [PATCH 1/2] [clang] Revise IDE folder structure --- clang/CMakeLists.txt| 8 +--- clang/bindings/python/tests/CMakeLists.txt | 2 +- clang/cmake/modules/AddClang.cmake | 3 --- clang/docs/CMakeLists.txt | 1 + clang/lib/Analysis/FlowSensitive/CMakeLists.txt | 1 + clang/lib/Headers/CMakeLists.txt| 4 ++-- clang/lib/Tooling/CMakeLists.txt| 2 ++ clang/test/CMakeLists.txt | 5 ++--- clang/tools/libclang/CMakeLists.txt | 2 +- clang/unittests/CMakeLists.txt | 2 +- clang/utils/ClangVisualizers/CMakeLists.txt | 2 +- clang/utils/TableGen/CMakeLists.txt | 2 -- clang/utils/hmaptool/CMakeLists.txt | 2 +- 13 files changed, 18 insertions(+), 18 deletions(-) diff --git a/clang/CMakeLists.txt b/clang/CMakeLists.txt index f092766fa19f07..09da3ad9979ffd 100644 --- a/clang/CMakeLists.txt +++ b/clang/CMakeLists.txt @@ -1,4 +1,5 @@ cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "Clang") if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) @@ -390,7 +391,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) # Installing the headers needs to depend on generating any public # tablegen'd headers. add_custom_target(clang-headers DEPENDS clang-tablegen-targets) - set_target_properties(clang-headers PROPERTIES FOLDER "Misc") + set_target_properties(clang-headers PROPERTIES FOLDER "Clang/Resources") if(NOT LLVM_ENABLE_IDE) add_llvm_install_targets(install-clang-headers DEPENDS clang-headers @@ -398,6 +399,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) endif() add_custom_target(bash-autocomplete DEPENDS utils/bash-autocomplete.sh) + set_target_properties(bash-autocomplete PROPERTIES FOLDER "Clang/Misc") install(FILES utils/bash-autocomplete.sh DESTINATION "${CMAKE_INSTALL_DATADIR}/clang" COMPONENT bash-autocomplete) @@ -478,7 +480,7 @@ add_custom_target(clang-tablegen-targets omp_gen ClangDriverOptions ${CLANG_TABLEGEN_TARGETS}) -set_target_properties(clang-tablegen-targets PROPERTIES FOLDER "Misc") +set_target_properties(clang-tablegen-targets PROPERTIES FOLDER "Clang/Tablegenning/Targets") list(APPEND LLVM_COMMON_DEPENDS clang-tablegen-targets) # Force target to be built as soon as possible. Clang modules builds depend @@ -541,7 +543,7 @@ endif() # Custom target to install all clang libraries. add_custom_target(clang-libraries) -set_target_properties(clang-libraries PROPERTIES FOLDER "Misc") +set_target_properties(clang-libraries PROPERTIES FOLDER "Clang/Install") if(NOT LLVM_ENABLE_IDE) add_llvm_install_targets(install-clang-libraries diff --git a/clang/bindings/python/tests/CMakeLists.txt b/clang/bindings/python/tests/CMakeLists.txt index c4cd2539e9d6cf..2543cf739463d9 100644 --- a/clang/bindings/python/tests/CMakeLists.txt +++ b/clang/bindings/python/tests/CMakeLists.txt @@ -11,7 +11,7 @@ add_custom_target(check-clang-python WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/..) set(RUN_PYTHON_TESTS TRUE) -set_target_properties(check-clang-python PROPERTIES FOLDER "Clang tests") +set_target_properties(check-clang-python PROPERTIES FOLDER "Clang/Tests") # Tests require libclang.so which is only built with LLVM_ENABLE_PIC=ON if(NOT LLVM_ENABLE_PIC) diff --git a/clang/cmake/modules/AddClang.cmake b/clang/cmake/modules/AddClang.cmake index 75b0080f671564..a5ef639187d9db 100644 --- a/clang/cmake/modules/AddClang.cmake +++ b/clang/cmake/modules/AddClang.cmake @@ -26,7 +26,6 @@ function(clang_tablegen) if(CTG_TARGET) add_public_tablegen_target(${CTG_TARGET}) -set_target_properties( ${CTG_TARGET} PROPERTIES FOLDER "Clang tablegenning") set_property(GLOBAL APPEND PROPERTY CLANG_TABLEGEN_TARGETS ${CTG_TARGET}) endif() endfunction(clang_tablegen) @@ -138,13 +137,11 @@ macro(add_clang_library name) endif() endforeach() - set_target_properties(${name} PROPERTIES FOLDER "Clang libraries") set_clang_windows_version_resource_properties(${name}) endmacro(add_clang_library) macro(add_clang_executable name) add_llvm_executable( ${name} ${ARGN} ) - set_target_properties(${name} PROPERTIES FOLDER "Clang executables") set_clang_windows_version_resource_properties(${name}) endmacro(add_clang_executable) diff --git a/clang/docs/CMakeLists.txt b/clang/docs/CMakeLists.txt index 4163dd2d90ad5b..51e9db29f887f3 100644 --- a/clang/docs/CMakeLists.txt +++ b/clang/docs/CMakeLists.txt @@ -78,6 +78,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY
[llvm-branch-commits] [clang] [clang] Revise IDE folder structure (PR #89743)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/89743 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [bolt] Revise IDE folder structure (PR #89742)
https://github.com/Meinersbur ready_for_review https://github.com/llvm/llvm-project/pull/89742 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits