Commit Graph

91 Commits

Author SHA1 Message Date
Ashley Hauck
6019f391ec
Add API to enable ext/capabilities, and remove default capabilities (#630)
* Do not set some capabilities by default

* Fix nondeterminism

* Add required caps to mouse shader
2021-05-26 11:57:16 +02:00
Eduard-Mihai Burtescu
e5a07a9e2b
rustup: update to nightly-2021-05-24. (#631)
* rustup: update to nightly-2021-05-24.

* tests: update expected OpLine numbers in disassembly tests.
2021-05-25 08:28:47 +02:00
Ashley Hauck
47d1e75327
Always emit json metadata, and emit entry point names (#622)
* Always emit json metadata

* Codegen shader entry point names

* Fix tests
2021-05-24 09:45:58 +02:00
Ashley Hauck
ca988f95de
rustup update to 2021-05-17 (#621) 2021-05-20 14:46:09 +02:00
Ashley Hauck
943f09fef7
Emit OpLine instructions (#616)
* Emit OpLine instructions
2021-05-07 08:57:47 +00:00
XAMPPRocky
9c19414858
Add is_helper_invocation, and cleanup arch & asm functions (#612) 2021-05-04 10:51:20 +00:00
XAMPPRocky
2f451ee993
Add support for using target-features for extensions and capabilities (#610) 2021-05-03 11:19:10 +00:00
Ashley Hauck
1431c18b9d
Move disassemble tests to compiletest (#609)
* Move disassemble tests to compiletest

* Fix problematic tests

* Add newlines
2021-04-30 09:07:45 +02:00
Ashley Hauck
7a6806c17b
Add shader image query instructions (#608)
* Add shader image query instructions

* Normalize spirv-std src paths in test output

* Fix tests on vulkan
2021-04-30 09:07:38 +02:00
Ashley Hauck
49dd238083
Bump rust-toolchain to nightly-2021-04-25 (#605)
* Bump rust-toolchain to nightly-2021-04-25
2021-04-28 13:53:33 +00:00
XAMPPRocky
f88ae5b28a
Add Const Generic Image Type (#359)
* Add parameterized Image type

* nits

* Update crates/spirv-std/src/lib.rs

* Update crates/rustc_codegen_spirv/src/symbols.rs

* Update crates/rustc_codegen_spirv/src/symbols.rs

* Update symbols.rs
2021-04-28 09:47:40 +02:00
Erin Power
18ba6f322d Add support for SPV_KHR_ray_query 2021-04-27 16:07:46 +03:00
Markus Siglreithmaier
3d710e7c4b
Fix semantics type for control barriers to support multiple flags (#598)
* Fix semantics type for control barriers to support multiple flags

* spirv-std: convert memory semantics to bitflag

* Update crates/spirv-std/src/arch/barrier.rs

Co-authored-by: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com>

Co-authored-by: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com>
2021-04-22 11:17:02 +02:00
XAMPPRocky
a42a9f20e1
Add support for SPV_KHR_ray_tracing (#563)
* Add support for SPV_KHR_ray_tracing

* Update spirv_type_constraints.rs

* Update spirv_type_constraints.rs

* Update spirv_type_constraints.rs
2021-04-16 16:59:11 +03:00
Eduard-Mihai Burtescu
bb7adc912f asm: infer the result type of OpAccessChain (when indexing into arrays). 2021-04-16 09:00:45 +03:00
Ashley Hauck
6c8dece25a
Fix issue 585 (#594) 2021-04-13 11:34:02 +02:00
Ashley Hauck
9679e615bd
Disable variable pointers by default (#591) 2021-04-13 11:30:16 +02:00
Eduard-Mihai Burtescu
7c568ab219 Allow constant references (to constant data), when they're valid SPIR-V. 2021-04-12 11:09:50 +03:00
Eduard-Mihai Burtescu
4395b84114 Deprecate #[spirv(block)] and auto-wrap in "interface blocks" instead. 2021-04-05 20:45:59 +03:00
Eduard-Mihai Burtescu
674649c4cb entry: tweak spans (mostly to use hir_param.ty_span in more places). 2021-04-05 20:45:59 +03:00
Eduard-Mihai Burtescu
6c3ce3fac2 entry: use a Builder instead of manually emitting into the entry stub. 2021-04-05 20:45:59 +03:00
Eduard-Mihai Burtescu
2b15e20f2f Unbreak CI (fix control_barrier and memory_barrier tests). 2021-04-05 20:45:59 +03:00
XAMPPRocky
dd60da0be6
Add memory_barrier and control_barrier (#519) 2021-04-01 16:00:30 +02:00
Ashley Hauck
4fa73bddb4
Infer the storage class for images/samplers/imagesamplers (#567)
* Infer the storage class for images/samplers/imagesamplers

* format

* Move comment
2021-04-01 07:49:08 +00:00
Jesse
5e429866da
feat: Added instructions for depth reference and project coordinate image instructions (#545)
* feat: Added instructions for depth reference and project coordinate image instructions

* docs: add alias annotation for methods in spirv-std/src/textures.rs
2021-03-30 08:14:18 +02:00
Eduard-Mihai Burtescu
59085024e3
Add validation test for DST StorageBuffer + #[spirv(block)]. (#553) 2021-03-30 07:36:03 +02:00
XAMPPRocky
3a53968817
Add support for multiple target environments (#533)
* Add support for multiple target environments

* updates from code review

* Update lib.rs
2021-03-29 18:43:07 +02:00
Henno
05ce407278
Add basic support for struct DSTs (#504)
* Add basic support for struct DSTs

* Add tests

* cleanup tests

* Update with entry changes, address review

* Address review

* Update allocate_const_scalar.stderr

* Add ArrayStride decoration to OpTypeRuntimeArray
2021-03-29 18:02:09 +02:00
khyperia
eccd3b2559 run format on tests 2021-03-26 13:15:29 +01:00
khyperia
d3605f79c7 Add #[spirv(invariant)] 2021-03-26 13:15:29 +01:00
Eduard-Mihai Burtescu
908487ae1d entry: use T instead of &T for Inputs. 2021-03-23 09:30:24 +01:00
Eduard-Mihai Burtescu
8c1406ee39 entry: reorganize storage class handling, and move some checking to attr. 2021-03-23 09:30:24 +01:00
Eduard-Mihai Burtescu
e04e1f53fc Replace spirv_std::storage_class::X<T> with &T/&mut T and optionally #[spirv(x)]. 2021-03-23 09:30:24 +01:00
XAMPPRocky
e7d68f7435
Add primitive set of arch instructions (#520) 2021-03-22 10:55:18 +00:00
Ashley Hauck
89dc8c65aa
Add cubemaps (#521) 2021-03-22 11:35:42 +01:00
Eduard-Mihai Burtescu
ffcddd4f4c attr: disallow multiple attributes that are identical or in the same category. 2021-03-22 11:23:55 +02:00
Eduard-Mihai Burtescu
b3b3fbec98 tests: add a test for where #[spirv(...)] attributes can (not) be used. 2021-03-22 11:23:55 +02:00
Eduard-Mihai Burtescu
3274778d98 link: don't use {:?} with paths because it turns \ into \\. 2021-03-22 08:01:22 +02:00
Eduard-Mihai Burtescu
e6a9dcec1c Allow running cargo compiletest from any sub-directory in the workspace. 2021-03-22 08:01:22 +02:00
Jesse
9fb930b8f1
feat: add OpImageSampleExplicitLod to spirv-std (#498) 2021-03-19 07:24:20 +01:00
XAMPPRocky
27eb1d1413
Refactor validation tests to use compiletest (#464)
* Refactor validation tests to use compiletest

* Update tests/ui/lang/core/ptr/allocate_const_scalar.rs
2021-03-18 17:16:21 +00:00