DiligentEngine icon indicating copy to clipboard operation
DiligentEngine copied to clipboard

Link error when compiling with ASan/UBSan

Open ceeac opened this issue 1 year ago • 2 comments

OS: Ubuntu 22.04 Compiler: clang-15

Steps to reproduce: mkdir build && cd build && CFLAGS=-fsanitize=address,undefined" CXXFLAGS="-fsanitize=address,undefined" LDFLAGS="-fsanitize=address,undefined" cmake -GNinja .. && ninja

Result:

[5/98] Linking CXX executable DiligentTools/RenderStatePackager/Diligent-RenderStatePackager
FAILED: DiligentTools/RenderStatePackager/Diligent-RenderStatePackager 
: && /usr/bin/clang++-15 -fsanitize=address,undefined -g -fsanitize=address,undefined DiligentTools/RenderStatePackager/CMakeFiles/Diligent-RenderStatePackager.dir/src/main.cpp.o -o DiligentTools/RenderStatePackager/Diligent-RenderStatePackager  DiligentCore/Common/libDiligent-Common.a  DiligentTools/RenderStatePackager/libDiligent-RenderStatePackagerLib.a  DiligentTools/RenderStateNotation/libDiligent-RenderStateNotation.a  DiligentCore/Graphics/GraphicsTools/libDiligent-GraphicsTools.a  DiligentCore/Graphics/Archiver/libDiligent-Archiver-static.a  DiligentCore/Graphics/GraphicsEngineVulkan/libDiligent-GraphicsEngineVk-static.a  DiligentCore/Graphics/GraphicsEngineNextGenBase/libDiligent-GraphicsEngineNextGenBase.a  DiligentCore/Graphics/GraphicsEngineOpenGL/libDiligent-GraphicsEngineOpenGL-static.a  DiligentCore/ThirdParty/glew/libglew-static.a  -lGL  -lX11  DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a  DiligentCore/Graphics/HLSL2GLSLConverterLib/libDiligent-HLSL2GLSLConverterLib.a  -ldl  DiligentCore/ThirdParty/SPIRV-Cross/libspirv-cross-core.a  DiligentCore/ThirdParty/glslang/SPIRV/libSPIRV.a  DiligentCore/ThirdParty/SPIRV-Tools/source/opt/libSPIRV-Tools-opt.a  DiligentCore/ThirdParty/SPIRV-Tools/source/libSPIRV-Tools.a  -lrt  DiligentCore/ThirdParty/glslang/glslang/libglslang.a  DiligentCore/ThirdParty/glslang/glslang/libMachineIndependent.a  DiligentCore/ThirdParty/glslang/glslang/libGenericCodeGen.a  DiligentCore/ThirdParty/glslang/OGLCompilersDLL/libOGLCompiler.a  DiligentCore/ThirdParty/glslang/glslang/OSDependent/Unix/libOSDependent.a  DiligentCore/Graphics/GraphicsEngine/libDiligent-GraphicsEngine.a  DiligentCore/Graphics/GraphicsAccessories/libDiligent-GraphicsAccessories.a  DiligentCore/Common/libDiligent-Common.a  DiligentCore/Platforms/Linux/libDiligent-LinuxPlatform.a  DiligentCore/Platforms/Basic/libDiligent-BasicPlatform.a  -lpthread  DiligentCore/Primitives/libDiligent-Primitives.a  DiligentCore/ThirdParty/xxHash/cmake_unofficial/libxxhash.a && :
/usr/bin/ld: /usr/bin/ld: DWARF error: invalid or unhandled FORM value: 0x23
DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x1b8): undefined reference to `typeinfo for glslang::TShader'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x1e8): undefined reference to `typeinfo for glslang::TShader'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x238): undefined reference to `typeinfo for glslang::TShader'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x308): undefined reference to `typeinfo for glslang::TShader'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x3b8): undefined reference to `typeinfo for glslang::TShader'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x3e8): more undefined references to `typeinfo for glslang::TShader' follow
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x96c8): undefined reference to `typeinfo for glslang::TProgram'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x96f8): undefined reference to `typeinfo for glslang::TProgram'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x9728): undefined reference to `typeinfo for glslang::TProgram'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x9758): undefined reference to `typeinfo for glslang::TProgram'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x97c8): undefined reference to `typeinfo for glslang::TProgram'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x9818): more undefined references to `typeinfo for glslang::TProgram' follow
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0x9868): undefined reference to `typeinfo for glslang::TShader'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0xa7f8): undefined reference to `typeinfo for glslang::TShader'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0xad78): undefined reference to `typeinfo for glslang::TProgram'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0xadc8): undefined reference to `typeinfo for glslang::TShader'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0xb4a8): undefined reference to `typeinfo for glslang::TProgram'
/usr/bin/ld: DiligentCore/Graphics/ShaderTools/libDiligent-ShaderTools.a(GLSLangUtils.cpp.o):(.data+0xb568): undefined reference to `typeinfo for glslang::TShader'
/usr/bin/ld: /usr/bin/ld: DWARF error: invalid or unhandled FORM value: 0x23
DiligentCore/ThirdParty/SPIRV-Tools/source/opt/libSPIRV-Tools-opt.a(pass_manager.cpp.o):(.data+0x19a8): undefined reference to `typeinfo for spvtools::utils::Timer'
/usr/bin/ld: DiligentCore/ThirdParty/SPIRV-Tools/source/opt/libSPIRV-Tools-opt.a(pass_manager.cpp.o):(.data+0x1aa8): undefined reference to `typeinfo for spvtools::utils::Timer'
/usr/bin/ld: DiligentCore/ThirdParty/SPIRV-Tools/source/opt/libSPIRV-Tools-opt.a(pass_manager.cpp.o):(.data+0x1b28): undefined reference to `typeinfo for spvtools::utils::Timer'
/usr/bin/ld: DiligentCore/ThirdParty/SPIRV-Tools/source/opt/libSPIRV-Tools-opt.a(pass_manager.cpp.o):(.data+0x1bd8): undefined reference to `typeinfo for spvtools::utils::Timer'

ceeac avatar Feb 26 '23 09:02 ceeac

Does this only happen with ASan enabled?

TheMostDiligent avatar Feb 26 '23 15:02 TheMostDiligent

After some investigation, I have confirmed that the issue only happens when UBSan is enabled. This seems to be a simuilar issue as in KhronosGroup/glslang#2920. The build succeeds when I add -fno-sanitize=vptr as in the linked issue.

If I compile with -fsanitize=undefined -fno-sanitize=vptr -fno-sanitize-recover=all the build fails with

FAILED: /home/ceeac/Projects/code/DiligentEngine/DiligentSamples/Tutorials/Tutorial25_StatePackager/assets/StateArchive.bin 
cd /home/ceeac/Projects/code/DiligentEngine/DiligentSamples/Tutorials/Tutorial25_StatePackager && /home/ceeac/Projects/code/DiligentEngine/build/DiligentTools/RenderStatePackager/Diligent-RenderStatePackager -i RenderStates.json -r assets -s assets -o /home/ceeac/Projects/code/DiligentEngine/DiligentSamples/Tutorials/Tutorial25_StatePackager/assets/StateArchive.bin --dx11 --dx12 --opengl --vulkan --metal_macos --metal_ios --print_contents
/home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslParseHelper.cpp:6062:38: runtime error: reference binding to null pointer of type 'const glslang::TIntermSequence' (aka 'const TVector<TIntermNode *>')
    #0 0x55f5a5b8555a in glslang::HlslParseContext::builtInOpCheck(glslang::TSourceLoc const&, glslang::TFunction const&, glslang::TIntermOperator&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslParseHelper.cpp:6062:28
    #1 0x55f5a5b16da0 in glslang::HlslParseContext::handleFunctionCall(glslang::TSourceLoc const&, glslang::TFunction*, glslang::TIntermTyped*) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslParseHelper.cpp:5597:21
    #2 0x55f5a5cf8514 in glslang::HlslGrammar::acceptFunctionCall(glslang::TSourceLoc const&, std::__cxx11::basic_string<char, std::char_traits<char>, glslang::pool_allocator<char>>&, glslang::TIntermTyped*&, glslang::TIntermTyped*) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:3295:25
    #3 0x55f5a5cf664e in glslang::HlslGrammar::acceptPostfixExpression(glslang::TIntermTyped*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:3134:20
    #4 0x55f5a5cf57a2 in glslang::HlslGrammar::acceptUnaryExpression(glslang::TIntermTyped*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:3058:16
    #5 0x55f5a5cf5892 in glslang::HlslGrammar::acceptUnaryExpression(glslang::TIntermTyped*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:3063:11
    #6 0x55f5a5cf45a6 in glslang::HlslGrammar::acceptBinaryExpression(glslang::TIntermTyped*&, glslang::PrecedenceLevel) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2962:16
    #7 0x55f5a5cf4670 in glslang::HlslGrammar::acceptBinaryExpression(glslang::TIntermTyped*&, glslang::PrecedenceLevel) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2965:11
    #8 0x55f5a5cf4670 in glslang::HlslGrammar::acceptBinaryExpression(glslang::TIntermTyped*&, glslang::PrecedenceLevel) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2965:11
    #9 0x55f5a5cf4670 in glslang::HlslGrammar::acceptBinaryExpression(glslang::TIntermTyped*&, glslang::PrecedenceLevel) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2965:11
    #10 0x55f5a5cf4670 in glslang::HlslGrammar::acceptBinaryExpression(glslang::TIntermTyped*&, glslang::PrecedenceLevel) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2965:11
    #11 0x55f5a5cf4670 in glslang::HlslGrammar::acceptBinaryExpression(glslang::TIntermTyped*&, glslang::PrecedenceLevel) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2965:11
    #12 0x55f5a5cf4670 in glslang::HlslGrammar::acceptBinaryExpression(glslang::TIntermTyped*&, glslang::PrecedenceLevel) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2965:11
    #13 0x55f5a5cf4670 in glslang::HlslGrammar::acceptBinaryExpression(glslang::TIntermTyped*&, glslang::PrecedenceLevel) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2965:11
    #14 0x55f5a5cf4670 in glslang::HlslGrammar::acceptBinaryExpression(glslang::TIntermTyped*&, glslang::PrecedenceLevel) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2965:11
    #15 0x55f5a5cf4670 in glslang::HlslGrammar::acceptBinaryExpression(glslang::TIntermTyped*&, glslang::PrecedenceLevel) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2965:11
    #16 0x55f5a5cf4670 in glslang::HlslGrammar::acceptBinaryExpression(glslang::TIntermTyped*&, glslang::PrecedenceLevel) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2965:11
    #17 0x55f5a5cf4670 in glslang::HlslGrammar::acceptBinaryExpression(glslang::TIntermTyped*&, glslang::PrecedenceLevel) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2965:11
    #18 0x55f5a5ce48b2 in glslang::HlslGrammar::acceptConditionalExpression(glslang::TIntermTyped*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2912:11
    #19 0x55f5a5cda9de in glslang::HlslGrammar::acceptAssignmentExpression(glslang::TIntermTyped*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2866:11
    #20 0x55f5a5cdab5d in glslang::HlslGrammar::acceptAssignmentExpression(glslang::TIntermTyped*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2882:11
    #21 0x55f5a5cdbc3b in glslang::HlslGrammar::acceptExpression(glslang::TIntermTyped*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2760:11
    #22 0x55f5a5cf8bc9 in glslang::HlslGrammar::acceptSimpleStatement(TIntermNode*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:3391:9
    #23 0x55f5a5cf921d in glslang::HlslGrammar::acceptStatement(TIntermNode*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:3511:16
    #24 0x55f5a5cf38a3 in glslang::HlslGrammar::acceptCompoundStatement(TIntermNode*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:3418:12
    #25 0x55f5a5cef637 in glslang::HlslGrammar::acceptFunctionBody(glslang::TFunctionDeclarator&, TIntermNode*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2696:11
    #26 0x55f5a5cda08f in glslang::HlslGrammar::acceptFunctionDefinition(glslang::TFunctionDeclarator&, TIntermNode*&, glslang::TVector<glslang::HlslToken>*) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:2682:16
    #27 0x55f5a5cd1c5f in glslang::HlslGrammar::acceptDeclaration(TIntermNode*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:432:24
    #28 0x55f5a5cd02f6 in glslang::HlslGrammar::acceptDeclarationList(TIntermNode*&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:164:15
    #29 0x55f5a5ccf34a in glslang::HlslGrammar::acceptCompilationUnit() /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:129:11
    #30 0x55f5a5ccf2b3 in glslang::HlslGrammar::parse() /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslGrammar.cpp:65:12
    #31 0x55f5a5ac9437 in glslang::HlslParseContext::parseShaderStrings(glslang::TPpContext&, glslang::TInputScanner&, bool) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/HLSL/hlslParseHelper.cpp:134:18
    #32 0x55f5a58baf12 in (anonymous namespace)::DoFullParse::operator()(glslang::TParseContextBase&, glslang::TPpContext&, glslang::TInputScanner&, bool, glslang::TSymbolTable&, glslang::TIntermediate&, EShOptimizationLevel, EShMessages) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/MachineIndependent/ShaderLang.cpp:1229:28
    #33 0x55f5a58b19ba in bool (anonymous namespace)::ProcessDeferred<(anonymous namespace)::DoFullParse>(TCompiler*, char const* const*, int, int const*, char const* const*, char const*, EShOptimizationLevel, TBuiltInResource const*, int, EProfile, bool, int, bool, EShMessages, glslang::TIntermediate&, (anonymous namespace)::DoFullParse&, bool, glslang::TShader::Includer&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, glslang::TEnvironment const*) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/MachineIndependent/ShaderLang.cpp:1012:20
    #34 0x55f5a589fcf6 in (anonymous namespace)::CompileDeferred(TCompiler*, char const* const*, int, int const*, char const* const*, char const*, EShOptimizationLevel, TBuiltInResource const*, int, EProfile, bool, int, bool, EShMessages, glslang::TIntermediate&, glslang::TShader::Includer&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, glslang::TEnvironment*) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/MachineIndependent/ShaderLang.cpp:1318:12
    #35 0x55f5a58a4e9a in glslang::TShader::parse(TBuiltInResource const*, int, EProfile, bool, bool, EShMessages, glslang::TShader::Includer&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/ThirdParty/glslang/glslang/MachineIndependent/ShaderLang.cpp:1910:12
    #36 0x55f5a3f3a18a in Diligent::GLSLangUtils::(anonymous namespace)::CompileShaderInternal(glslang::TShader&, EShMessages, glslang::TShader::Includer*, char const*, unsigned long, bool, EProfile, Diligent::IDataBlob**) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Graphics/ShaderTools/src/GLSLangUtils.cpp:266:16
    #37 0x55f5a3f384bd in Diligent::GLSLangUtils::HLSLtoSPIRV(Diligent::ShaderCreateInfo const&, Diligent::GLSLangUtils::SpirvVersion, char const*, Diligent::IDataBlob**) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Graphics/ShaderTools/src/GLSLangUtils.cpp:459:18
    #38 0x55f5a3562f23 in Diligent::(anonymous namespace)::CompileShaderGLSLang(Diligent::ShaderCreateInfo const&, Diligent::ShaderVkImpl::CreateInfo const&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Graphics/GraphicsEngineVulkan/src/ShaderVkImpl.cpp:100:17
    #39 0x55f5a3560bbc in Diligent::ShaderVkImpl::ShaderVkImpl(Diligent::IReferenceCounters*, Diligent::RenderDeviceVkImpl*, Diligent::ShaderCreateInfo const&, Diligent::ShaderVkImpl::CreateInfo const&, bool) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Graphics/GraphicsEngineVulkan/src/ShaderVkImpl.cpp:190:27
    #40 0x55f5a328de6d in Diligent::(anonymous namespace)::CompiledShaderVk::CompiledShaderVk(Diligent::IReferenceCounters*, Diligent::ShaderCreateInfo const&, Diligent::ShaderVkImpl::CreateInfo const&, Diligent::IRenderDevice*) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Graphics/Archiver/src/Archiver_Vk.cpp:51:9
    #41 0x55f5a328d861 in std::__detail::_MakeUniq<Diligent::(anonymous namespace)::CompiledShaderVk>::__single_object std::make_unique<Diligent::(anonymous namespace)::CompiledShaderVk, Diligent::IReferenceCounters*&, Diligent::ShaderCreateInfo const&, Diligent::ShaderVkImpl::CreateInfo const&, Diligent::IRenderDevice* const&>(Diligent::IReferenceCounters*&, Diligent::ShaderCreateInfo const&, Diligent::ShaderVkImpl::CreateInfo const&, Diligent::IRenderDevice* const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/12/bits/unique_ptr.h:1065:34
    #42 0x55f5a3280ca6 in void Diligent::SerializedShaderImpl::CreateShader<Diligent::(anonymous namespace)::CompiledShaderVk, Diligent::ShaderVkImpl::CreateInfo, Diligent::IRenderDevice*>(Diligent::DeviceObjectArchive::DeviceType, Diligent::IReferenceCounters*, Diligent::ShaderCreateInfo const&, Diligent::ShaderVkImpl::CreateInfo const&, Diligent::IRenderDevice* const&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Graphics/Archiver/src/Archiver_Inc.hpp:112:44
    #43 0x55f5a3280867 in Diligent::SerializedShaderImpl::CreateShaderVk(Diligent::IReferenceCounters*, Diligent::ShaderCreateInfo const&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Graphics/Archiver/src/Archiver_Vk.cpp:209:5
    #44 0x55f5a32200f2 in Diligent::SerializedShaderImpl::SerializedShaderImpl(Diligent::IReferenceCounters*, Diligent::SerializationDeviceImpl*, Diligent::ShaderCreateInfo const&, Diligent::ShaderArchiveInfo const&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Graphics/Archiver/src/SerializedShaderImpl.cpp:102:17
    #45 0x55f5a320ac49 in Diligent::SerializedShaderImpl* Diligent::MakeNewRCObj<Diligent::SerializedShaderImpl, Diligent::FixedBlockMemoryAllocator>::operator()<Diligent::SerializationDeviceImpl*, Diligent::ShaderCreateInfo const&, Diligent::ShaderArchiveInfo const&>(Diligent::SerializationDeviceImpl*&&, Diligent::ShaderCreateInfo const&, Diligent::ShaderArchiveInfo const&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Common/interface/RefCountedObjectImpl.hpp:670:94
    #46 0x55f5a3208e7f in void Diligent::RenderDeviceBase<Diligent::SerializationEngineImplTraits>::CreateShaderImpl<Diligent::ShaderArchiveInfo>(Diligent::IShader**, Diligent::ShaderCreateInfo const&, Diligent::ShaderArchiveInfo const&)::'lambda'()::operator()() const /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Graphics/Archiver/../GraphicsEngine/include/RenderDeviceBase.hpp:429:52
    #47 0x55f5a3208153 in void Diligent::RenderDeviceBase<Diligent::SerializationEngineImplTraits>::CreateDeviceObject<Diligent::IShader, Diligent::ShaderDesc, void Diligent::RenderDeviceBase<Diligent::SerializationEngineImplTraits>::CreateShaderImpl<Diligent::ShaderArchiveInfo>(Diligent::IShader**, Diligent::ShaderCreateInfo const&, Diligent::ShaderArchiveInfo const&)::'lambda'()>(char const*, Diligent::ShaderDesc const&, Diligent::IShader**, void Diligent::RenderDeviceBase<Diligent::SerializationEngineImplTraits>::CreateShaderImpl<Diligent::ShaderArchiveInfo>(Diligent::IShader**, Diligent::ShaderCreateInfo const&, Diligent::ShaderArchiveInfo const&)::'lambda'()) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Graphics/Archiver/../GraphicsEngine/include/RenderDeviceBase.hpp:366:13
    #48 0x55f5a31ea64d in void Diligent::RenderDeviceBase<Diligent::SerializationEngineImplTraits>::CreateShaderImpl<Diligent::ShaderArchiveInfo>(Diligent::IShader**, Diligent::ShaderCreateInfo const&, Diligent::ShaderArchiveInfo const&) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Graphics/Archiver/../GraphicsEngine/include/RenderDeviceBase.hpp:426:9
    #49 0x55f5a31e4f22 in Diligent::SerializationDeviceImpl::CreateShader(Diligent::ShaderCreateInfo const&, Diligent::ShaderArchiveInfo const&, Diligent::IShader**) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Graphics/Archiver/src/SerializationDeviceImpl.cpp:148:5
    #50 0x55f5a2ee81b5 in Diligent::RenderStatePackager::Execute(Diligent::IArchiver*, char const*)::$_0::operator()(unsigned int) const /home/ceeac/Projects/code/DiligentEngine/DiligentTools/RenderStatePackager/src/RenderStatePackager.cpp:244:28
    #51 0x55f5a2ee79d6 in Diligent::RefCntAutoPtr<Diligent::IAsyncTask> Diligent::EnqueueAsyncWork<Diligent::RenderStatePackager::Execute(Diligent::IArchiver*, char const*)::$_0>(Diligent::IThreadPool*, Diligent::RenderStatePackager::Execute(Diligent::IArchiver*, char const*)::$_0, float)::TaskImpl::Run(unsigned int) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Common/interface/ThreadPool.hpp:380:13
    #52 0x55f5a6706073 in Diligent::ThreadPoolImpl::ProcessTask(unsigned int, bool) /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Common/src/ThreadPool.cpp:112:20
    #53 0x55f5a670bb2e in Diligent::ThreadPoolImpl::ThreadPoolImpl(Diligent::IReferenceCounters*, Diligent::ThreadPoolCreateInfo const&)::'lambda'()::operator()() const /home/ceeac/Projects/code/DiligentEngine/DiligentCore/Common/src/ThreadPool.cpp:60:28
    #54 0x55f5a670b990 in void std::__invoke_impl<void, Diligent::ThreadPoolImpl::ThreadPoolImpl(Diligent::IReferenceCounters*, Diligent::ThreadPoolCreateInfo const&)::'lambda'()>(std::__invoke_other, Diligent::ThreadPoolImpl::ThreadPoolImpl(Diligent::IReferenceCounters*, Diligent::ThreadPoolCreateInfo const&)::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/12/bits/invoke.h:61:14
    #55 0x55f5a670b880 in std::__invoke_result<Diligent::ThreadPoolImpl::ThreadPoolImpl(Diligent::IReferenceCounters*, Diligent::ThreadPoolCreateInfo const&)::'lambda'()>::type std::__invoke<Diligent::ThreadPoolImpl::ThreadPoolImpl(Diligent::IReferenceCounters*, Diligent::ThreadPoolCreateInfo const&)::'lambda'()>(Diligent::ThreadPoolImpl::ThreadPoolImpl(Diligent::IReferenceCounters*, Diligent::ThreadPoolCreateInfo const&)::'lambda'()&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/12/bits/invoke.h:96:14
    #56 0x55f5a670b824 in void std::thread::_Invoker<std::tuple<Diligent::ThreadPoolImpl::ThreadPoolImpl(Diligent::IReferenceCounters*, Diligent::ThreadPoolCreateInfo const&)::'lambda'()>>::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/12/bits/std_thread.h:252:13
    #57 0x55f5a670b768 in std::thread::_Invoker<std::tuple<Diligent::ThreadPoolImpl::ThreadPoolImpl(Diligent::IReferenceCounters*, Diligent::ThreadPoolCreateInfo const&)::'lambda'()>>::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/12/bits/std_thread.h:259:11
    #58 0x55f5a670b200 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<Diligent::ThreadPoolImpl::ThreadPoolImpl(Diligent::IReferenceCounters*, Diligent::ThreadPoolCreateInfo const&)::'lambda'()>>>::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/12/bits/std_thread.h:210:13
    #59 0x7f5ee19d02b2 in execute_native_thread_routine /build/gcc-12-sZcx2y/gcc-12-12.1.0/build/x86_64-linux-gnu/libstdc++-v3/src/c++11/../../../../../src/libstdc++-v3/src/c++11/thread.cc:82:18
    #60 0x7f5ee1643b42 in start_thread nptl/pthread_create.c:442:8
    #61 0x7f5ee16d59ff  misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:81

I am not sure wheter this is an issue in Diligent or one in glslang.

ceeac avatar Feb 26 '23 18:02 ceeac