Kristian Høgsberg Kristensen
ea7ef46cf9
vk: Regenerate headers with __gen_validate_value()
2015-06-11 09:25:03 -07:00
Jason Ekstrand
a566b1e08a
vk/formats: Refactor format properties code
...
Along with the refactor, we now do the right thing when we hit an
unsupported format: Set the flags to 0 and return VK_SUCCESS.
2015-06-11 09:11:16 -07:00
Jason Ekstrand
2a3c29698c
vk/image: Add a bunch of asserts
2015-06-10 21:04:51 -07:00
Jason Ekstrand
c8b62d109b
vk: Add a couple vk_error calls
2015-06-10 21:04:13 -07:00
Jason Ekstrand
7153b56abc
vk/private: Add a non-fatal assert
2015-06-10 21:03:50 -07:00
Jason Ekstrand
29d2bbb2b5
vk/cmd: Add an initial implementation of PipelineBarrier
...
We may want to do something more inteligent here later such as actually
handling image layout transitions. However, this should do for now.
2015-06-10 16:37:33 -07:00
Jason Ekstrand
047ed02723
vk/emit: Use valgrind to validate every packed field
2015-06-10 12:43:02 -07:00
Jason Ekstrand
9cae3d18ac
vk: Add valgrind checks in various emit functions
...
The check in batch_bo_finish should catch any undefined values in the batch
but isn't that great for debugging. The checks in the various emit
functions will help get better granularity.
2015-06-09 21:51:37 -07:00
Jason Ekstrand
d5ad24e39b
vk: Move the valgrind include and VG() macro to private.h
2015-06-09 21:51:37 -07:00
Chad Versace
e17ed04b03
vk/image: Don't double-allocate stencil buffers
...
If the main surface has format S8_UINT, then don't allocate the
auxiliary stencil surface.
2015-06-09 16:39:28 -07:00
Chad Versace
1ee2d1c3fc
vk/image: Teach anv_image_choose_tile_mode about WMAJOR
2015-06-09 16:38:55 -07:00
Chad Versace
2d2e148952
vk/util: Add anv_abortf(), anv_abortfv()
...
Convenience functions to print an error message then abort.
2015-06-09 16:38:50 -07:00
Chad Versace
ffb1ee5d20
vk: Define anv_noreturn macro
2015-06-09 16:38:46 -07:00
Chad Versace
f1db3b3869
vk/image: Factor tile mode selection into separate function
...
Because it will eventually need to get smarter.
2015-06-09 16:38:42 -07:00
Jason Ekstrand
11e941900a
vk/device: Actually allow destruction
2015-06-09 16:28:46 -07:00
Jason Ekstrand
5d4b6a01af
vk/cmd_buffer: Properly initialize/reset dynamic states
2015-06-09 16:27:55 -07:00
Jason Ekstrand
634a6150b9
vk/pipeline: Zero out the depth-stencil state when not in use
2015-06-09 16:26:55 -07:00
Jason Ekstrand
919e7b7551
vk/device: Use anv_CreateDynamicViewportState instead of the vk one
2015-06-09 16:01:56 -07:00
Jason Ekstrand
0599d39dd9
vk/device: Dedent the vkCreateDynamicViewportState call
2015-06-09 15:53:26 -07:00
Chad Versace
d57c4cf999
vk/util: Annotate anv_finishme() as printflike
2015-06-09 14:46:49 -07:00
Chad Versace
822cb16abe
vk: Define anv_printflike() macro
2015-06-09 14:46:45 -07:00
Chad Versace
081f617b5a
vk/image: Stop hardcoding alignment of stencil surfaces
...
Look up the alignment from anv_tile_info_table.
2015-06-09 14:16:56 -07:00
Chad Versace
e6bd568f36
vk/image: Rewrite tile info table
...
- Reduce the number of table lookups in anv_image_create from 4 to 1.
- Add field for surface alignment.
- Shorten field names tile_width, tile_height -> width, height.
2015-06-09 14:16:45 -07:00
Chad Versace
5b777e2bcf
vk/image: Delete an old comment
2015-06-09 14:14:29 -07:00
Jason Ekstrand
d842a6965f
vk/compiler: Free the GL errors data
2015-06-09 12:36:23 -07:00
Jason Ekstrand
9f292219bf
vk/compiler: Free more of prog_data when tearing down a pipeline
2015-06-09 12:36:23 -07:00
Jason Ekstrand
66b00d5e5a
vk/queue: Embed the queue in and allocate it with the device
2015-06-09 12:36:23 -07:00
Jason Ekstrand
38f5eef59d
vk/device: Free border color states when we have valgrind
2015-06-09 12:36:23 -07:00
Jason Ekstrand
999b56c507
vk/device: Destroy all batch buffers
...
Due to a copy+paste error, we were destroying all but the first batch or
surface state buffer. Now we destroy them all.
2015-06-09 12:36:23 -07:00
Jason Ekstrand
3a38b0db5f
vk/meta: Clean up temporary objects
2015-06-09 12:36:23 -07:00
Jason Ekstrand
9d6f55dedf
vk/surface_view: Add a destructor
2015-06-09 12:36:23 -07:00
Chad Versace
e6162c2fef
vk/image: Add anv_image::h_align,v_align
...
Use the new fields to compute RENDER_SURFACE_STATE.Surface*Alignment.
We still hardcode them to 4, though.
2015-06-09 12:19:24 -07:00
Jason Ekstrand
58afc24e57
vk/allocator: Remove the concept of a slave block pool
...
This reverts commit d24f8245db .
2015-06-08 17:46:32 -07:00
Jason Ekstrand
b6363c3f12
vk/device: Remove the binding table pools/streams
2015-06-08 17:45:57 -07:00
Jason Ekstrand
531549d9fc
vk/pipeline: Move freeing the program stream to pipeline.c
...
It's created in pipeline.c so we should free it there.
2015-06-08 14:27:04 -07:00
Jason Ekstrand
66a4dab89a
vk/pipeline: Don't destroy the program stream
...
It's freed in compiler.cpp and we don't want to free it twice.
2015-06-08 13:53:19 -07:00
Jason Ekstrand
920fb771d4
vk/allocator: Make the use of NULL_BLOCK in state_stream_finish explicit
2015-06-08 13:53:19 -07:00
Kristian Høgsberg Kristensen
52637c0996
vk: Quiet a few warnings
2015-06-08 08:51:40 -07:00
Kristian Høgsberg Kristensen
9eab70e54f
vk: Create a minimal context for the compiler
...
This avoids the full brw context initialization and just sets up context
constants, initializes extensions and sets a few driver vfuncs for the
front-end GLSL compiler.
2015-06-08 08:51:40 -07:00
Jason Ekstrand
ce00233c13
vk/cmd_buffer: Use the dynamic state stream in emit_dynamic and merge_dynamic
2015-06-05 17:26:41 -07:00
Jason Ekstrand
e69588b764
vk/device: Use a 64-byte alignment for CC state
2015-06-05 17:26:26 -07:00
Jason Ekstrand
c2eeab305b
vk/pipeline: Actually free the program stream and dynamic pool
2015-06-05 17:26:26 -07:00
Jason Ekstrand
ed2ca020f8
vk/allocator: Avoid double-free in the bo pool
2015-06-05 17:12:28 -07:00
Jason Ekstrand
aa523d3c62
vk/gem: Call VALGRIND_FREELIKE_BLOCK before unmapping
2015-06-05 16:41:49 -07:00
Chad Versace
87d98e1935
vk: Fix 2 incorrect typecasts
...
The compiler didn't find the cast errors because all Vulkan types are
just integers.
2015-06-04 14:32:22 -07:00
Chad Versace
b981379bcf
vk: Make make clean remove generated spirv headers
2015-06-04 14:26:46 -07:00
Jason Ekstrand
8d930da35d
vk/allocator: Remove an unneeded VG() wrapper
2015-06-04 09:14:33 -07:00
Jason Ekstrand
7f90e56e42
vk/device: Dissalow device destruction
2015-06-04 09:14:33 -07:00
Chad Versace
9cd42b3dea
vk: Fix build
...
Commit 1286bd, which deleted vk.c, broke the build. Update the Makefile
to fix it.
2015-06-04 09:01:30 -07:00
Jason Ekstrand
251aea80b0
vk/DS: Mask stencil masks to 8 bits
2015-06-03 16:59:13 -07:00