cmd/compile: add Vulkan function name to error messages
init.sh: don't build SwiftShader with -Werror
cmd/compile: remove GLSL hash from output
This projects contains the compiler for turning Vulkan SPIR-V compute shaders into binaries for arm64, arm or amd64, using SwiftShader with a few modifications. A runtime implemented in C and Go is available for running the resulting binaries.
The primary use is to support a CPU-based rendering fallback for
Gio. In particular, the gioui.org/shader/piet
package
contains arm, arm64, amd64 binaries for
piet-gpu.
The init.sh
script clones the modifed SwiftShader projects and builds it for
64-bit and 32-bit. SwiftShader is not designed to cross-compile which is why a
32-bit build is needed to compile shaders for arm.
The example/run.sh
script demonstrates compiling and running a simple compute
program.
See the Gio contribution guide.