Skip to content

Conversation

@Crivella
Copy link
Contributor

@Crivella Crivella commented Jun 5, 2025

Compilers

  • New llvm.py compiler taken from the original clang.py and unifying it with flang
    • Now allows defining a list of unsupported flang compiler options based on the passed LLVM version which will be excluded, from the compiler flags

Toolchains

  • LLVMtc: Similar to GCC uses bot GCCcore and SYSTEM as a subtoolchain
  • Lfbf equivalent of Gfbf
  • Lompi equivalent of Gompi
  • LFoss equivalent of Foss
    • Does not have the OpenBLAS child class as in Foss it is used only for toolchains older than 2021.0

TODO

  • Extensively investigate+test the comments related to the compiler flags on the old clang.py compiler
  • Extensively test interplay of compilations with libstdc++ and possibly libc++
  • Interplay between LLVM and CUDA / ROCm
  • Possibly have variants of LLVM like ROCm-LLVM work through the same toolchain

@Crivella
Copy link
Contributor Author

d6fe4f9

Apparently some tests were failing because xlompi is an actual toolchain and the test was using 'x' as an prefix to check that a toolchain with wrong name should not be found

@Crivella Crivella changed the title WIP: Implementing a new LLVM based toolchain Implementing a new LLVM based toolchain Jun 18, 2025
@Crivella Crivella marked this pull request as ready for review June 18, 2025 08:50
@boegel boegel modified the milestones: 5.x, release after 5.1.1 Jul 3, 2025
@Crivella Crivella force-pushed the exp-LLVMtoolchain branch from d6fe4f9 to bb62f27 Compare July 10, 2025 09:50
@Thyre
Copy link
Collaborator

Thyre commented Oct 21, 2025

I honestly don't really like the name LLVMtc. This deviates from the naming we have for GCC & Intel, and even the proposed name for the NVHPC split. In addition, people might be confused by the abbreviation, if they're not familiar with EasyBuild.

Should we go with llvm-compilers, similar to what we have with intel-compilers and nvidia-compilers? We could use this same naming scheme for other toolchains going forward (rocm-compilers, aocc-compilers, ...).

@Crivella
Copy link
Contributor Author

I am open to suggestions for the naming scheme.

I wanted to go for LLVM but that would conflict with the the EC for LLVM.
I think at the time i thought about renaming LLVM to LLVMcore, but i think that can be confusing toward being an LLVM.so only build without any additional project

@Thyre
Copy link
Collaborator

Thyre commented Oct 21, 2025

I think using <compiler-name>-compilers as a general rule sounds the best for me. GCC deviates from this, but I don't think we should change this one, given that it's around for basically forever.

But certainly open for other options. Maybe worth discussing in one of the bi-weekly meetings?

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants