<feed xmlns='http://www.w3.org/2005/Atom'>
<title>slang.git/tests/cross-compile/sv-coverage.slang, 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>2024-06-08T12:12:49+00:00</updated>
<entry>
<title>SPIRV `Block` decoration fixes. (#4303)</title>
<updated>2024-06-08T12:12:49+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2024-06-08T12:12:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=9a23a9aab3721828526c921db1e779008e133e8f'/>
<id>urn:sha1:9a23a9aab3721828526c921db1e779008e133e8f</id>
<content type='text'>
* SPIRV `Block` decoration fixes.

- SPIRV does not allow duplicate `Block` decorations. So we shouldn't be generating them.

- Also fixes duplication of OpName.

- SPIRV and HLSL do not allow ConstantBuffer with trailing unsized arrays. Added a check in the front-end against such code.

* Convert failing cross-compile tests to filecheck.

---------

Co-authored-by: Jay Kwak &lt;82421531+jkwak-work@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>[SPIRV] fix code gen for `SV_Coverage`. (#3718)</title>
<updated>2024-03-08T23:13:08+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2024-03-08T23:13:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=6f8a20688e0c4b989db152b4d06aeab04fac0567'/>
<id>urn:sha1:6f8a20688e0c4b989db152b4d06aeab04fac0567</id>
<content type='text'>
* [SPIRV] fix code gen for `SV_Coverage`.

* Fix #3714, #3699.

* Fix.</content>
</entry>
<entry>
<title>Fix support for SV_Coverage on GLSL path (#1239)</title>
<updated>2020-02-24T19:46:59+00:00</updated>
<author>
<name>Tim Foley</name>
<email>tfoleyNV@users.noreply.github.com</email>
</author>
<published>2020-02-24T19:46:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=777ac2bdde2db8ec3f24034022acfb893924de5a'/>
<id>urn:sha1:777ac2bdde2db8ec3f24034022acfb893924de5a</id>
<content type='text'>
There were two overlapping issues here:

1. We always mapped `SV_Coverage` to `gl_SampleMask`, even though `gl_SampleMaskIn` is the correct built-in variable to use for an input varying.

2. We treated `gl_SampleMask` like it was a scalar shader input, when it and `gl_SampleMaskIn` are actually arrays of indeterminate size (as a byproduct of trying to future-proof for implementations that might support hundreds or thousands of samples per pixel...)

The fix here is simple: map to either `gl_SampleMask[0]` or `gl_SampleMaskIn[0]` as appropriate. I suppose that this approach doesn't handle the possibility of eventually supporting &gt;32 samples per pixel by having something like `uint2 coverage : SV_Coverage`, but I think we can cross that bridge when we come to it.</content>
</entry>
</feed>
