[clc] [FTBFS] [llvm20+] no matching function for DataLayout
Mesa trunk rev fa51595c
LLVM 20.0.0git rev 81ef8e2fdbdf
[1542/1858] Compiling C++ object src/gallium/fro...s/clover/libclllvm.a.p/llvm_codegen_common.cpp.o FAILED: src/gallium/frontends/clover/libclllvm.a.p/llvm_codegen_common.cpp.o ccache c++ -Isrc/gallium/frontends/clover/libclllvm.a.p -Isrc/gallium/frontends/clover -I../src/gallium/frontends/clover -Iinclude -I../include -Isrc -I../src -I../src/gallium/include -Isrc/gallium/auxiliary -I../src/gallium/auxiliary -Isrc/util/format -I/usr/include/valgrind -fvisibility=hidden -fdiagnostics-color=always -DNDEBUG -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=c++17 -O3 '-DPACKAGE_VERSION="24.3.0-devel"' '-DPACKAGE_BUGREPORT="https://gitlab.freedesktop.org/mesa/mesa/-/issues"' -DHAVE_OPENGL=1 -DHAVE_OPENGL_ES_1=1 -DHAVE_OPENGL_ES_2=1 -DHAVE_R600 -DHAVE_RADEONSI -DHAVE_ZINK -DHAVE_SWRAST -DVIDEO_CODEC_VC1DEC=1 -DVIDEO_CODEC_H264DEC=1 -DVIDEO_CODEC_H264ENC=1 -DVIDEO_CODEC_H265DEC=1 -DVIDEO_CODEC_H265ENC=1 -DVIDEO_CODEC_AV1DEC=1 -DVIDEO_CODEC_AV1ENC=1 -DVIDEO_CODEC_VP9DEC=1 -DHAVE_X11_PLATFORM -DHAVE_SURFACELESS_PLATFORM -DHAVE_DRM_PLATFORM -DHAVE_XCB_PLATFORM -DUSE_LIBGLVND=1 -DHAVE_ST_VDPAU -DHAVE_VA_SURFACE_ATTRIB_DRM_FORMAT_MODIFIERS -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_DRM -DGLAPI_EXPORT_PROTO_ENTRY_POINTS=0 -DALLOW_KCMP -DMESA_DEBUG=0 -DENABLE_SHADER_CACHE -DHAVE___BUILTIN_BSWAP32 -DHAVE___BUILTIN_BSWAP64 -DHAVE___BUILTIN_CLZ -DHAVE___BUILTIN_CLZLL -DHAVE___BUILTIN_CTZ -DHAVE___BUILTIN_EXPECT -DHAVE___BUILTIN_FFS -DHAVE___BUILTIN_FFSLL -DHAVE___BUILTIN_POPCOUNT -DHAVE___BUILTIN_POPCOUNTLL -DHAVE___BUILTIN_UNREACHABLE -DHAVE___BUILTIN_TYPES_COMPATIBLE_P -DHAVE_FUNC_ATTRIBUTE_CONST -DHAVE_FUNC_ATTRIBUTE_FLATTEN -DHAVE_FUNC_ATTRIBUTE_MALLOC -DHAVE_FUNC_ATTRIBUTE_PURE -DHAVE_FUNC_ATTRIBUTE_UNUSED -DHAVE_FUNC_ATTRIBUTE_WARN_UNUSED_RESULT -DHAVE_FUNC_ATTRIBUTE_WEAK -DHAVE_FUNC_ATTRIBUTE_FORMAT -DHAVE_FUNC_ATTRIBUTE_PACKED -DHAVE_FUNC_ATTRIBUTE_RETURNS_NONNULL -DHAVE_FUNC_ATTRIBUTE_ALIAS -DHAVE_FUNC_ATTRIBUTE_NORETURN -DHAVE_FUNC_ATTRIBUTE_OPTIMIZE -DHAVE_FUNC_ATTRIBUTE_VISIBILITY -DHAVE_UINT128 -DHAVE_REALLOCARRAY -DHAVE_FMEMOPEN -DUSE_SSE41 -DHAVE___BUILTIN_IA32_CLFLUSHOPT -DUSE_GCC_ATOMIC_BUILTINS -DUSE_X86_64_ASM -DMAJOR_IN_SYSMACROS -DHAS_SCHED_H -DHAS_SCHED_GETAFFINITY -DHAVE_LINUX_FUTEX_H -DHAVE_ENDIAN_H -DHAVE_DLFCN_H -DHAVE_SYS_SHM_H -DHAVE_CET_H -DHAVE_SYS_INOTIFY_H -DHAVE_LINUX_UDMABUF_H -DHAVE_STRTOF -DHAVE_MKOSTEMP -DHAVE_MEMFD_CREATE -DHAVE_RANDOM_R -DHAVE_FLOCK -DHAVE_STRTOK_R -DHAVE_GETRANDOM -DHAVE_POSIX_FALLOCATE -DHAVE_SECURE_GETENV -DHAVE_GNU_QSORT_R -DHAVE_STRUCT_TIMESPEC -DHAVE_PROGRAM_INVOCATION_NAME -DHAVE_ISSIGNALING -DHAVE_POSIX_MEMALIGN -DHAVE_DIRENT_D_TYPE -DHAVE_STRTOD_L -DHAVE_DLADDR -DHAVE_DL_ITERATE_PHDR -DHAVE_ZLIB -DHAVE_ZSTD -DHAVE_COMPRESSION -DHAVE_PTHREAD -DHAVE_PTHREAD_SETAFFINITY -DHAVE_LIBDRM -DHAVE_LIBUDEV '-DMESA_LLVM_VERSION_STRING="20.0.0"' -DLLVM_IS_SHARED=1 -DLLVM_AVAILABLE=1 -DDRAW_LLVM_AVAILABLE=1 -DAMD_LLVM_AVAILABLE=1 -DGALLIVM_USE_ORCJIT=0 -DHAVE_SPIRV_TOOLS -DUSE_LIBELF -DHAVE_VALGRIND -DTHREAD_SANITIZER=0 -DHAVE_LIBUNWIND -DHAVE_OPENMP -DHAVE_X11_DRM -DHAVE_DRI -DHAVE_DRI2 -DHAVE_X11_DRI2 -DHAVE_DRI3_EXPLICIT_SYNC -DHAVE_DRISW_KMS -DHAVE_LIBSENSORS=1 -mtls-dialect=gnu2 -Werror=return-type -Werror=empty-body -Wmisleading-indentation -Wno-non-virtual-dtor -Wno-missing-field-initializers -Wno-format-truncation -fno-math-errno -fno-trapping-math -flifetime-dse=1 -Wno-unknown-pragmas -Werror=format -Wformat-security -ffunction-sections -fdata-sections -Wno-unused-variable -Wno-unused-but-set-variable -fPIC -pthread -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Wno-ignored-attributes -DCL_TARGET_OPENCL_VERSION=300 -DCL_USE_DEPRECATED_OPENCL_1_0_APIS -DCL_USE_DEPRECATED_OPENCL_1_1_APIS -DCL_USE_DEPRECATED_OPENCL_1_2_APIS -DCL_USE_DEPRECATED_OPENCL_2_0_APIS -DCL_USE_DEPRECATED_OPENCL_2_1_APIS -DCL_USE_DEPRECATED_OPENCL_2_2_APIS '-DLIBCLC_INCLUDEDIR="/usr/local/include/"' '-DLIBCLC_LIBEXECDIR="/usr/local/share/clc/"' -DHAVE_CLOVER_SPIRV '-DCLANG_RESOURCE_DIR="/usr/local/lib/clang/20.0.0/include"' -MD -MQ src/gallium/frontends/clover/libclllvm.a.p/llvm_codegen_common.cpp.o -MF src/gallium/frontends/clover/libclllvm.a.p/llvm_codegen_common.cpp.o.d -o src/gallium/frontends/clover/libclllvm.a.p/llvm_codegen_common.cpp.o -c ../src/gallium/frontends/clover/llvm/codegen/common.cpp ../src/gallium/frontends/clover/llvm/codegen/common.cpp: In function ‘std::vectorclover::binary::argument {anonymous}::make_kernel_args(const llvm::Module&, const std::string&, const clang::CompilerInstance&)’: ../src/gallium/frontends/clover/llvm/codegen/common.cpp:198:33: error: no matching function for call to ‘llvm::DataLayout::DataLayout(const llvm::Module*)’ 198 | ::llvm::DataLayout dl(&mod); | ^ In file included from /usr/local/include/llvm/IR/Module.h:24, from ../src/gallium/frontends/clover/llvm/codegen.hpp:35, from ../src/gallium/frontends/clover/llvm/codegen/common.cpp:36: /usr/local/include/llvm/IR/DataLayout.h:181:3: note: candidate: ‘llvm::DataLayout::DataLayout(const llvm::DataLayout&)’ 181 | DataLayout(const DataLayout &DL) { this = DL; } | ^~~~~~~~~~ /usr/local/include/llvm/IR/DataLayout.h:181:32: note: no known conversion for argument 1 from ‘const llvm::Module’ to ‘const llvm::DataLayout&’ 181 | DataLayout(const DataLayout &DL) { *this = DL; } | ~~~~~~~~~~~~~~~~~~^~ /usr/local/include/llvm/IR/DataLayout.h:179:12: note: candidate: ‘llvm::DataLayout::DataLayout(llvm::StringRef)’ 179 | explicit DataLayout(StringRef LayoutString); | ^~~~~~~~~~ /usr/local/include/llvm/IR/DataLayout.h:179:33: note: no known conversion for argument 1 from ‘const llvm::Module*’ to ‘llvm::StringRef’ 179 | explicit DataLayout(StringRef LayoutString); | ~~~~~~~~~~^~~~~~~~~~~~ /usr/local/include/llvm/IR/DataLayout.h:175:3: note: candidate: ‘llvm::DataLayout::DataLayout()’ 175 | DataLayout(); | ^~~~~~~~~~ /usr/local/include/llvm/IR/DataLayout.h:175:3: note: candidate expects 0 arguments, 1 provided