teoxoy
e4c017cb7c
add more tests for operators
2022-04-15 11:21:51 +02:00
Jim Blandy
bdbf821c32
Test matrix-typed uniform globals.
2022-04-14 11:54:47 -07:00
Jim Blandy
27d0fee2e7
More tests for non-struct global types.
2022-04-14 11:45:42 -07:00
Jim Blandy
f11d27af6f
Reject empty struct types. ( #1826 )
2022-04-14 09:36:53 -07:00
Jim Blandy
170faab6db
Move invariant
bit from Binding::Builtin
to Builtin::Position
. ( #1822 )
...
Use the type system to enforce the rule that the invariant attribute
may only appear on `Position` builtins.
2022-04-13 14:57:05 -07:00
Jim Blandy
78975f25da
[msl-out] Permit invariant
qualifier on vertex shader outputs.
2022-04-12 22:22:20 +02:00
Teodor Tanasoaia
bd62887a13
[hlsl-out] Add more padding when necessary ( #1814 )
...
* [hlsl-out] add padding at the end of structs and after struct members of type matrix and array (when necessary)
* use wrapped constructor fn for constants
* add array as fn arg test
* fix glsl array fn arg
* add wrapped constructor for arrays
* [glsl-out] support multidimensional arrays
* address comments
2022-04-11 20:34:06 -07:00
teoxoy
0e77d26241
cast packed vec3's to vec3 for expressions that require it
2022-04-11 20:30:00 -07:00
teoxoy
32cdb27230
add better tests for msl packed vec3
2022-04-11 20:30:00 -07:00
teoxoy
d7f4c340a7
add matrix vector multiplication test
2022-04-11 20:30:00 -07:00
teoxoy
1688a767bb
fix packed vec3 stores
2022-04-11 20:30:00 -07:00
teoxoy
1f797fdc2f
add more packed vec3 load/stores to test
2022-04-11 20:30:00 -07:00
Teodor Tanasoaia
7aaac25fbf
[hlsl-out] fix matCx2 translation for uniform buffers ( #1802 )
...
* [hlsl-out] fix matCx2 translation
* fix msl validation (warning: unused variable)
* fix msl buffer declaration
* address comments
2022-04-10 22:29:11 -07:00
teoxoy
6ee1fd4929
fix MSL issue
2022-04-10 21:49:23 -07:00
teoxoy
d3957c1186
implement invariant attribute
2022-04-10 21:49:23 -07:00
Noel Tautges
a3d968e795
[hlsl-out] Don't output interpolation modifier if it's the default ( #1809 )
...
* hlsl-out: don't output interpolation modifier if it's the default (linear/`Interpolation::Perspective`)
* Remove linear interpolation modifiers from HLSL output tests
2022-04-09 22:36:36 -07:00
Teodor Tanasoaia
cfcf625019
[wgsl-in] Constructor improvements ( #1790 )
...
* add support for zero value constructors and constructors that infer their type from their parameters
* address comments
* extract constructor machinery into new module
* fix doc link
2022-03-29 22:51:54 -07:00
Teodor Tanasoaia
012f2a6b2e
Merge pull request #1784 from teoxoy/patch-2
...
[hlsl-out] fix matrix not being declared as transposed
2022-03-27 22:24:09 -07:00
João Capucho
4146cb24d0
glsl-in: Allow nested accesses in lhs positions
...
Also fixes access to runtime sized arrays behind named blocks
2022-03-27 21:47:51 -07:00
João Capucho
21f89b65e4
glsl-in: use forced conversions for vector/matrix constructors
...
The spec defines that for vector and matrix constructors all arguments
should use the same conversions as scalar constructors (forced conversions)
2022-03-27 21:44:17 -07:00
João Capucho
767d970312
glsl-in: Resume expression emit after imageStore
...
This wasn't done before which caused the frontend to crash if anything
appeared after it.
2022-03-27 21:42:02 -07:00
teoxoy
9dddfeec37
[wgsl-in] implement increment and decrement
2022-03-27 00:34:53 -07:00
Pu Xingyu
b17e6cfe43
wgsl-out: Do not output semicolon after struct decl
2022-03-27 00:22:58 -07:00
Pu Xingyu
3c313564ac
wgsl-in: Make semicolon after struct decl optional
2022-03-27 00:22:58 -07:00
João Capucho
54ef2e39a0
glsl-in: Allow multiple array specifiers
2022-03-27 00:18:20 -07:00
João Capucho
b568bfbbdf
glsl-in: Fix memory qualifiers being inverted
...
Adds some documentation to better explain how the memory qualifier works
troughout the parser and some storage textures tests.
2022-03-27 00:02:26 -07:00
teoxoy
cf992a9a95
[wgsl-in] implement while loop
2022-03-22 22:47:47 -07:00
Igor Shaposhnik
b5761d9611
[wgsl-out] Uses commas to separate struct members instead of semicolons
2022-03-12 22:07:06 -08:00
Igor Shaposhnik
816fa347ad
[wgsl-in] Uses commas to separate struct members instead of semicolons
2022-03-12 22:07:06 -08:00
hatoo
7f4c01784c
Remove vs_bake
entry point from tests/in/shadow.wgsl
...
This entry point isn't useful for testing.
2022-03-11 20:14:25 -08:00
hatoo
ae282703e2
Update test case from wgpu's shadow example
2022-03-11 20:14:25 -08:00
Dzmitry Malyshau
1d3fb26ffd
Actually test push constants to be used ( #1767 )
2022-03-08 23:02:20 -05:00
Jim Blandy
c84aa77579
[msl-out] Properly rename entry point arguments for struct members. ( #1766 )
2022-03-08 10:07:30 -05:00
Dzmitry Malyshau
79845371d3
msl: qualify read-only storage with const
2022-03-06 19:28:15 -08:00
Vincent Isambart
fe3d945a58
Not operator depending on expression type
2022-03-05 19:11:27 -08:00
João Capucho
f054aa94f4
glsl-in: Support arrays as input/output types
...
Like it was already done for structs, arrays are flattened and each
element is attributed a location that is it's index + the array base
location.
2022-03-03 21:42:48 -08:00
João Capucho
a2bcdda81c
glsl-in: Fix freestanding constructor parsing
2022-03-03 21:39:45 -08:00
João Capucho
af8dd4b3bd
glsl-in: Fix matrix by scalar operations
2022-03-02 22:27:24 -08:00
João Capucho
48320db507
glsl-in: Fix matrix by matrix division
2022-03-02 22:27:24 -08:00
João Capucho
7f485d262b
glsl-in: Fix matrix comparisons
2022-03-02 22:27:24 -08:00
João Capucho
d449d2e665
glsl-in: Add support for texelFetchOffset
2022-03-01 21:06:50 -08:00
João Capucho
98e7add6a2
glsl-out: texture function fixes
...
- samplerCubeShadow requires vec3 gradients
- Bias must be written after offset
- sampler1D hack on GLES requires vec2 gradients
- textureSize doesn't accept a lod argument for MS samplers
- sampler1DArray hack on GLES requires a y component on imageLoad
2022-02-23 23:23:05 -05:00
Dzmitry Malyshau
a45b9a6cc6
wgsl: update find msb/lsb names ( #1735 )
2022-02-21 22:40:00 -08:00
Jim Blandy
679087bd9c
[msl-out] Bounds checks for ImageLoad
and ImageStore
. ( #1730 )
2022-02-21 15:08:14 -08:00
Jim Blandy
688ad474f7
[msl-out] Write 'using metal::uint' at the top, to work around bug. ( #1740 )
...
This lets us remove some special cases where `uint` must be fully
qualified, even though other similar types are not.
2022-02-21 13:22:54 -08:00
João Capucho
1ccfc8991e
glsl-in: Add test for conditional builtin inject
2022-02-19 10:42:44 -05:00
João Capucho
9e4f678c13
glsl-in: Add tests for images
2022-02-16 21:56:32 +00:00
Jim Blandy
771d62710c
[msl-out] Consolidate numeric type formatting.
2022-02-15 09:58:00 -05:00
Igor Shaposhnik
e1e9848706
[wgsl-out] Optional parentheses for if and switch
2022-02-15 09:57:07 -05:00
Igor Shaposhnik
c356b93962
[wgsl-in] Optional parentheses for if and switch
2022-02-15 09:57:07 -05:00