On 19/01/2026 10:45, Tobias Burnus wrote:
Hi,
Thomas Schwinge wrote:
I found that LLVM 19.1.7 (via Guix) doesn't support 'gfx9-4-generic':
Hmm, probably I messed up when doing 'git log' in the LLVM repo…
Do we update the LLVM requirement, or change the (default) configuration?
We surely should update https://gcc.gnu.org/install/
specific.html#amdgcn-x-amdhsa to move 'gfx9-4-generic' from LLVM 19 to 20.
For https://gcc.gnu.org/gcc-16/changes.html, we either could add gfx942
(MI300, supported since LLVM 18) and remove gfx9-4-generic from the
default set (+ do this also in GCC itself) – or change "LLVM 19 and
later" to "LLVM 20 and later".
I am more inclined to do the latter, i.e. require LLVM but keep
supporting MI300 + MI350 out of the box and using 'generic'. (Cf.
attached patches.)
Andrew Stubbs wrote:
Actually, I've been thinking we should document the minimum ROCm
version (6.4.0, according to the release notes), because that's the
most convenient source of LLVM for our users, and I suspect that that
compiler supports slightly more than its LLVM version (19.0.0) would
usually.
I am not sure I understand the ROCm as LLVM source comment.
I'm not talking about using ROCm as a HSA driver. I'm talking about
using the LLVM tools included within the ROCm installation. The ROCm 6.4
release includes an LLVM with version number 19, but it has AMD patches
on top that presumably include the new generic architectures (or else
the release notes are misleading).
However, we have in the release notes:
"Generic architectures require ROCm 6.4.0 or newer."
https://gcc.gnu.org/gcc-16/changes.html#amdgcn
and "note that … only ROCm 6.4.0 or newer is able to execute generic
code." at
note that … only ROCm 6.4.0 or newer is able to execute generic code.
* * *
How about the attached patches?
The patch are fine.
Andrew