diff options
Diffstat (limited to 'vendor/gioui.org/cpu/README.md')
-rw-r--r-- | vendor/gioui.org/cpu/README.md | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/vendor/gioui.org/cpu/README.md b/vendor/gioui.org/cpu/README.md new file mode 100644 index 0000000..4244fe0 --- /dev/null +++ b/vendor/gioui.org/cpu/README.md @@ -0,0 +1,25 @@ +# Compile and run compute programs on CPU + +This projects contains the compiler for turning Vulkan SPIR-V compute shaders +into binaries for arm64, arm or amd64, using +[SwiftShader](https://github.com/eliasnaur/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](https://gioui.org). In particular, the `gioui.org/shader/piet` package +contains arm, arm64, amd64 binaries for +[piet-gpu](https://github.com/linebender/piet-gpu). + +# Compiling and running shaders + +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. + +## Issues and contributions + +See the [Gio contribution guide](https://gioui.org/doc/contribute). |