aboutsummaryrefslogtreecommitdiff
path: root/src/shader_compiler_test.cc
AgeCommit message (Collapse)Author
2019-07-30Enable shader optimizations (#606)alan-baker
Enable shader optimizations * During shader compilation, if SPIRV-Tools are enabled run requested optimizations for the shader * these optimizations are pipeline specific * added a test
2019-07-23Add support for specifying compile options (#592)alan-baker
Fixes #433 * Adds COMPILE_OPTIONS command * currently only supported for OPENCL-C shaders * plumbed to Clspv * Added tests * Add docs
2019-07-19Bind opencl buffers (#584)alan-baker
Fixes #426 * New BIND subcommands to specify kernel args by name or ordinal * storage class specification is optional, but checked for consistency * clspv compiles parse descriptor map (partially) into Pipeline::ShaderInfo * Bindings updated before pipeline creation * added compiler and pipeline tests for new functionality * added new end-to-end test * Add documentation * Buffer storage class specification is now optional for OpenCL-C
2019-07-17Specify target version for GLSL compilation (#582)David Neto
Specify target version for GLSL compilation Fixes #549
2019-04-10Simplify Format::GetBytesize; rename to SizeInBytes (#457)dan sinclair
The SizeInBytes name matches what is used in the DatumType class.
2019-01-15Convert API to C++03 from C++11 for CTS compatibility (#218)dan sinclair
The CTS requires code to not use c++11. This CL converts the various c++11-ism's in the Amber API to C++03.
2018-12-10Make spirv-tools, googletest and shaderc build optional (#144)dan sinclair
This CL allows spriv-tools, googletest and shaderc to be disabled at build time. (Disabling spriv-tools will also disable shaderc).
2018-12-05 Break apart Amber::Execute method. (#143)dan sinclair
Break apart Amber::Execute method. This CL splits Amber::Execute into a parse and execute step. The Parse step accepts a Recipe to fill out, that Recipe is then passed into the Execute step. The recipe, in the future, will allow retrieving information about the given script.
2018-12-04Allow host to provide a shader map. (#138)dan sinclair
This CL extends the Amber interface to allow a Shader map to be provided. This map allows the caller to pre-compile the shaders and provide the name to data mapping. The ShaderCompiler will then pull from the map before attempting to do a compile.
2018-11-22Add cpplint (#90)dan sinclair
Add cpplint
2018-11-09Initial commit of Amber for open sourcedan sinclair
Amber is a multi-API shader test framework. Amber lets you capture and communicate shader bugs with the fluidity and ease of a scripting flow: * No graphics API programming is required. * WIP: Supports Vulkan and [Dawn][Dawn] graphics APIs. * A single text string (or file) maps to a single graphics API pipeline test case. The text includes: * Input data, including buffers and images. * Shaders. * Expectations for the result of running the pipeline. * Shaders can be expressed in binary form (as hex), in SPIR-V assembly, or in a higher level shader language. * After executing the pipeline, result buffers and images can be saved to output files. This is not an officially supported Google product.