From 63bdf0f4800fea453ca1257efe942995f0efa110 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Thu, 4 Dec 2025 17:00:23 +0100 Subject: [PATCH 1/4] add patch from https://github.com/llvm/llvm-project/pull/112551 --- ...x-ConstantFoldFP128-conversion-issue.patch | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0_fix-ConstantFoldFP128-conversion-issue.patch diff --git a/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0_fix-ConstantFoldFP128-conversion-issue.patch b/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0_fix-ConstantFoldFP128-conversion-issue.patch new file mode 100644 index 000000000000..44c85a5f1881 --- /dev/null +++ b/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0_fix-ConstantFoldFP128-conversion-issue.patch @@ -0,0 +1,30 @@ +From 6ee49080e4bb43efe7ede10bed15935853bbd434 Mon Sep 17 00:00:00 2001 +From: Chen Zheng +Date: Tue, 30 Jul 2024 09:02:07 +0800 +Subject: [PATCH] [NFC] fix build failure (#100993) + +Fix the build failure caused by +https://github.com/llvm/llvm-project/pull/94944 + +Fixes https://github.com/llvm/llvm-project/issues/100296 + +(cherry picked from commit 40b4fd7a3e81d32b29364a1b15337bcf817659c0) +--- + llvm/lib/Analysis/ConstantFolding.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/llvm/lib/Analysis/ConstantFolding.cpp b/llvm/lib/Analysis/ConstantFolding.cpp +index df75745645e04..ff30fece5fce9 100644 +--- a/llvm/lib/Analysis/ConstantFolding.cpp ++++ b/llvm/lib/Analysis/ConstantFolding.cpp +@@ -1784,8 +1784,8 @@ Constant *ConstantFoldFP(double (*NativeFP)(double), const APFloat &V, + } + + #if defined(HAS_IEE754_FLOAT128) && defined(HAS_LOGF128) +-Constant *ConstantFoldFP128(long double (*NativeFP)(long double), +- const APFloat &V, Type *Ty) { ++Constant *ConstantFoldFP128(float128 (*NativeFP)(float128), const APFloat &V, ++ Type *Ty) { + llvm_fenv_clearexcept(); + float128 Result = NativeFP(V.convertToQuad()); + if (llvm_fenv_testexcept()) { From 2eda30605c8bbefbef755dfdeca8baaf61b2a4ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Thu, 4 Dec 2025 17:00:38 +0100 Subject: [PATCH 2/4] use patch ROCm-LLVM-19.0.0_fix-ConstantFoldFP128-conversion-issue.patch --- .../r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb b/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb index ef16adfb2635..4fd6f99fcca8 100644 --- a/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb +++ b/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb @@ -75,6 +75,7 @@ components = [ # rename the extracted directory to the one that the LLVM easyblock expects 'extract_cmd': 'tar xfz %%s && mv %%(name)s-rocm-%s %%(name)s-%%(version)s.src' % _rocm_version, }], + 'patches': ['ROCm-LLVM-19.0.0_fix-ConstantFoldFP128-conversion-issue.patch'], 'start_dir': f'llvm-project-{_llvm_version}-rocm-{_rocm_version}.src', 'bootstrap': True, 'build_lld': True, @@ -108,6 +109,7 @@ components = [ }], 'patches': [ 'ROCm-LLVM-6.4.1_llvm-project-19.0.0_fix-offload-build.patch', + 'ROCm-LLVM-19.0.0_fix-ConstantFoldFP128-conversion-issue.patch', ], 'start_dir': f'llvm-project-openmp-{_llvm_version}-rocm-{_rocm_version}.src', 'bootstrap': True, From 4448a2e7006f75b91aad95169732d9692adc5dec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Thu, 4 Dec 2025 17:01:55 +0100 Subject: [PATCH 3/4] rename ROCm-LLVM-6.4.1_llvm-project-19.0.0_fix-offload-build.patch to ROCm-LLVM-19.0.0_fix-offload-build.patch --- .../r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb | 4 ++-- ...d-build.patch => ROCm-LLVM-19.0.0_fix-offload-build.patch} | 0 2 files changed, 2 insertions(+), 2 deletions(-) rename easybuild/easyconfigs/r/ROCm-LLVM/{ROCm-LLVM-6.4.1_llvm-project-19.0.0_fix-offload-build.patch => ROCm-LLVM-19.0.0_fix-offload-build.patch} (100%) diff --git a/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb b/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb index 4fd6f99fcca8..3273991edb1d 100644 --- a/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb +++ b/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb @@ -51,7 +51,7 @@ checksums = [{ 'f72d100a46a2dd9f4c870cef156604777f1bdb1841df039d14bf37b19814b9da', 'aomp-extras-rocm-6.4.1.tar.gz': 'cf20b02b1f99f506c198866ef03f2265dc355627760f82cda3878d5bc6486afc', - 'ROCm-LLVM-6.4.1_llvm-project-19.0.0_fix-offload-build.patch': + 'ROCm-LLVM-19.0.0_fix-offload-build.patch': '2ce1454aa3d2f50795bbc331c239f44be07f8ec836978cad130406af4340e30d', }] @@ -108,7 +108,7 @@ components = [ 'extract_cmd': 'tar xfz %%s && mv llvm-project-rocm-%s %%(name)s-%%(version)s.src' % _rocm_version, }], 'patches': [ - 'ROCm-LLVM-6.4.1_llvm-project-19.0.0_fix-offload-build.patch', + 'ROCm-LLVM-19.0.0_fix-offload-build.patch', 'ROCm-LLVM-19.0.0_fix-ConstantFoldFP128-conversion-issue.patch', ], 'start_dir': f'llvm-project-openmp-{_llvm_version}-rocm-{_rocm_version}.src', diff --git a/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-6.4.1_llvm-project-19.0.0_fix-offload-build.patch b/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0_fix-offload-build.patch similarity index 100% rename from easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-6.4.1_llvm-project-19.0.0_fix-offload-build.patch rename to easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0_fix-offload-build.patch From e585d10fb04a52a3edad03a558ab9db7edafcdab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Thu, 4 Dec 2025 17:06:18 +0100 Subject: [PATCH 4/4] add checksum of ROCm-LLVM-19.0.0_fix-ConstantFoldFP128-conversion-issue.patch --- .../r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb b/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb index 3273991edb1d..bd0d0af35a82 100644 --- a/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb +++ b/easybuild/easyconfigs/r/ROCm-LLVM/ROCm-LLVM-19.0.0-GCCcore-14.2.0-ROCm-6.4.1.eb @@ -51,6 +51,8 @@ checksums = [{ 'f72d100a46a2dd9f4c870cef156604777f1bdb1841df039d14bf37b19814b9da', 'aomp-extras-rocm-6.4.1.tar.gz': 'cf20b02b1f99f506c198866ef03f2265dc355627760f82cda3878d5bc6486afc', + 'ROCm-LLVM-19.0.0_fix-ConstantFoldFP128-conversion-issue.patch': + '76fc2b0209c9e6a2d13f138b40acdab41313e979104bb66e4b1ac1aa7b4b5d03', 'ROCm-LLVM-19.0.0_fix-offload-build.patch': '2ce1454aa3d2f50795bbc331c239f44be07f8ec836978cad130406af4340e30d', }]