Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#77394 - [directx-shader-compiler] Compiling simple shaders causes assertion failure
Attached to Project:
Arch Linux
Opened by Krzysztof Bogacki (Saancreed) - Sunday, 05 February 2023, 02:08 GMT
Last edited by Toolybird (Toolybird) - Monday, 06 February 2023, 05:51 GMT
Opened by Krzysztof Bogacki (Saancreed) - Sunday, 05 February 2023, 02:08 GMT
Last edited by Toolybird (Toolybird) - Monday, 06 February 2023, 05:51 GMT
|
DetailsDescription:
Attempting to compile simple HLSL shaders to DXIL with dxc from Arch repo causes an assertion failure and results in a core dump. Binaries provided by Microsoft successfully compile the same shaders. Additional info: * package version(s): directx-shader-compiler=1.7.2212-1 * config and/or log files: see below Steps to reproduce: $ curl -Lso ./shaders.hlsl 'https://raw.githubusercontent.com/microsoft/DirectX-Graphics-Samples/master/Samples/Desktop/D3D12HelloWorld/src/HelloTriangle/shaders.hlsl' $ dxc -E VSMain -T vs_6_0 -Fo ./vs.dxil ./shaders.hlsl; echo $?; file ./vs.dxil Result: dxc: /build/directx-shader-compiler/src/directx-shader-compiler-1.7.2212/lib/IR/User.cpp:44: void llvm::User::allocHungoffUses(unsigned int, bool): Assertion `HasHungOffUses && "alloc must have hung off uses"' failed. Aborted (core dumped) 134 ./vs.dxil: cannot open './vs.dxil' (No such file or directory) Expected result (including reproduction steps): $ curl -Ls 'https://github.com/microsoft/DirectXShaderCompiler/releases/download/v1.7.2212/linux_dxc_2022_12_16.tar.gz' | bsdtar xf - $ chmod +x ./bin/x64/dxc $ LD_LIBRARY_PATH=~+/lib/x64 ./bin/x64/dxc -E VSMain -T vs_6_0 -Fo ./vs.dxil ./shaders.hlsl; echo $?; file ./vs.dxil warning: DXIL.dll not found. Resulting DXIL will not be signed for use in release environments. 0 ./vs.dxil: data |
This task depends upon
Does a backtrace produce anything useful [1]?
[1] https://wiki.archlinux.org/title/Debugging/Getting_traces#Debuginfod
Unfortunately no, `debuginfod-find debuginfo /usr/lib/libdxcompiler.so` gives me `Server query failed: No such file or directory` and there is no `directx-shader-compiler-debug` package in `extra-debug` repository, so all I can see for the `libdxcompiler.so` part of the stack trace is `??` and `No symbol table info available.`. Attached is the full output of gdb's `bt full`.