Commit Graph

375 Commits

Author SHA1 Message Date
Sylvester Hesp
c248806bf0 Updated versions to 0.4.0-alpha.16 2022-11-04 20:39:07 +02:00
Sylvester Hesp
c30a37fe11 Added rerun-if-env-changed to build script 2022-11-04 17:22:42 +02:00
Sylvester Hesp
4968760328 Lint fixes 2022-11-04 17:22:42 +02:00
Eduard-Mihai Burtescu
27e3cfc328 Update to nightly-2022-10-01. 2022-11-04 17:22:42 +02:00
Eduard-Mihai Burtescu
dcf37b75a7 Update to nightly-2022-09-25. 2022-11-04 17:22:42 +02:00
Eduard-Mihai Burtescu
08250e5ca1 builder: work around rust-lang/rust#101483 abusing implicit i1->i8 zext (from_immediate). 2022-11-04 17:22:42 +02:00
Sylvester Hesp
c7ca8df8b1 Update to nightly-2022-09-11 2022-11-04 17:22:42 +02:00
Sylvester Hesp
64b159257e Update to nightly-2022-09-10 2022-11-04 17:22:42 +02:00
Eduard-Mihai Burtescu
53ad54add3 Fix new clippy warnings from the newer nightly. 2022-11-03 17:03:54 +02:00
Sylvester Hesp
5190e2e7b1 Compile fixes 2022-11-03 17:03:54 +02:00
Sylvester Hesp
efac825739 Update to nightly 2022-09-06 2022-11-03 17:03:54 +02:00
Jake Shadle
fc202cb3c5 Update spirv-tools 2022-10-28 17:28:50 +03:00
Eduard-Mihai Burtescu
65f892eb50 attr: fix #[spirv(flat)] checking to match the Vulkan spec. 2022-10-27 11:42:23 +03:00
Sylvester Hesp
c3a9b9fd3e
Migration from register_attr to register_tool (#926)
* Accept `#[rust_gpu::spirv()]` attributes rather than `#[spirv()]` in backend
* Implemented `#[spirv(..)]` proc macro attribute for all platforms that conditionally translates to `#[rust_gpu::spirv()]` based on platform
* Changed `SpirvBuilder` to always apply `register_tool(rust_gpu)` attribute to shader crates
* Updated docs
* Added changelog
2022-10-19 09:50:24 +00:00
Eduard-Mihai Burtescu
6dc23afaf8 Avoid rebuilding rustc_codegen_spirv between example runners. 2022-10-13 17:01:52 +03:00
Sylvester Hesp
d90274af0b Check whether REQUIRED_RUST_TOOLCHAIN matches local rust-toolchain file 2022-09-27 13:07:47 +03:00
Sylvester Hesp
985007fc08
Version bump to 0.4.0-alpha.15 (#920) 2022-09-23 11:36:34 +02:00
Sylvester Hesp
f00f267160
Added toolchain check to rustc_codegen_spirv (#919)
* Added toolchain check to rustc_codegen_spirv

* Removed unused dependency

* Reworked the toolchain check

* Removed some debug code
2022-09-23 11:35:23 +02:00
Sylvester Hesp
2442d900a8 Fix for read_scalar().unwrap() panicking 2022-09-21 14:23:11 +03:00
Eduard-Mihai Burtescu
69fb9e3188 Keep PassMode by reference instead of value. 2022-09-21 14:23:11 +03:00
Sylvester Hesp
4d22af493f Compile fixes 2022-09-21 14:23:11 +03:00
Sylvester Hesp
a9a233eb80 Linter fix 2022-09-08 13:01:05 +03:00
Sylvester Hesp
2dd88c1f13 Compile fixes 2022-09-08 13:01:05 +03:00
Sylvester Hesp
f66030dad9 Compile fixes 2022-09-08 13:01:05 +03:00
Sylvester Hesp
b800a34b6b Compile fixes 2022-09-08 13:01:05 +03:00
Sylvester Hesp
fff9e0cec3 Fixed compile errors 2022-09-07 16:03:32 +03:00
Sylvester Hesp
0eb12ccf90 Compile fixes 2022-09-07 16:03:32 +03:00
Sylvester Hesp
ec6207e664 Fixed compile errors 2022-09-07 16:03:32 +03:00
Sylvester Hesp
efe0f9becf Fixed compile error 2022-08-30 13:47:08 +03:00
Sylvester Hesp
30a682d633 Added stub for new method in IntrinsicCallMethods 2022-08-30 13:47:08 +03:00
Sylvester Hesp
e1aecffe67 Fixed compile errors 2022-08-30 13:47:08 +03:00
Sylvester Hesp
ccf01366b8 Updated OutRegister to reflect 'tcx lifetime usage 2022-08-29 16:54:38 +03:00
Sylvester Hesp
cb3289b132 Linter fix 2022-08-29 16:54:38 +03:00
Sylvester Hesp
7fd517a384 Compile fixes 2022-08-29 16:54:38 +03:00
Sylvester Hesp
7d8f02b380 Compile fixes 2022-08-29 16:54:38 +03:00
Sylvester Hesp
ccd2b12174 Fixed linter 2022-08-25 16:10:05 +03:00
Sylvester Hesp
37e5ce592d Compile fixes
Formatting fix
2022-08-25 16:10:05 +03:00
Sylvester Hesp
954edc9fb2 Compile fixes 2022-08-25 16:10:05 +03:00
Sylvester Hesp
a9209cd3bf Fixed formatting 2022-08-22 23:08:29 +03:00
Sylvester Hesp
86921a21ff Fixed compile errors 2022-08-22 23:08:29 +03:00
Sylvester Hesp
b3ff800246 Fixed compile errors 2022-08-22 23:08:29 +03:00
Sylvester Hesp
475f508eac Update to 2022-04-18 2022-08-17 20:54:04 +03:00
Eduard-Mihai Burtescu
a99fd432ad Avoid leaking file metadata (mtime/UID/GID) in rlibs through the ar crate. 2022-08-17 19:29:36 +03:00
Sylvester Hesp
805297146b
Update to 0.4.0-alpha.14 (#905)
* Changed version of all unpublished crates to 0.0.0

* New version: v0.4.0-alpha.14

* Fixed versions in deny.toml
2022-08-12 12:38:45 +02:00
Sylvester Hesp
3deccf2927
Added a description for rustc_codegen_spirv (#902) 2022-08-11 11:32:35 +00:00
Sylvester Hesp
fde567ed2d
Updated versions to 0.4.0-alpha.13 (#899)
* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* (cargo-release) version 0.4.0-alpha.13

* Updated versions in local dependencies as well
2022-08-11 12:34:07 +02:00
Johan Andersson
0693243619 Upgrade sanitize-filename v0.3.0 -> v0.4.0
No code changes needed
2022-08-11 06:41:31 +03:00
Minghao Liu
68db589d98 Update crates/rustc_codegen_spirv/src/linker/inline.rs
Co-authored-by: Eduard-Mihai Burtescu <edy.burt@gmail.com>
2022-05-24 15:35:03 +03:00
molikto
cdbf4dec1d warn when inline(never) is not respected 2022-05-24 15:35:03 +03:00
Dennis
03f89e8ba6 Add support for zero sized types 2022-04-28 14:42:31 +03:00
Eduard-Mihai Burtescu
b0328ed454 Fix style nit (quotes -> backticks) in crates/rustc_codegen_spirv/src/symbols.rs 2022-04-28 14:40:08 +03:00
BeastLe9enD
4b55f91de3 Support 'threads' with 'mesh_nv' and 'task_nv' 2022-04-28 14:40:08 +03:00
Johan Andersson
132b960e83
Upgrade from our standard lints v4 -> v6 (#861) 2022-04-17 12:16:59 +02:00
Eduard-Mihai Burtescu
116bf9c4d4 rustup: address (new) clippy errors. 2022-04-12 09:01:18 +03:00
Eduard-Mihai Burtescu
e08d0d6a48 rustup: update to nightly-2022-04-11. 2022-04-12 09:01:18 +03:00
Eduard-Mihai Burtescu
3e04f62ede rustup: update to nightly-2022-04-01. 2022-04-12 09:01:18 +03:00
Eduard-Mihai Burtescu
f0baf78ade rustup: update to nightly-2022-03-01. 2022-04-12 09:01:18 +03:00
Eduard-Mihai Burtescu
57eed8394e rustup: update to nightly-2022-02-01. 2022-04-12 09:01:18 +03:00
Eduard-Mihai Burtescu
5ac500d5b9
Split out a new -types crate so spirv-builder stops loading LLVM via dylibs. (#856)
* Split out a new `-types` crate so `spirv-builder` stops loading LLVM via dylibs.

* example-wgpu-runner: halve `max_push_constant_size` so it works on RADV/Fiji.
2022-03-30 09:07:14 +02:00
David Craven
4932a44658 Revert workgroup_size builtin. 2022-02-09 18:10:22 +02:00
David Craven
f638590389 Enable builtins. 2022-02-09 18:10:22 +02:00
Jake Shadle
7e7fdb4a4b Update spirv-tools to 0.8.0 2022-02-05 04:40:21 +02:00
Eduard-Mihai Burtescu
31e3fdb09b abi: explicitly unpack ScalarPair newtypes. 2022-01-23 20:18:56 +02:00
Ashley Hauck
f780364317
rustup update (#840)
* rustup update

* asm->core::arch::asm
2022-01-13 17:27:33 +02:00
Ashley Hauck
fe5c7716ed
Fix ByteAddressableBuffer PassMode::Pair (#837) 2022-01-10 09:35:03 +00:00
Ashley
d705a238a1
Add a preserve_bindings opt to the builder and codegen opts (#830) 2022-01-03 09:18:58 +01:00
Ashley Hauck
480cd048e0
Fuse OpPtrAccessChain with previous OpAccessChain (#835)
* Fuse OpPtrAccessChain with previous OpAccessChain

* constant-fold add, and change mul to wrap
2021-12-28 11:39:37 +01:00
Ashley Hauck
f08819fede
Fix some ICEs with bools (#826) 2021-12-15 14:10:38 +00:00
Ashley Hauck
d26716b881
Add error for insts not allowed outside fragment (#821)
* Add error for insts not allowed outside fragment

* make get_name return entry point names too
2021-12-14 08:04:50 +00:00
Ashley Hauck
9673f39967
A whole host of minor tweaks and clippy fixes (#824) 2021-12-14 07:45:45 +00:00
Eduard-Mihai Burtescu
7a60181679
Hint "rust-analyzer.rustcSource": "discover" next to rustc_private = true. (#825) 2021-12-14 08:09:21 +01:00
Ashley Hauck
2ca5826e55
rustup update (#816)
* rustup update

* Test fixes
2021-12-06 11:31:43 +01:00
Ashley Hauck
340f4bb70a
Error when int doesn't have spirv(flat) (#815) 2021-12-06 11:31:26 +01:00
Ashley Hauck
d5d0c90652
Fix for duplicate OpMemberName, and add OpMemberName for ScalarPairs (#814) 2021-12-01 10:25:23 +00:00
Ashley Hauck
2e4de94a66
Generate bools as bools instead of u8 (#809)
* Generate bools as bools instead of u8

* convert bool->int select to cast
2021-11-30 13:12:13 +00:00
Eduard-Mihai Burtescu
6232d95256
abi: demonstrate overriding the behavior of the layout_of query. (#808) 2021-11-26 11:51:56 +01:00
Benjamin Bouvier
c1dd14d863
Remove unused dependencies in rust-gpu (#800) 2021-11-22 13:12:43 +00:00
Eduard-Mihai Burtescu
553f79ebce
asm: support OpCompositeExtract inference for OpTypeStruct fields. (#803) 2021-11-22 13:27:55 +01:00
Eduard-Mihai Burtescu
cda583e0d5 Gather all interface OpVariables into OpEntryPoints. 2021-11-04 11:54:26 +02:00
Ashley Hauck
f7fc1245f3
Add tests for every builtin (#789) 2021-11-03 11:38:06 +01:00
Ashley Hauck
c4eb7af88e
Update rspirv to 0.11 (#788) 2021-10-29 13:38:28 +02:00
Ashley Hauck
8fb4f10995
Don't ICE on ZST union (#780) 2021-10-28 08:13:00 +00:00
Ashley Hauck
902c51c242
Inline calls that look like f(&s.x) (#777) 2021-10-27 13:28:35 +00:00
Ashley Hauck
c10a1ca756
Implement bool fusion pass (#776)
Fixes #677
2021-10-27 12:52:31 +00:00
Ashley Hauck
f58c6f20af
rustup update, and edition = 2021 (#775) 2021-10-26 10:24:44 +00:00
Ashley Hauck
3f22a897f3
Handle OpCopyMemory in mem2reg (#772)
* Handle OpCopyMemory in mem2reg

* Update tests
2021-10-25 11:01:53 +03:00
Ashley Hauck
8d019e4e37
Detect recursion in inline.rs and bail (#770)
* Detect recursion in inline.rs and bail

* Bail on inline error
2021-10-25 10:42:45 +03:00
Eduard-Mihai Burtescu
2dc88f26ac Simplify FnAbi handling for the fewer PassModes possible now. 2021-10-20 22:13:03 +03:00
Eduard-Mihai Burtescu
6d43d60142 abi: use span_bug! over bug! wherever a Span is available. 2021-10-20 22:13:03 +03:00
Eduard-Mihai Burtescu
111bebdd68 abi: readjust FnAbis to remove unsupported PassModes, via query hooks. 2021-10-20 22:13:03 +03:00
Eduard-Mihai Burtescu
13678f8644 abi: replace extern "C" with extern "unadjusted", not Rust ABI. 2021-10-20 22:13:03 +03:00
Eduard-Mihai Burtescu
f8333127d7 abi: remove redundant fn_sig hook from provide_extern. 2021-10-20 22:13:03 +03:00
Eduard-Mihai Burtescu
1436572c3a Move query hooks out of the crate root (and into abi). 2021-10-20 22:13:03 +03:00
Ashley Hauck
e2db97f899
Update dependencies (#765) 2021-10-14 14:38:15 +00:00
Ashley
14e2152198
Add an read_clock_khr function that calls OpReadClockKHR (#757)
* Add support for OpReadClockKHR

* Use a const scope

* Use full scope import path

* Apply some suggestions

* Add cfg flags and scopes as raw u32s

* Run cargo fmt

* Fix comment accuracy

* Update crates/rustc_codegen_spirv/src/spirv_type_constraints.rs

Co-authored-by: Ashley Hauck <953151+khyperia@users.noreply.github.com>

* Run rustfmt

* Add the shader clock feature and capability to the compile test rust flags and bless the changed test errors

Co-authored-by: Ashley Hauck <953151+khyperia@users.noreply.github.com>
2021-10-08 15:56:00 +02:00
Ashley Hauck
b692ab5afc
Convert Image<> parameters from enums to integers to make spirv-std build on stable (#761)
* Convert Image<> parameters from enums to integers to make spirv-std build on stable

* Remove access_qualifier from Image type

It's kernel-mode-only, and we won't ever support kernel mode.
2021-10-07 13:28:33 +02:00
Eduard-Mihai Burtescu
6780432b37 rustup: update to nightly-2021-09-29. 2021-09-30 09:26:11 +03:00
Jake Shadle
35172f7edb
Update spirv-tools to 0.7.0 (#753)
This moves to the v2021.3 version of SPIRV-Tools
2021-09-17 11:42:43 +00:00
Eduard-Mihai Burtescu
6807c5973d Re-add -Zsymbol-mangling-version=v0. 2021-09-07 12:24:38 +03:00
Eduard-Mihai Burtescu
75f81814ec rustup: update to nightly-2021-08-27. 2021-09-07 12:24:38 +03:00