<feed xmlns='http://www.w3.org/2005/Atom'>
<title>slang.git/tests/compute/dynamic-generics-simple.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>2025-08-25T05:19:37+00:00</updated>
<entry>
<title>Fix#8082: Batch-6: Enable cuda tests (#8266)</title>
<updated>2025-08-25T05:19:37+00:00</updated>
<author>
<name>Harsh Aggarwal (NVIDIA)</name>
<email>haaggarwal@nvidia.com</email>
</author>
<published>2025-08-25T05:19:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=53fa12e1b522a229006595001421caa62e22eba8'/>
<id>urn:sha1:53fa12e1b522a229006595001421caa62e22eba8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Enable lower-generics pass universally. (#1518)</title>
<updated>2020-08-28T16:04:55+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2020-08-28T16:04:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=ab5b0a7f9fbc47f7c51a7ec4a20ac0be55333e93'/>
<id>urn:sha1:ab5b0a7f9fbc47f7c51a7ec4a20ac0be55333e93</id>
<content type='text'>
* Enable lower-generics pass universally.

* Exclude builtin interfaces and functions from lower-generics pass.

* Update stdlib.

* Fixup.

* Fixes handling of nested intrinsic generic functions.

* Fixes.

* Fixes.</content>
</entry>
<entry>
<title>`AnyValue` based dynamic dispatch code gen (#1477)</title>
<updated>2020-08-05T17:32:52+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2020-08-05T17:32:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=6fb2aa70a2681bffbac7e8de67e9598105389945'/>
<id>urn:sha1:6fb2aa70a2681bffbac7e8de67e9598105389945</id>
<content type='text'>
* AnyValue based dynamic code gen

* Fix aarch64 build error</content>
</entry>
<entry>
<title>Disable dynamic dispatch tests on CUDA - as fails with exception about unhandled op. (#1425)</title>
<updated>2020-07-01T21:44:46+00:00</updated>
<author>
<name>jsmall-nvidia</name>
<email>jsmall@nvidia.com</email>
</author>
<published>2020-07-01T21:44:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=6cbb88fb86b1688b37106ac873d68a57def706f2'/>
<id>urn:sha1:6cbb88fb86b1688b37106ac873d68a57def706f2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Generate dynamic C++ code for the minimal test case. (#1391)</title>
<updated>2020-06-17T20:08:27+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2020-06-17T20:08:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=cd7f01b63a52eaaad00088524801e502bcb0f168'/>
<id>urn:sha1:cd7f01b63a52eaaad00088524801e502bcb0f168</id>
<content type='text'>
* Add IR pass to lower generics into ordinary functions.

* Fix project files

* Emit dynamic C++ code for simple generics and witness tables.

Fixes #1386.

* Remove -dump-ir flag.

* Fixups.</content>
</entry>
<entry>
<title>Generate IRType for interfaces, and reference them as `operand[0]` in IRWitnessTable values (#1387)</title>
<updated>2020-06-15T16:04:53+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2020-06-15T16:04:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=90444f8366255f274993ce4699738d9ab7cf4ee1'/>
<id>urn:sha1:90444f8366255f274993ce4699738d9ab7cf4ee1</id>
<content type='text'>
* Generate IRType for interfaces, and  use them as the type of IRWitnessTable values.

This results the following IR for the included test case:
```
[export("_S3tu010IInterface7Computep1pii")]
let  %1 : _     = key
[export("_ST3tu010IInterface")]
[nameHint("IInterface")]
interface %IInterface   : _(%1);

[export("_S3tu04Impl7Computep1pii")]
[nameHint("Impl.Compute")]
func %Implx5FCompute    : Func(Int, Int)
{
block %2(
                [nameHint("inVal")]
                param %inVal    : Int):
        let  %3 : Int   = mul(%inVal, %inVal)
        return_val(%3)
}
[export("_SW3tu04Impl3tu010IInterface")]
witness_table %4        : %IInterface
{
        witness_table_entry(%1,%Implx5FCompute)

}
```

* Fixes per code review comments.

Moved interface type reference in IRWitnessTable from their type to operand[0].

* Fix typo in comment.</content>
</entry>
</feed>
