Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | vk: Add new vk_errorf that takes a format string | Kristian Høgsberg Kristensen | 2015-09-03 | 6 | -27/+52 |
| | | | | | | This allows us to annotate error cases in debug builds. Signed-off-by: Kristian Høgsberg Kristensen <[email protected]> | ||||
* | vk: Make vk_error a little more helpful | Kristian Høgsberg Kristensen | 2015-09-03 | 2 | -7/+52 |
| | | | | | | | Print out file and line number and translate the error code to the symbolic name. Signed-off-by: Kristian Høgsberg Kristensen <[email protected]> | ||||
* | vk/image: Add PRM reference for QPitch equation | Chad Versace | 2015-09-03 | 1 | -0/+4 |
| | | | | Suggested-by: Nanley Chery <[email protected]> | ||||
* | vk/meta: Partially fix vkCmdCopyBufferToImage for S8_UINT | Chad Versace | 2015-09-02 | 1 | -4/+13 |
| | | | | | | | | | | Create R8_UINT VkAttachmentView and VkImageView for the stencil data. This fixes a crash, but the pixels in the destination image are still incorrect. They are not properly tiled. Fixes crashes in Crucible tests func.miptree.s8-uint.aspect-stencil.* as of crucible-7471449. Test results improve 'lost' -> 'fail'. | ||||
* | vk/meta: Use SPIR-V for shaders | Jason Ekstrand | 2015-09-01 | 3 | -228/+212 |
| | | | | | We are also now using glslc for compiling the Vulkan driver like we do in curcible. | ||||
* | vk/compiler: Handle interpolation qualifiers for SPIR-V shaders | Jason Ekstrand | 2015-09-01 | 1 | -0/+10 |
| | |||||
* | vk/extensions: count needs to be <= number of extensions | Jason Ekstrand | 2015-09-01 | 1 | -1/+1 |
| | |||||
* | vk/compiler: Properly reference/delete programs when using SPIR-V | Jason Ekstrand | 2015-09-01 | 1 | -10/+12 |
| | |||||
* | vk/meta: Add a helper for making an image from a buffer | Jason Ekstrand | 2015-08-31 | 1 | -65/+49 |
| | |||||
* | nir/spirv: Use VERTEX_ID_ZERO_BASE for VertexId | Jason Ekstrand | 2015-08-31 | 1 | -1/+4 |
| | | | | | | In Vulkan, VertexId and InstanceId will be zero-based and new intrinsics, VertexIndex and InstanceIndex, will be added for non-zer-based. See also, Khronos bug #14255 | ||||
* | Merge remote-tracking branch 'fdo-personal/nir-spirv' into vulkan | Jason Ekstrand | 2015-08-31 | 11 | -65/+78 |
|\ | | | | | | | | | | | From now on, the majority of SPIR-V improvements should happen on the spirv branch which will also be public. It will be frequently merged into the vulkan driver. | ||||
| * | nir/spirv: Update to the latest revision | Jason Ekstrand | 2015-08-31 | 5 | -1311/+2311 |
| | | |||||
| * | nir/builder: Use nir_after_instr to advance the cursor | Jason Ekstrand | 2015-08-31 | 1 | -2/+1 |
| | | | | | | | | | | | | | | | | | | | | This *should* ensure that the cursor gets properly advanced in all cases. We had a problem before where, if the cursor was created using nir_after_cf_node on a non-block cf_node, that would call nir_before_block on the block following the cf node. Instructions would then get inserted in backwards order at the top of the block which is not at all what you would expect from nir_after_cf_node. By just resetting to after_instr, we avoid all these problems. | ||||
| * | nir/intrinsics: Move to a two-dimensional binding model for UBO's | Jason Ekstrand | 2015-08-31 | 1 | -3/+4 |
| | | |||||
| * | nir/nir_variable: Add a descriptor set field | Jason Ekstrand | 2015-08-31 | 1 | -0/+5 |
| | | | | | | | | We need this for SPIR-V | ||||
| * | mesa: Move gl_vert_attrib from mtypes.h to shader_enums.h | Jason Ekstrand | 2015-08-31 | 2 | -107/+108 |
| | | | | | | | | It is a shader enum after all... | ||||
| * | nir/cursor: Add a helper for getting the current block | Jason Ekstrand | 2015-08-31 | 1 | -0/+11 |
| | | |||||
| * | nir/builder: add a nir_fdot() convenience function | Connor Abbott | 2015-08-31 | 1 | -0/+17 |
| | | |||||
| * | nir: Add a pass to lower outputs to temporary variables | Jason Ekstrand | 2015-08-31 | 3 | -0/+96 |
| | | | | | | | | | | This pass can be used as a helper for NIR producers so they don't have to worry about creating the temporaries themselves. | ||||
| * | nir/cursor: Add a constructor for the end of a block but before the jump | Jason Ekstrand | 2015-08-31 | 2 | -6/+12 |
| | | |||||
| * | nir/types: add more nir_type_is_xxx() wrappers | Connor Abbott | 2015-08-31 | 2 | -0/+14 |
| | | |||||
| * | nir/types: add a helper to transpose a matrix type | Connor Abbott | 2015-08-31 | 2 | -0/+9 |
| | | |||||
| * | nir/spirv: Don't assert that the current block is empty | Jason Ekstrand | 2015-08-31 | 1 | -2/+0 |
| | | | | | | | | | | It's possible that someone will give us SPIR-V code in which someone needlessly branches to new blocks. We should handle that ok now. | ||||
| * | nir/spirv: Add initial support for samplers | Jason Ekstrand | 2015-08-31 | 1 | -3/+152 |
| | | |||||
| * | nir/spirv: Move Exp and Log to the list of currently unhandled ALU ops | Jason Ekstrand | 2015-08-31 | 1 | -2/+2 |
| | | | | | | | | NIR doesn't have the native opcodes for them anymore | ||||
| * | nir/types: Add support for sampler types | Jason Ekstrand | 2015-08-31 | 2 | -0/+49 |
| | | |||||
| * | nir/spirv: Make the global constants in spirv.h static | Jason Ekstrand | 2015-08-31 | 1 | -8/+8 |
| | | | | | | | | | | | | I've been promissed in a bug that this will be fixed in a future version of the header. However, in the interest of my branch building, I'm adding these changes in myself for the moment. | ||||
| * | nir/spirv: Handle jump-to-loop in a more general way | Jason Ekstrand | 2015-08-31 | 1 | -21/+25 |
| | | |||||
| * | nir/spirv: Handle boolean uniforms correctly | Jason Ekstrand | 2015-08-31 | 1 | -1/+10 |
| | | |||||
| * | nir/spirv: Handle control-flow with loops | Jason Ekstrand | 2015-08-31 | 2 | -21/+151 |
| | | |||||
| * | nir/spirv: Set a name on temporary variables | Jason Ekstrand | 2015-08-31 | 1 | -0/+1 |
| | | |||||
| * | nir/spirv: Use the correct length for copying string literals | Jason Ekstrand | 2015-08-31 | 1 | -1/+1 |
| | | |||||
| * | nir/spirv: Make vtn_ssa_value handle constants as well as ssa values | Jason Ekstrand | 2015-08-31 | 1 | -1/+20 |
| | | |||||
| * | nir/spirv: Add initial support for GLSL 4.50 builtins | Jason Ekstrand | 2015-08-31 | 4 | -4/+310 |
| | | |||||
| * | nir/spirv: Split the core datastructures into a header file | Jason Ekstrand | 2015-08-31 | 2 | -112/+146 |
| | | |||||
| * | nir/spirv: Use the builder for all instructions | Jason Ekstrand | 2015-08-31 | 1 | -18/+12 |
| | | | | | | | | | | | | We don't actually use it to create all the instructions but we do use it for insertion always. This should make things far more consistent for implementing extended instructions. | ||||
| * | nir/spirv: Add support for a bunch of ALU operations | Jason Ekstrand | 2015-08-31 | 1 | -7/+195 |
| | | |||||
| * | nir/spirv: Add support for indirect array accesses | Jason Ekstrand | 2015-08-31 | 1 | -2/+2 |
| | | |||||
| * | nir/spirv: Explicitly type constants and SSA values | Jason Ekstrand | 2015-08-31 | 1 | -19/+21 |
| | | |||||
| * | nir/spirv: Handle OpBranchConditional | Jason Ekstrand | 2015-08-31 | 1 | -68/+189 |
| | | | | | | | | | | | | | | | | | | We do control-flow handling as a two-step process. The first step is to walk the instructions list and record various information about blocks and functions. This is where the acutal nir_function_overload objects get created. We also record the start/stop instruction for each block. Then a second pass walks over each of the functions and over the blocks in each function in a way that's NIR-friendly and actually parses the instructions. | ||||
| * | nir/spirv: Add a helper for getting a value as an SSA value | Jason Ekstrand | 2015-08-31 | 1 | -0/+6 |
| | | |||||
| * | nir/spirv: Split instruction handling into preamble and body sections | Jason Ekstrand | 2015-08-31 | 1 | -45/+93 |
| | | |||||
| * | nir/spirv: Implement load/store instructiosn | Jason Ekstrand | 2015-08-31 | 1 | -6/+66 |
| | | |||||
| * | nir: Add a helper for getting the tail of a deref chain | Jason Ekstrand | 2015-08-31 | 3 | -23/+13 |
| | | |||||
| * | nir/spirv: Actaully add variables to the funciton or shader | Jason Ekstrand | 2015-08-31 | 1 | -0/+6 |
| | | |||||
| * | nir/spirv: Add a vtn_untyped_value helper | Jason Ekstrand | 2015-08-31 | 1 | -3/+10 |
| | | |||||
| * | nir/spirv: Use vtn_value in the types code and fix a off-by-one error | Jason Ekstrand | 2015-08-31 | 1 | -5/+7 |
| | | |||||
| * | nir/types: Add an is_vector_or_scalar helper | Jason Ekstrand | 2015-08-31 | 2 | -0/+7 |
| | | |||||
| * | nir/spirv: Add support for deref chains | Jason Ekstrand | 2015-08-31 | 1 | -12/+74 |
| | | |||||
| * | nir/types: Add a scalar type constructor | Jason Ekstrand | 2015-08-31 | 2 | -0/+7 |
| | |