src/codegen/spirv.zig | 691 +- src/codegen/spirv/Assembler.zig | 24 +- src/codegen/spirv/Cache.zig | 31 +- src/codegen/spirv/Module.zig | 274 +- src/codegen/spirv/Section.zig | 31 +- src/codegen/spirv/extinst.zig.grammar.json | 13 + src/codegen/spirv/spec.zig | 15300 ++++++++++++++++++++++++++------ src/link/SpirV.zig | 44 +- src/link/SpirV/BinaryModule.zig | 461 + src/link/SpirV/lower_invocation_globals.zig | 700 ++ src/link/SpirV/prune_unused.zig | 354 + test/behavior/align.zig | 1 + test/behavior/basic.zig | 1 + test/behavior/byval_arg_var.zig | 1 - test/behavior/cast.zig | 3 +- test/behavior/error.zig | 2 - test/behavior/floatop.zig | 2 - test/behavior/optional.zig | 3 - test/behavior/pointers.zig | 1 - test/behavior/vector.zig | 2 - test/behavior/while.zig | 2 - tools/gen_spirv_spec.zig | 407 +- tools/spirv/grammar.zig | 6 +- 23 files changed, 14997 insertions(+), 3357 deletions(-)