<feed xmlns='http://www.w3.org/2005/Atom'>
<title>slang.git/tests/autodiff/material2, 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-08-06T17:23:19+00:00</updated>
<entry>
<title>Fix 7723 - Add autodiff tests (#7919)</title>
<updated>2025-08-06T17:23:19+00:00</updated>
<author>
<name>Harsh Aggarwal (NVIDIA)</name>
<email>haaggarwal@nvidia.com</email>
</author>
<published>2025-08-06T17:23:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=d107327422b69777d41f1077c58d46c6bcf579c4'/>
<id>urn:sha1:d107327422b69777d41f1077c58d46c6bcf579c4</id>
<content type='text'>
* Fix 7723 - Add autodiff tests

* Update bug-1.slang

Adding Vulkan</content>
</entry>
<entry>
<title>no_diff diagnostics improvement (#7655)</title>
<updated>2025-07-09T16:25:29+00:00</updated>
<author>
<name>kaizhangNV</name>
<email>149626564+kaizhangNV@users.noreply.github.com</email>
</author>
<published>2025-07-09T16:25:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=a670bafc121c20168624f70a388dbe8556402c7f'/>
<id>urn:sha1:a670bafc121c20168624f70a388dbe8556402c7f</id>
<content type='text'>
close #6286.

This PR is to improve the diagnostics for no_diff usage.

In a differentiable function, any calls to a non-diff function with constant arguments should not require no_diff attribute.
This PR adds this extra check at `checkAutoDiffUsages` where it checks the differentiability on IR.

In a differentiable method, we will force to use `[NoDiffThis]` attribute if there is access to non-differentiable `This` type. Once this access is detected we will report a warning to bring users attention that this access won't generate any derivative, they have to use `[NoDiffThis]` to suppress that warning.
This PR adds this check at type checking stage, because it's the easiest way to find out all the `This` accesses.</content>
</entry>
<entry>
<title>[Auto-diff] Overhaul auto-diff type tracking + Overhaul dynamic dispatch for differentiable functions (#5866)</title>
<updated>2025-01-09T21:46:24+00:00</updated>
<author>
<name>Sai Praveen Bangaru</name>
<email>31557731+saipraveenb25@users.noreply.github.com</email>
</author>
<published>2025-01-09T21:46:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=87f00a36a123e36b415eeea82e02a8366cc5b881'/>
<id>urn:sha1:87f00a36a123e36b415eeea82e02a8366cc5b881</id>
<content type='text'>
* Overhauled the auto-diff system for dynamic dispatch

* More fixes

* remove intermediate dumps

* Update slang-ast-type.h

* More fixes + add a workaround for existential no-diff

* Update reverse-control-flow-3.slang

* remove dumps

* remove more dumps

* Delete working-reverse-control-flow-3.hlsl

* Cleanup comments + unused variables

* More comment cleanup

* Add support for lowering `DiffPairType(TypePack)` &amp; `MakePair(MakeValuePack, MakeValuePack)`

* Fix array of issues in Falcor tests.

* Update slang-ir-autodiff-pairs.cpp

* More fixes for Falcor image tests

* Small fixups.

---------

Co-authored-by: Yong He &lt;yonghe@outlook.com&gt;</content>
</entry>
<entry>
<title>Transfer offset decorations when legalizing laid-out structs (#5525)</title>
<updated>2024-11-11T17:26:55+00:00</updated>
<author>
<name>Anders Leino</name>
<email>aleino@nvidia.com</email>
</author>
<published>2024-11-11T17:26:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=9aa7adb417cabfcb441035b415e80691332bcd1b'/>
<id>urn:sha1:9aa7adb417cabfcb441035b415e80691332bcd1b</id>
<content type='text'>
* Transfer offset decorations when legalizing laid-out structs

Struct legalization removing fields not representable in memory should transfer all
decorations in case the struct has already had offsets calculated.

Closes #5264.

* format code

---------

Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;
Co-authored-by: Yong He &lt;yonghe@outlook.com&gt;</content>
</entry>
<entry>
<title>Enable WebGPU tests in CI (#5239)</title>
<updated>2024-10-15T16:11:53+00:00</updated>
<author>
<name>Anders Leino</name>
<email>aleino@nvidia.com</email>
</author>
<published>2024-10-15T16:11:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=9e3b0367cfd63f21a0519b61b6fd13e94dac1c51'/>
<id>urn:sha1:9e3b0367cfd63f21a0519b61b6fd13e94dac1c51</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Warnings function parameters (#4626)</title>
<updated>2024-07-16T21:54:53+00:00</updated>
<author>
<name>venkataram-nv</name>
<email>vedavamadath@nvidia.com</email>
</author>
<published>2024-07-16T21:54:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=05547e25353dd797791c2937679468d529d832d5'/>
<id>urn:sha1:05547e25353dd797791c2937679468d529d832d5</id>
<content type='text'>
* Handle out/inout functions with separate consideration

* Fixing bug with passing aliasable instructions

* Handle autodiff functions (fwd and rev) in warning system

* Handling interface methods

* Handling ref parameters like out/inout

* Temporary fix to remaining bugs

* Refactoring methods and tests

* Recursive check for empty structs

* Using default initializable interface in tests

* Resolving CI fail</content>
</entry>
<entry>
<title>Support visibility control and default to `internal`. (#3380)</title>
<updated>2023-12-06T20:05:07+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2023-12-06T20:05:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=11111e5733b189127dc2c4934d67693b9bc6e764'/>
<id>urn:sha1:11111e5733b189127dc2c4934d67693b9bc6e764</id>
<content type='text'>
* Support visibility control and default to `internal`.

* Fix wip.

* Fixes.

* Fix.

* Fix test.

* Add legacy language detection and compatibility for existing code.

* Add doc.

---------

Co-authored-by: Yong He &lt;yhe@nvidia.com&gt;</content>
</entry>
<entry>
<title>Fix subtle corner-case with vars getting hoisted out of the loop creating unnecessary loop state (#3165)</title>
<updated>2023-08-30T18:59:34+00:00</updated>
<author>
<name>Sai Praveen Bangaru</name>
<email>31557731+saipraveenb25@users.noreply.github.com</email>
</author>
<published>2023-08-30T18:59:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=4261185764ecae96466d243b8ce376a6a69c118c'/>
<id>urn:sha1:4261185764ecae96466d243b8ce376a6a69c118c</id>
<content type='text'>
* Extend the unit tests for MxLayeredMaterial

* Add breaking loop test

* Fix subtle corner-case with vars getting hoisted out of the loop creating unnecessary loop state

* remove whitespace changes

* Create loop-init.slang.expected.txt

* Add filecheck tests to ensure correct loop state

* Update comment

---------

Co-authored-by: winmad &lt;winmad.wlf@gmail.com&gt;
Co-authored-by: Yong He &lt;yonghe@outlook.com&gt;</content>
</entry>
<entry>
<title>Issue diagnostic for incorrect parameter types &amp; directionality when defining custom derivatives (#2947)</title>
<updated>2023-06-30T00:39:40+00:00</updated>
<author>
<name>Sai Praveen Bangaru</name>
<email>31557731+saipraveenb25@users.noreply.github.com</email>
</author>
<published>2023-06-30T00:39:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=a3ad4dd77bba6c87abad4f76b72055c9fed94bad'/>
<id>urn:sha1:a3ad4dd77bba6c87abad4f76b72055c9fed94bad</id>
<content type='text'>
* Issue diagnostic for incorrect directionality when defining custom derivative

* Better diagnostics on invalid custom derivatives

* Avoid duplicating `getParameterDirection()`

---------

Co-authored-by: Yong He &lt;yonghe@outlook.com&gt;</content>
</entry>
<entry>
<title>AD: Various fixes around dynamic dispatch  (#2820)</title>
<updated>2023-04-21T14:41:24+00:00</updated>
<author>
<name>Sai Praveen Bangaru</name>
<email>31557731+saipraveenb25@users.noreply.github.com</email>
</author>
<published>2023-04-21T14:41:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=3406f27d90a248194991b46d3f5fd89a1fd38b11'/>
<id>urn:sha1:3406f27d90a248194991b46d3f5fd89a1fd38b11</id>
<content type='text'>
* Add a test for the new diff material system

* Various fixes for AD

- inout primal context params converted to out params,
- added attributed types to list of stored types
- used differentiated primal func type instead of type of differentiated func to avoid tangling with user-code differential types.

---------

Co-authored-by: Lifan Wu &lt;lifanw@nvidia.com&gt;</content>
</entry>
</feed>
