Closed
Description
Hello folks,
just switched out llvm-mingw-20231128-ucrt-ubuntu-20.04-x86_64 against the new release llvm-mingw-20240130-ucrt-ubuntu-20.04-x86_64.
Not that it really matters but I built Wine current HEAD: https://source.winehq.org/git/wine.git/commit/e3431a02e1d23ad506512b906f244eae1db05035
Non-working case:
llvm-mingw-20240130-ucrt-ubuntu-20.04-x86_64
Last lines of build output:
...
tools/winegcc/winegcc -o dlls/ntdll/x86_64-windows/ntdll.dll --wine-objdir . -b x86_64-w64-mingw32 -Wl,--wine-builtin -shared \
/home/focht/projects/wine/mainline-src/dlls/ntdll/ntdll.spec -nodefaultlibs \
-Wl,--image-base,0x170000000 dlls/ntdll/x86_64-windows/actctx.o dlls/ntdll/x86_64-windows/atom.o \
dlls/ntdll/x86_64-windows/crypt.o dlls/ntdll/x86_64-windows/debugbuffer.o \
dlls/ntdll/x86_64-windows/env.o dlls/ntdll/x86_64-windows/error.o \
dlls/ntdll/x86_64-windows/exception.o dlls/ntdll/x86_64-windows/handletable.o \
dlls/ntdll/x86_64-windows/heap.o dlls/ntdll/x86_64-windows/large_int.o \
dlls/ntdll/x86_64-windows/loader.o dlls/ntdll/x86_64-windows/locale.o \
dlls/ntdll/x86_64-windows/math.o dlls/ntdll/x86_64-windows/misc.o dlls/ntdll/x86_64-windows/path.o \
dlls/ntdll/x86_64-windows/printf.o dlls/ntdll/x86_64-windows/process.o \
dlls/ntdll/x86_64-windows/reg.o dlls/ntdll/x86_64-windows/relay.o \
dlls/ntdll/x86_64-windows/resource.o dlls/ntdll/x86_64-windows/rtl.o \
dlls/ntdll/x86_64-windows/rtlbitmap.o dlls/ntdll/x86_64-windows/rtlstr.o \
dlls/ntdll/x86_64-windows/sec.o dlls/ntdll/x86_64-windows/signal_arm.o \
dlls/ntdll/x86_64-windows/signal_arm64.o dlls/ntdll/x86_64-windows/signal_arm64ec.o \
dlls/ntdll/x86_64-windows/signal_i386.o dlls/ntdll/x86_64-windows/signal_x86_64.o \
dlls/ntdll/x86_64-windows/string.o dlls/ntdll/x86_64-windows/sync.o \
dlls/ntdll/x86_64-windows/thread.o dlls/ntdll/x86_64-windows/threadpool.o \
dlls/ntdll/x86_64-windows/time.o dlls/ntdll/x86_64-windows/version.o \
dlls/ntdll/x86_64-windows/wcstring.o dlls/ntdll/version.res \
-Wl,--debug-file,dlls/ntdll/x86_64-windows/ntdll.pdb libs/musl/x86_64-windows/libmusl.a \
dlls/winecrt0/x86_64-windows/libwinecrt0.a -Wl,--dynamicbase --no-default-config
ld.lld: error: duplicate symbol: __chkstk
>>> defined at dlls/ntdll/x86_64-windows/signal_x86_64.o
>>> defined at libclang_rt.builtins-x86_64.a(chkstk.S.obj)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
winegcc: /home/focht/projects/wine/llvm-mingw-20240130-ucrt-ubuntu-20.04-x86_64/bin/x86_64-w64-mingw32-gcc failed
Dumping symbols from compiler rt builtins:
llvm-nm -gC ./llvm-mingw-20240130-ucrt-ubuntu-20.04-x86_64/lib/clang/18/lib/windows/libclang_rt.builtins-x86_64.a | grep -B1 __chkstk
chkstk.S.obj:
00000000 T ___chkstk_ms
00000000 T __chkstk
Working case (only switching out toolchain):
llvm-mingw-20231128-ucrt-ubuntu-20.04-x86_64
llvm-nm -gC ./llvm-mingw-20231128-ucrt-ubuntu-20.04-x86_64/lib/clang/17/lib/windows/libclang_rt.builtins-x86_64.a | grep -B1 __chkstk
chkstk.S.obj:
00000000 T ___chkstk_ms
--
chkstk2.S.obj:
00000003 T ___chkstk
My guess would be that llvm upstream commit https://github.com/llvm/llvm-project/4580030171cce7168ddd06351333a2845246a4338ae64 caused the regression (part of llvmorg-18.1.0-rc1).
Regards
Metadata
Metadata
Assignees
Labels
No labels