summaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2024-03-01 13:39:25 -0800
committerGitHub <noreply@github.com>2024-03-01 13:39:25 -0800
commitff48854b1133935ecc2d32fc3bc35631d0a68e17 (patch)
tree45ea98428a5bfba761a7e1a9b4204d8e969e5317 /docs
parentcc9ada16b3dbbbd85f03faec74afc7bae4b8014c (diff)
Add documentation for debugging. (#3656)
* Add documentation for debugging. * typo
Diffstat (limited to 'docs')
-rw-r--r--docs/user-guide/08-compiling.md6
-rw-r--r--docs/user-guide/10-link-time-specialization.md4
2 files changed, 8 insertions, 2 deletions
diff --git a/docs/user-guide/08-compiling.md b/docs/user-guide/08-compiling.md
index 358246b5a..136b67858 100644
--- a/docs/user-guide/08-compiling.md
+++ b/docs/user-guide/08-compiling.md
@@ -676,3 +676,9 @@ meanings of their `CompilerOptionValue` encodings.
| VulkanBindShiftAll | Specifies the `-fvk-bind-shift` option for all spaces. `intValue0`: kind, `intValue1`: shift. |
| GenerateWholeProgram | When set will emit target code for the entire program instead of for a specific entrypoint. `intValue0` specifies a bool value for the setting. |
| UseUpToDateBinaryModule | When set will only load precompiled modules if it is up-to-date with its source. `intValue0` specifies a bool value for the setting. |
+
+## Debugging
+
+Slang's SPIRV backend supports generating debug information using the [NonSemantic Shader DebugInfo Instructions](https://github.com/KhronosGroup/SPIRV-Registry/blob/main/nonsemantic/NonSemantic.Shader.DebugInfo.100.asciidoc).
+To enable debugging information when targing SPIRV, specify the `-emit-spirv-directly` and the `-g2` argument when using `slangc` tool, or set `EmitSpirvDirectly` to `1` and `DebugInformation` to `SLANG_DEBUG_INFO_LEVEL_STANDARD` when using the API.
+Debugging support has been tested with RenderDoc. \ No newline at end of file
diff --git a/docs/user-guide/10-link-time-specialization.md b/docs/user-guide/10-link-time-specialization.md
index 9f2fea969..4541a6f55 100644
--- a/docs/user-guide/10-link-time-specialization.md
+++ b/docs/user-guide/10-link-time-specialization.md
@@ -155,7 +155,7 @@ void main(uint tid : SV_DispatchThreadID)
}
```
-Again, we can separately compile these modules into binary forms independently with how they will be specialized.
+Again, we can separately compile these modules into binary forms independently from how they will be specialized.
To specialize the shader, we can author a third module that provides a definition for the `extern Sampler` type:
```csharp
@@ -164,7 +164,7 @@ import common;
export struct Sampler : ISampler = FooSampler;
```
-The `=` syntax is a syntacic sugar that expands to the following code:
+The `=` syntax is a syntactic sugar that expands to the following code:
```csharp
export struct Sampler : ISampler