* Defer pointer casts under the Logical addressing model.
* Access the original type's fields through a `pointercast`, under the Logical addressing model.
* Add a test using a `for` loop and a custom `Range`-like iterator.
* Safeness bug in StorageImage2d::write
It's pretty easy to see why this is unsafe, if multiple threads write to the same coordinate race-conditions happen.
Ultimately this should be addressed through something like #216 and some higher level abstractions on top of our buffer types, but since we don't have those for now, marking this as unsafe seems to be the only thing we can do for now.
* Remove unsafe {} block for clippy
* Add more types for inline asm
* Add basic OpDecorate support to inline asm
* Add khronos ticket link
* Add additional operands support to inline assembly
* Fix unused import warning
* Switch to rspirv git dependency
* Update Cargo.lock
* fmt
* Switch to while-let loop
* Address feedback around `additional_extensions`
* Remove debug code
* Remove un-needed special cases for OpCapability and OpExtension
* Switch back to iterating over all instructions only once, with this one cool trick
* Add test for OpDecorate / varargs
* Fix residual merge error
* Add test for a complex OpImageSample instruction that needs some BitEnums
* Update to nightly-2020-12-11.
* Update for rustfmt changes (`cargo fmt --all`).
* Update `rustc_codegen_spirv::linker::test` for `rustc_interface` changes.
* Use `spirv_tools::util::{to,from}_binary` to pacify clippy.
* `#[allow(clippy::unnecessary_wraps)]` on `Result`-returning `fn run_thin`.
* Generalize the zombie serialization system to arbitrary custom decorations.
* Support "Unroll" Loop Control via function-scoped `#[spirv(unroll_loops)]`.
* Pacify the merciless clippy.
* Get closer to testing NO_DCE in CI
The only remaining validation issues are due to the SROA pass not being
implemented yet
* Revert mistakenly included change
* new_structurizer: fix infinite loops.
* intrinsics: use an infinite loop for `abort`.
* Don't deduplicate zombie values even with other zombies.
* Bring back `zombie_even_in_user_code` and use it for constants.
* Use global `OpVariable`s instead of undefs for `ConstantPointer`s.
* Intercept panic calls and replace them with aborts.
* Update DILocation and update trait impls for nightly
* rustc_codegen_spirv: Update mir Scalar handling to nightly 2020-11-04
3a7970848cdf4d717d0b
* More changes to compile on the latest nightly
* Remove unused import warnings
Co-authored-by: Marijn Suijten <marijns95@gmail.com>