João Capucho
0aa7681165
glsl-out: Implement bounds checks for ImageLoad
( #1889 )
...
* glsl-out: Implement bounds checks for `ImageLoad`
* Enable image bounds check snapshot tests for GLSL.
In addition to the snapshot.rs changes, this entails adding an entry
point function to `bounds-check-image-restrict.wgsl` and
`bounds-check-image-rzsw.wgsl`, including appropriate data in the
param.ron files.
* Apply comments
Snapshot test changes:
Co-authored-by: Jim Blandy <jimb@red-bean.com>
2022-05-30 12:13:58 -07:00
João Capucho
c7e245c083
Update README for glsl-in ( #1951 )
2022-05-29 19:50:30 -04:00
João Capucho
4cd997a3eb
glsl-out: Fix storage format for Rgba8Unorm
2022-05-28 14:30:12 -07:00
Jim Blandy
f035854dac
Doc tweaks.
2022-05-25 17:17:47 -07:00
Nicolas Silva
f9dfc38c40
Add a helper for getting the location of a span in some textual source.
2022-05-25 17:17:47 -07:00
teoxoy
62da3bf348
add HLSL validation via FXC to CI
2022-05-22 08:53:46 -07:00
Ashley Ruglys
104f4dc7ec
Fix a broken clippy lint
2022-05-22 08:42:20 -07:00
Ashley Ruglys
196c9981bc
Run cargo fmt
2022-05-22 08:42:20 -07:00
Ashley Ruglys
fea733f58e
Add MultiView to SUPPORTED_CAPABILITIES
2022-05-22 08:42:20 -07:00
Hasan Ali
571302e3ff
[hlsl-out] Fix countOneBits and reverseBits for signed integers
2022-05-17 00:12:18 +02:00
grovesNL
60ae549fe1
Add error for non-floating-point matrix
2022-05-14 17:00:15 +02:00
teoxoy
ab2806e05f
[hlsl-out] fix array constructor return type (for FXC)
2022-05-12 22:17:40 -07:00
teoxoy
5f47d6d31f
[msl-out] use matrix identity constructor
2022-05-12 22:15:45 -07:00
teoxoy
6dae3ac7e0
[wgsl-in] support partial vector & matrix identity constructors
2022-05-12 22:15:45 -07:00
teoxoy
f48174a0b4
[spv-out] use OpCopyObject for matrix identity casts
2022-05-12 22:15:45 -07:00
teoxoy
b7ff50619c
[spv-out] use OpCopyObject for bool - bool conversion due to OpBitcast not being feasible for booleans
2022-05-12 22:15:45 -07:00
teoxoy
afb6504b8b
add support for identity matrix constructor
2022-05-12 22:15:45 -07:00
Connor Fitzgerald
95d5d165fb
[valid] Fix bitflag assignments ( #1915 )
2022-05-12 13:10:17 +00:00
teoxoy
b688584d87
[msl-out] fix pointers to private or workgroup address spaces possibly being read only
2022-05-11 20:10:18 -07:00
teoxoy
fea33c682e
[wgsl-in] fix incr/decr not matching ValuePointer
2022-05-11 20:01:46 -07:00
Igor Shaposhnik
8db27c49f8
[wgsl] Reserve binding_array
2022-05-11 13:41:24 +02:00
Hasan Ali
205ea6cc5c
Fix hlsl output for writes to scalar/vector storage buffer
2022-05-10 22:46:47 +02:00
teoxoy
b3d5e6d807
[msl-out] zero init variables in function address space
2022-05-10 10:44:40 +02:00
teoxoy
239bbbbed4
[spv-out] zero init variables in function and private address spaces
2022-05-10 10:44:40 +02:00
teoxoy
ceb92921c2
remove named expression entry for phony assignment
2022-05-10 10:43:25 +02:00
teoxoy
66337af310
add TODOs for handling undefined behavior
2022-05-09 20:48:09 -07:00
teoxoy
ecd6d4e4aa
[spv-in] translate OpSMod correctly
2022-05-09 20:48:09 -07:00
teoxoy
7109cffb20
[spv-out] use SRem instead of SMod
2022-05-09 20:48:09 -07:00
teoxoy
0d4098d634
[spv-in] translate OpFMod correctly
2022-05-09 20:48:09 -07:00
teoxoy
c03d840755
[glsl-in] translate mod fn correctly
2022-05-09 20:48:09 -07:00
teoxoy
c584331f39
[hlsl-out] use fmod instead of %
2022-05-09 20:48:09 -07:00
Teodor Tanasoaia
e312a7adeb
[hlsl-out] use wrapped constructors when loading from storage address space ( #1893 )
2022-05-09 20:40:42 -07:00
Hiroaki Yutani
af6e2fc7ab
Describe the usage of cargo run
2022-05-09 23:29:00 +02:00
Hiroaki Yutani
f1d72f8433
Show naga-cli instead of cargo run on README
2022-05-09 23:29:00 +02:00
Hasan Ali
934fa16919
Implement reverseBits and countOneBits for SPIR-V ( #1897 )
...
* Implement reverseBits and countOneBits for spir-v
* Update tests
* Fix type error for glsl countOneBits implementation
2022-05-09 23:24:28 +02:00
João Capucho
cf32c2b7f3
glsl-out: Fix feature search in expressions
...
It was also searching in all entry points instead of only in the current
one.
All samples queries need the ARB_shader_texture_image_samples extension
so we need to check if any samples queries are made and if so request
the extension.
2022-05-05 19:06:33 +01:00
teoxoy
1869c6831e
[hlsl-out] zero init struct constructor
2022-05-03 19:51:51 +02:00
Mehmet Oguz Derin
9c8a51830c
Use Unicode 14 for WGSL
...
The unicode-xid crate just had a release with Unicode 14 data, which the WGSL spec requires.
2022-05-02 15:34:13 +02:00
Jim Blandy
57e1793143
Properly check that user-defined IO uses IO-shareable types.
...
Only numeric scalars and vectors, and structs whose members are such
values, are permitted as the types of user-defined IO.
2022-05-02 10:28:16 +02:00
Jim Blandy
dec07027ee
Split out check_one_validation
macro from check_validation
.
...
The new `check_one_validation` macro permits the source code to be a
computed expression, not just a string literal. This also cleans up
some of the handling of the optional guard expression.
2022-05-02 10:28:16 +02:00
Jim Blandy
a8e1e11437
Rename check_validation_error
macro to check_validation
.
...
The macro can check for both success and failure, so the new name is
more accurate, and shorter.
2022-05-02 10:28:16 +02:00
João Capucho
883a88580f
glsl-in: Apply comments
2022-05-01 13:52:04 -07:00
João Capucho
6a62d009ea
glsl-in: Improve the context emitter interface
...
Adds a new method `emit_restart` to perform the common operation of flushing
the `emitter` to the body and starting it again.
Adds documentation to all context emitter related methods
2022-05-01 13:52:04 -07:00
João Capucho
1c02de537b
glsl-in: Fix the ternary to behave as an if
...
The GLSL specification defines that only one of the branches should be
evaluated making the ternary operator syntatic sugar for an `if`.
2022-05-01 13:52:04 -07:00
Jim Blandy
2571039af0
Factor out code for deciding which pointers can be arguments.
2022-05-01 12:27:40 -07:00
teoxoy
0d3b9bfe45
update readme
2022-05-01 12:16:10 -07:00
Jim Blandy
fae939f537
[glsl-in] Simplify control flow in search for main
.
2022-05-01 00:29:17 +01:00
Jim Blandy
115a810981
[glsl-in] Use std::mem::take
as appropriate. ( #1878 )
2022-04-30 15:09:35 -04:00
Noel Tautges
a99fc27dc1
Change !0
to <type>::MAX
or -1
, depending on signedness
2022-04-30 10:36:00 -07:00
Jim Blandy
7b8d257043
Correct error message for Handle
index overflow.
...
This function is used from both `Arena` and `UniqueArena`. When its
code moved from `Arena` to `Handle`, the error message was adapted
incorrectly.
2022-04-30 10:18:19 -07:00