summaryrefslogtreecommitdiff
path: root/source/compiler-core/slang-artifact-associated-impl.h
diff options
context:
space:
mode:
authorjarcherNV <jarcher@nvidia.com>2025-06-06 14:30:06 -0700
committerGitHub <noreply@github.com>2025-06-06 14:30:06 -0700
commit0d16228ae22fa2e1a00e62dc099eea08da7717fe (patch)
tree067573914132892dc1336dcdea2c8b595f24f871 /source/compiler-core/slang-artifact-associated-impl.h
parent649d533727b31b28397ffb3a530e655ac3861547 (diff)
Add command line option for separate debug info (#7178)
* Add command line option for separate debug info Add command line arg -separate-debug-info which, if provided, produces both a .spv and a .dbg.spv file. The .dbg.spv file contains full debug info and the .spv file has all debug info stripped out. Also add a DebugBuildIdentifier instruction to store a unique hash in both the output files, so they can be more easily matched together. A matching API is provided to allow using the Slang API to retrieve a base and debug SPIRV as well as the debug build identifier string.
Diffstat (limited to 'source/compiler-core/slang-artifact-associated-impl.h')
-rw-r--r--source/compiler-core/slang-artifact-associated-impl.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/source/compiler-core/slang-artifact-associated-impl.h b/source/compiler-core/slang-artifact-associated-impl.h
index 0418b2018..6ae01626a 100644
--- a/source/compiler-core/slang-artifact-associated-impl.h
+++ b/source/compiler-core/slang-artifact-associated-impl.h
@@ -198,6 +198,8 @@ public:
SlangUInt registerIndex, // `register` for D3D12, `binding` for Vulkan
bool& outUsed) SLANG_OVERRIDE;
+ SLANG_NO_THROW virtual const char* SLANG_MCALL getDebugBuildIdentifier() SLANG_OVERRIDE;
+
void* getInterface(const Guid& uuid);
void* getObject(const Guid& uuid);
@@ -208,6 +210,7 @@ public:
List<ShaderBindingRange> m_usedBindings;
List<String> m_exportedFunctionMangledNames;
+ String m_debugBuildIdentifier;
};
} // namespace Slang