microsoft / microsoft/DirectXShaderCompiler
Revise DXC help text: "(must be used with /Fo <file>)"
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 3.7k
- Forks
- 900
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 44
Description
Description
Several of DXC's tool options, such as /Qstrip_debug have help text like this added to the end: "(must be used with /Fo <file>)"
However, these options do not technically require /Fo to be used for dxc. This text may be confusing, so perhaps it should be removed.
These options may not do much without /Fo, since they impact what's included in the output specified by /Fo, but it's not invalid.
I think the text was added in relation to container modification. When you load a shader container from file with /dumpbin these options only apply to the new container output specified by /Fo, not the original loaded container file. It might make sense to emit a warning in a case where the option does nothing because you aren't outputting a container, but this text in the option isn't necessary.
These are the affected options:
-extractrootsignature- It probably makes sense to leave the text on this option, since the only scenario this is used for is the/dumpbincontainer modification scenario.-Qstrip_debug-Qstrip_priv-Qstrip_reflect-Qstrip_rootsignature
Additionally, the /Qstrip_debug option says "Strip debug information from 4_0+ shader bytecode", which was inherited directly from FXC. Since DXC never produced 4_0 or 5_0 bytecode (only 6_0+), this is odd. FXC had it because of differences in functionality between DX9 and DX10 shader targets. The "4_0+" should probably be removed for DXC.
Environment
- DXC version: any
- Host Operating System: any
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at include/dxc/Support/HLSLOptions.td around lines 495-496 and inspect the help text for the listed DXC options. Verify the current output for these options, then update the misleading /Fo wording and the 4_0+ reference where appropriate. Done means the help text accurately describes DXC behavior, while the extract-rootsignature wording is retained.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- cli, compilers
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 45/100