diff options
| author | Alexey Panteleev <alpanteleev@nvidia.com> | 2022-05-18 10:57:37 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-05-18 10:57:37 -0700 |
| commit | 69cb6e8f300d77e74bd2c7dfe15d12e10b38f512 (patch) | |
| tree | c2d23f2883acb28407106a096b55c64111f098b1 /source/slang/slang.cpp | |
| parent | 1148564b9cdbbc8fec4fbecf65b0af60aa6af344 (diff) | |
Support for querying which parameters are used in emitted code (#2239)
See https://github.com/shader-slang/slang/issues/2213
Diffstat (limited to 'source/slang/slang.cpp')
| -rw-r--r-- | source/slang/slang.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/source/slang/slang.cpp b/source/slang/slang.cpp index 7ce3594e5..7b22d04de 100644 --- a/source/slang/slang.cpp +++ b/source/slang/slang.cpp @@ -4147,6 +4147,11 @@ void EndToEndCompileRequest::setCompileFlags(SlangCompileFlags flags) getFrontEndReq()->compileFlags = flags; } +SlangCompileFlags EndToEndCompileRequest::getCompileFlags() +{ + return getFrontEndReq()->compileFlags; +} + void EndToEndCompileRequest::setDumpIntermediates(int enable) { shouldDumpIntermediates = (enable != 0); @@ -4909,4 +4914,14 @@ SlangResult EndToEndCompileRequest::getEntryPoint(SlangInt entryPointIndex, slan return SLANG_OK; } +SlangResult EndToEndCompileRequest::isParameterLocationUsed(Int entryPointIndex, Int targetIndex, SlangParameterCategory category, UInt spaceIndex, UInt registerIndex, bool& outUsed) +{ + CompileResult* compileResult = nullptr; + if (_getEntryPointResult(this, static_cast<int>(entryPointIndex), static_cast<int>(targetIndex), &compileResult) != SLANG_OK) + return SLANG_E_INVALID_ARG; + + return compileResult->isParameterLocationUsed(category, spaceIndex, registerIndex, outUsed); +} + + } // namespace Slang |
