<feed xmlns='http://www.w3.org/2005/Atom'>
<title>slang.git/tests/diagnostics/command-line, branch master</title>
<subtitle>Making it easier to work with shaders</subtitle>
<id>https://git.yummers.dev/slang.git/atom?h=master</id>
<link rel='self' href='https://git.yummers.dev/slang.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/'/>
<updated>2025-07-22T16:27:05+00:00</updated>
<entry>
<title>Fix segfault when using -separate-debug-info with unsupported targets (#7777)</title>
<updated>2025-07-22T16:27:05+00:00</updated>
<author>
<name>Copilot</name>
<email>198982749+Copilot@users.noreply.github.com</email>
</author>
<published>2025-07-22T16:27:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=6e0c63b723cc81efcc82c2af778b26e507c71825'/>
<id>urn:sha1:6e0c63b723cc81efcc82c2af778b26e507c71825</id>
<content type='text'>
* Initial plan

* Fix segfault when using -separate-debug-info with unsupported targets

Add validation to emit a diagnostic error when -separate-debug-info is used
with targets other than SPIR-V binary. Previously, this would cause a segfault
because the separate debug info logic is only implemented for SPIR-V targets.

Changes:
- Added new diagnostic error (ID 18) for unsupported separate debug info usage
- Added validation in OptionsParser::_parse() to check target compatibility
- Created test cases for HLSL and GLSL targets to verify the fix
- Updated error message to clarify only SPIR-V binary targets are supported

The fix prevents segfaults and provides clear feedback to users about
target limitations for the -separate-debug-info option.

Co-authored-by: csyonghe &lt;2652293+csyonghe@users.noreply.github.com&gt;

* Address feedback: fix segfault properly instead of preventing it

Co-authored-by: csyonghe &lt;2652293+csyonghe@users.noreply.github.com&gt;

---------

Co-authored-by: copilot-swe-agent[bot] &lt;198982749+Copilot@users.noreply.github.com&gt;
Co-authored-by: csyonghe &lt;2652293+csyonghe@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Support entrypoints defined in a namespace. (#5011)</title>
<updated>2024-09-05T18:53:14+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2024-09-05T18:53:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=879ee3d187e577189eba9aed7bc6326b740cb627'/>
<id>urn:sha1:879ee3d187e577189eba9aed7bc6326b740cb627</id>
<content type='text'>
* Support entrypoints defined in a namespace.

* Fix test.</content>
</entry>
<entry>
<title>Make slangc commandline parsing compatible with renderdoc. (#3658)</title>
<updated>2024-03-01T23:24:16+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2024-03-01T23:24:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=9a1e327387ffa8552ac2f0aee8836a0b10a5578f'/>
<id>urn:sha1:9a1e327387ffa8552ac2f0aee8836a0b10a5578f</id>
<content type='text'>
* Make slangc commandline parsing compatible with renderdoc.

* Fix tests.</content>
</entry>
<entry>
<title>Add slangc option to specialize entrypoint + auto glsl mode. (#3531)</title>
<updated>2024-02-01T07:53:28+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2024-02-01T07:53:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=a2d2018a8be41aecd2c1810db8556e0c07595fb9'/>
<id>urn:sha1:a2d2018a8be41aecd2c1810db8556e0c07595fb9</id>
<content type='text'>
* Add slangc option to specialize entrypoint.

* Auto enable glsl mode when input file has glsl extension name.

* Fix test.

---------

Co-authored-by: Yong He &lt;yhe@nvidia.com&gt;</content>
</entry>
<entry>
<title>Add GLSL Compatibility. (#3321)</title>
<updated>2023-11-15T01:46:05+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2023-11-15T01:46:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=12f7237e4060388494c549623f4a640327b7ca08'/>
<id>urn:sha1:12f7237e4060388494c549623f4a640327b7ca08</id>
<content type='text'>
* Parse glsl buffer blocks to GLSLInterfaceBlockDecl

* Parse glsl local size layout declarations

* Parse (and ignore) glsl version directives

* spelling

* Better l-value interpretation for glsl interface blocks

* Better l-value interpretation for glsl interface blocks

* Add compile flag for enabling glsl

* Parse and ignore precision modifiers.

* Automatically import `glsl` module for compatiblity.

* Complete vector and matrix types for glsl

* Remove generated file from repo

* Bump .gitignore

* do not mark out globals as params

* Synthesize entrypoint layout from global inout vars.

* update test result.

* Allow HLSL semantic on global variables.

* Fix.

* Fix test.

* Fix win32 compile error.

* Add more builtin input/output and texture intrinsics.

* Add struct/array constructor syntax.

* Skip `#extension` lines.

* overide operator * for matrix/vector multiplication.

* Add `matrixCompMult`.

* Parse modifiers in for loop init var declr.

* Add more glsl intrinsics, add stage into to var layout.

* Allow `int[3] x` syntax.

* Fix array type syntax.

---------

Co-authored-by: Ellie Hermaszewska &lt;ellieh@nvidia.com&gt;
Co-authored-by: Yong He &lt;yhe@nvidia.com&gt;</content>
</entry>
<entry>
<title>Update slang-glslang binaries to v13.0.0.x-g (#3268)</title>
<updated>2023-10-09T23:53:51+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2023-10-09T23:53:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=fb91955b8ef0986d6e1e39dced7e81f98e740f5b'/>
<id>urn:sha1:fb91955b8ef0986d6e1e39dced7e81f98e740f5b</id>
<content type='text'>
* Update slang-glslang binaries to v13.0.0.x-g

* Update tests.

---------

Co-authored-by: Yong He &lt;yhe@nvidia.com&gt;</content>
</entry>
<entry>
<title>Add spirv-dis as a downstream compiler (#3059)</title>
<updated>2023-08-08T05:23:06+00:00</updated>
<author>
<name>Ellie Hermaszewska</name>
<email>ellieh@nvidia.com</email>
</author>
<published>2023-08-08T05:23:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=97dccb4c61645a14f541e7bceba3ba1599efb8ba'/>
<id>urn:sha1:97dccb4c61645a14f541e7bceba3ba1599efb8ba</id>
<content type='text'>
* Add spirv-dis as a downstream compiler

* Add TODO for spirv-dis downstream compiler

* Do not use SpirvDis by default

* tabs to spaces

* regenerate vs projects

* correct test

* correct calling convention

---------

Co-authored-by: Yong He &lt;yonghe@outlook.com&gt;</content>
</entry>
<entry>
<title>CommandOptions (#2856)</title>
<updated>2023-04-29T13:24:26+00:00</updated>
<author>
<name>jsmall-nvidia</name>
<email>jsmall@nvidia.com</email>
</author>
<published>2023-04-29T13:24:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=19c0866b050a022406867aa650302f4efbf8e010'/>
<id>urn:sha1:19c0866b050a022406867aa650302f4efbf8e010</id>
<content type='text'>
* WIP CommandOptions

* Fix some output issues.

* Simplify word wrapping.

* Add file extensions.

* Change how lookup takes place.
Add appendSplit functions to StringUtil.
Make Categories hold the index range of their options.

* Small improvement.

* Lookup with partial option names.

* Associate user values.

* Encoding flags in the name.

* Refactor setting up of command options.

* Use CommandOptions in slang-options.

* Remove old help text.

* Cache the CommandOptions on the Session.

* Range checking.
Fix bug in the Options handling.

* Extra checks for validity.

* Get categories directly.

* Slight improvements over output.

* Added NameValue types.

* Fix typo.
Remove some now unused diagnostics.
Fix diagnostic in testing, as output has changed.

* Add minimal usage message.

* Remove platform executable extension from diagnostics output.

* Some improvements around getting names from NameValue types.

* Improve some option descriptions.

* Small fixes.</content>
</entry>
<entry>
<title>First Slang LLVM integration (#1934)</title>
<updated>2021-09-10T20:31:26+00:00</updated>
<author>
<name>jsmall-nvidia</name>
<email>jsmall@nvidia.com</email>
</author>
<published>2021-09-10T20:31:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=27ce5eb0de9f792f3e433bcb239c07d79371cf45'/>
<id>urn:sha1:27ce5eb0de9f792f3e433bcb239c07d79371cf45</id>
<content type='text'>
* #include an absolute path didn't work - because paths were taken to always be relative.

* First integration with 'slang-llvm'.

* Fix project.

* Fix test output.

* First pass assert support.

* Add inline impls for min and max.

* Add abs inline abs impl for llvm.

* Make abs not use ternary op

* Fix typo in slang-llvm.h

* Sundary fixes to make remaining tests using llvm backend pass.</content>
</entry>
<entry>
<title>Improvements in -X support (#1852)</title>
<updated>2021-05-22T20:03:30+00:00</updated>
<author>
<name>jsmall-nvidia</name>
<email>jsmall@nvidia.com</email>
</author>
<published>2021-05-22T20:03:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=34a1ff5226a526cc17c5baecd63637f69c324fc7'/>
<id>urn:sha1:34a1ff5226a526cc17c5baecd63637f69c324fc7</id>
<content type='text'>
* #include an absolute path didn't work - because paths were taken to always be relative.

* Added SourceLoc handling for command line parsing.

* Fix typo in debug.

* Fix issue around the DiagnosticSink used in options parsing not having a writer available - by having DiagnosticSink parenting.

* Small rename for clarity.

* WIP extracting command line args for downstream tools.

* Unit tests/bug fixes around extracting args.

* Use DownstreamArgs in the EndToEndCompileRequest

* Passing downstream compiler options downstream.

* Fix issue with endToEndReq being nullptr.

* Fix issue with diagnostics number change.

* Small improvements to how the source line is displayed if it's too long.
Default to 120, as suggested in previous review.

* Make render test use x-args parsing and CommandArgReader.

* Added missing diagnostics.

* More DownstreamArgs to linkage so can be seen by 'components'.
Added dxc-x-arg test.

* Used combination of name and args instead of two Lists, which whilst equivalent was perhaps a little confusing.

* Added documentation for -X support.

* Added test for x-args parsing diagnostic. Improved diagnostic with list of known names.

* Fix issues from merge.

* Fix lookup for -matrix-layout-column-major in render test.

* Remove commented out line.</content>
</entry>
</feed>
