* Initial commit adding miscellaneous changes from msl-write and hlsl-write
* Same as previous commit
* Fixed divergence issue
* Removed some unnecessary barriers
* Zero init workgroup memory
* Added limits validation
* Added changelog
* Handled overflow, removed todo
* Lets see if this fixes llvmpipe
* Also this commit fixes llvmpipe maybe
* Unfortunate but not too unexpected at this point
* Updated feature to say to use ShaderRuntimeChecks::unchecked()
* Updated snapshots and took some changes from the hlsl writer
* Snapshots
* 2 quick tweaks
* Updated framework with suggestions by Connor in #8752
* Moved the task runtime limits into naga::back
* Fixed soem stuff
* Fixed checks: >= into >
* Cant believe I forgot this
* Removed code using u64 to check stuff
* Removed thing with limiting it to 2<<21
* Some more work
* Fixed compiles
* Added new field to spv options
* Updated some stuff to pass around the task runtime limits in more ways
* New PR started
* Did another quick fix
* Another quick fix
* Added changelog entry
* Added some explanation docs
* Fixed a warning
* Fixed shader
* Fixed some things & added docs
* Reverted dxc thing
* Fixed thing
* Refactored to TaskDispatchLimits
* Fixed compile error
This will make it easier for contributors to understand the file layout,
at the cost of said layout containing several more nested directories.
I will personally appreciate not having to remember to look for
`root.rs` instead of `main.rs`.
I also renamed the test targets so that they do not *all* share the
superfluous suffix “-test” (test targets live in a different namespace
than other target types and packages, so the name can presume that it
is always known that they are tests).
The Naga snapshot data sets `naga/tests/{in,out}` have been left in
their original positions.
Suggest checking that PRs assert that insertions into sets or maps
expected to be adding new values didn't actually just replace some
existing value.
Bug #7048 and its several duplicates would have been caught sooner if
the insertion of the new spill temporary into the `spilled_composites`
table had asserted that there was no existing spill variable for that
expression.