<feed xmlns='http://www.w3.org/2005/Atom'>
<title>slang.git/tests/reflection/shared-modifier.hlsl, 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>2022-05-18T17:57:37+00:00</updated>
<entry>
<title>Support for querying which parameters are used in emitted code (#2239)</title>
<updated>2022-05-18T17:57:37+00:00</updated>
<author>
<name>Alexey Panteleev</name>
<email>alpanteleev@nvidia.com</email>
</author>
<published>2022-05-18T17:57:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=69cb6e8f300d77e74bd2c7dfe15d12e10b38f512'/>
<id>urn:sha1:69cb6e8f300d77e74bd2c7dfe15d12e10b38f512</id>
<content type='text'>
See https://github.com/shader-slang/slang/issues/2213 </content>
</entry>
<entry>
<title>Merge from v0.9.15 (#460)</title>
<updated>2018-03-28T15:17:48+00:00</updated>
<author>
<name>Tim Foley</name>
<email>tfoleyNV@users.noreply.github.com</email>
</author>
<published>2018-03-28T15:17:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=184dc5cd6998b6277881fae4a68d91de86e2d63f'/>
<id>urn:sha1:184dc5cd6998b6277881fae4a68d91de86e2d63f</id>
<content type='text'>
* Fix bug when subscripting a type that must be split (#396)

The logic was creating a `PairPseudoExpr` as part of a subscript (`operator[]`) operation, but neglecting to fill in its `pairInfo` field, which led to a null-pointer crash further along.

* Allow writes to UAV textures (#416)

Work on #415

This issue is already fixed in the `v0.10.*` line, but I'm back-porting the fix to `v0.9.*`.
The issue here was that the stdlib declarations for texture types were only including the `get` accessor for subscript operations, even if the texture was write-able.

I've also included the fixes for other subscript accessors in the stdlib (notably that `OutputPatch&lt;T&gt;` is readable, but not writable, despite what the name seems to imply).

* Fix infinite loop in semantic parsing (#424)

The code for parsing semantics was looking for a fixed set of tokens to terminate a semantic list, rather than assuming that whenever you don't see a `:` ahead, you probably are done with semantics. This meant that you could get into an infinite loop just with simple mistakes like leaving out a `;`.

This change fixes the parser to note infinite loop in this case, and adds a test case to verify the fix.

* Expose HLSL `shared` modifier through reflection. (#436)

This is a request from Falcor, because the `shared` modifier can be used as a hint to optimize the grouping of parameters for binding. The intention is that `shared` marks shader parameters (including parameter blocks) that will us the same values across many draw calls (e.g., per-frame data, as opposed to per-model or per-instance).

The mechanism I'm using here is to provide a general reflection API for exposing the `Modifier`s already attached to declarations. While the only modifier exposed is `shared`, and the only modifier information being exposed is presence/absence, this interface could be extended down the line.
</content>
</entry>
</feed>
