### System information - OS: Arch - GPU: [AMD/ATI] Polaris 20 XL [Radeon RX 580 2048SP] - Kernel version: 6.18.3 (Custom compile with custom LLVM) - Mesa version: OpenGL version string: 4.6 (Compatibility Profile) Mesa 26.0.0-devel (git-0291aa3e71) - Desktop manager and compositor: KDE Plasma/Kwin-Wayland
### Describe the issue Mesa main fails to build against LLVM 23.0.0git (current upstream). The build references LLVMCreateDenormalFPEnvAttribute, but this symbol does not exist in llvm-project main or any recent revision. Confirmed by: llvm-config --version → 23.0.0git ripgrep across llvm-project → no matches This appears to be either a stale API reference or missing version guard. ### Log output from build [559/1931] Compiling C object src/amd/llvm/libamd_common_llvm.a.p/ac_llvm_build.c.o FAILED: [code=1] src/amd/llvm/libamd_common_llvm.a.p/ac_llvm_build.c.o /usr/bin/clang -Isrc/amd/llvm/libamd_common_llvm.a.p -Isrc/amd/llvm -I../mesa/src/amd/llvm -Iinclude -I../mesa/include -Isrc -I../mesa/src -Isrc/amd -I../mesa/src/amd -Isrc/amd/common -I../mesa/src/amd/common -I../mesa/src/amd/common/nir -Isrc/compiler/nir -I../mesa/src/compiler/nir -Isrc/compiler -I../mesa/src/compiler -I/usr/include/libdrm -fvisibility=hidden -fdiagnostics-color=always -DNDEBUG-D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=c11 -O3 -g '-DPACKAGE_VERSION="26.1.0-devel"' '-DPACKAGE_BUGREPORT=" https://gitlab.freedesktop.org/mesa/mesa/-/issues"' -DHAVE_OPENGL=1 -DHAVE_OPENGL_ES_1=0 -DHAVE_OPENGL_ES_2=1 -DHAVE_RADEONSI -DHAVE_VIRGL -DHAVE_SVGA -DHAVE_LLVMPIPE -DHAVE_SWRAST -DMESA_SYSTEM_HAS_KMS_DRM=1 -DVK_ENABLE_BETA_EXTENSIONS -DVIDEO_CODEC_VC1DEC=1 -DVIDEO_CODEC_H264DEC=1 -DVIDEO_CODEC_H264ENC=1 -DVIDEO_CODEC_H265DEC=1 -DVIDEO_CODEC_H265ENC=1 -DVIDEO_CODEC_AV1DEC=0 -DVIDEO_CODEC_AV1ENC=0 -DVIDEO_CODEC_VP9DEC=1 -DVIDEO_CODEC_MPEG12DEC=0 -DVIDEO_CODEC_JPEGDEC=0 -DHAVE_X11_PLATFORM -DHAVE_WAYLAND_PLATFORM -DHAVE_SURFACELESS_PLATFORM -DHAVE_DRM_PLATFORM -DHAVE_XCB_PLATFORM -DUSE_LIBGLVND=1 -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 '-DMESA_SHADER_CACHE_MAX_SIZE="16G"' -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___BUILTIN_ADD_OVERFLOW -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_COLD -DHAVE_FUNC_ATTRIBUTE_VISIBILITY -DHAVE_UINT128 -DHAVE_REALLOCARRAY -DHAVE_FMEMOPEN -DUSE_SSE41 -DHAVE___BUILTIN_IA32_CLFLUSHOPT -DUSE_GCC_ATOMIC_BUILTINS -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_POLL_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_SYSCONF -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_LIBDISPLAY_INFO -DHAVE_ZSTD -DHAVE_COMPRESSION -DHAVE_PTHREAD -DHAVE_PTHREAD_SETAFFINITY -DHAVE_LIBDRM -DHAVE_LIBUDEV '-DMESA_LLVM_VERSION_STRING="23.0.0"' -DLLVM_IS_SHARED=1 -DDRAW_LLVM_AVAILABLE=1 -DAMD_LLVM_AVAILABLE=1 -DGALLIVM_USE_ORCJIT=0 -DHAVE_SPIRV_TOOLS -DUSE_LIBELF -DTHREAD_SANITIZER=0 -DHAVE_LIBUNWIND -DWL_HIDE_DEPRECATED -DHAVE_WL_CREATE_QUEUE_WITH_NAME -DXCB_KEYSYMS_AVAILABLE -DHAVE_X11_DRM -DHAVE_DRI -DHAVE_DRI2 -DHAVE_DRI3_EXPLICIT_SYNC -DHAVE_DRISW_KMS -DHAVE_GALLIUM_EXTRA_HUD=1 -DHAVE_LIBSENSORS=1 -DANDROID_LIBPERFETTO -DHAVE_RENDERDOC_INTEGRATION=true -mtls-dialect=gnu2 -Werror=implicit-function-declaration -Werror=missing-prototypes -Werror=return-type -Werror=empty-body -Werror=incompatible-pointer-types -Werror=int-conversion -Wimplicit-fallthrough -Wmisleading-indentation -Wno-missing-field-initializers -Wno-format-truncation -fno-math-errno -fno-trapping-math -Qunused-arguments -fno-common -Wno-unknown-pragmas -Wno-microsoft-enum-value -Wno-unused-function -Werror=format -Wformat-security -Werror=thread-safety-ffunction-sections -fdata-sections -Wno-unused-variable -Wno-unused-but-set-variable -march=znver2 -mtune=znver2 -pipe -O3 -g0 -fPIC -fPIC -pthread -D_GNU_SOURCE -D_GLIBCXX_USE_CXX11_ABI=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -MD -MQ src/amd/llvm/libamd_common_llvm.a.p/ac_llvm_build.c.o -MF src/amd/llvm/libamd_common_llvm.a.p/ac_llvm_build.c.o.d -o src/amd/llvm/libamd_common_llvm.a.p/ac_llvm_build.c.o -c ../mesa/src/amd/llvm/ac_llvm_build.c ../mesa/src/amd/llvm/ac_llvm_build.c:3646:34: error: call to undeclared function 'LLVMCreateDenormalFPEnvAttribute'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 3646 | LLVMAttributeRef fpenv_attr = LLVMCreateDenormalFPEnvAttribute(ctx, | ^ ../mesa/src/amd/llvm/ac_llvm_build.c:3647:37: error: use of undeclared identifier 'LLVMDenormalModeKindIEEE' 3647 | LLVMDenormalModeKindIEEE, | ^~~~~~~~~~~~~~~~~~~~~~~~ ../mesa/src/amd/llvm/ac_llvm_build.c:3648:37: error: use of undeclared identifier 'LLVMDenormalModeKindIEEE' 3648 | LLVMDenormalModeKindIEEE, | ^~~~~~~~~~~~~~~~~~~~~~~~ ../mesa/src/amd/llvm/ac_llvm_build.c:3649:37: error: use of undeclared identifier 'LLVMDenormalModeKindPreserveSign' 3649 | LLVMDenormalModeKindPreserveSign, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../mesa/src/amd/llvm/ac_llvm_build.c:3650:37: error: use of undeclared identifier 'LLVMDenormalModeKindPreserveSign' 3650 | LLVMDenormalModeKindPreserveSign); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5 errors generated.
