summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* mesa: Implement image uniform queries.Francisco Jerez2015-05-041-1/+3
| | | | Reviewed-by: Matt Turner <[email protected]>
* mesa: Validate original image internal format rather than derived mesa format.Francisco Jerez2015-05-041-3/+3
| | | | | | | | | | | This matches what _mesa_BindImageTextures() does. The derived image format (gl_texture_image::TexFormat) isn't necessarily equivalent to the internal format of the texture image. If a forbidden internal format has been specified we need to mark the image unit as invalid as required by the spec, regardless of the derived format. Fixes the "invalid" ARB_shader_image_load_store piglit test. Reviewed-by: Matt Turner <[email protected]>
* mesa: Call _mesa_test_texobj_completeness() before using _MaxLevel in image ↵Francisco Jerez2015-05-041-3/+4
| | | | | | | | | | validation. gl_texture_object::_MaxLevel doesn't have any meaningful value until _mesa_test_texobj_completeness() has been run. Fixes the "level" ARB_shader_image_load_store piglit test. Reviewed-by: Matt Turner <[email protected]>
* mesa: Add support for binding a buffer texture to a shader image unit.Francisco Jerez2015-05-041-31/+42
| | | | Reviewed-by: Matt Turner <[email protected]>
* mesa: Add extern "C" guards to shaderimage.h to allow inclusion from C++ code.Francisco Jerez2015-05-041-0/+8
| | | | Reviewed-by: Matt Turner <[email protected]>
* mesa: Export shader image format to mesa format conversion function.Francisco Jerez2015-05-042-5/+12
| | | | | | | This function will be useful for back-ends to translate an image internal format as specified in GLSL code into a mesa format. Reviewed-by: Matt Turner <[email protected]>
* swrast: Fix rgba_draw_pixels with GL_COLOR_INDEXIago Toral Quiroga2015-05-041-3/+26
| | | | | | | | | | | | | | When we implemented the format conversion rewrite we forgot to handle GL_COLOR_INDEX here, which needs special handling. Fixes the following piglit test: bin/gl-1.0-drawpixels-color-index -auto -fbo Buzilla: https://bugs.freedesktop.org/show_bug.cgi?id=90213 Tested-by: Juha-Pekka Heikkila <[email protected]> Reviewed-by: Juha-Pekka Heikkila <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>
* i965: Add memory fence opcode.Francisco Jerez2015-05-046-0/+87
| | | | | Acked-by: Kenneth Graunke <[email protected]> Reviewed-by: Topi Pohjolainen <[email protected]>
* i965: Add typed surface access opcodes.Francisco Jerez2015-05-049-0/+261
| | | | | Acked-by: Kenneth Graunke <[email protected]> Reviewed-by: Topi Pohjolainen <[email protected]>
* i965: Add untyped surface write opcode.Francisco Jerez2015-05-049-0/+81
| | | | | Reviewed-by: Topi Pohjolainen <[email protected]> Acked-by: Kenneth Graunke <[email protected]>
* i965: Reorder sources of the untyped atomic opcode.Francisco Jerez2015-05-044-6/+6
| | | | | | | | | | | | This is consistent with the untyped surface read opcode. From now on all typed and untyped surface access opcodes will follow the same pattern: src[0] will be the message payload, src[1] will be the surface index and src[2] will be a control immediate (atomic operation for atomic opcodes and number of vector components for surface read and write opcodes). Reviewed-by: Topi Pohjolainen <[email protected]> Acked-by: Kenneth Graunke <[email protected]>
* i965: Pass the number of components as a source of the untyped surface read ↵Francisco Jerez2015-05-044-6/+10
| | | | | | | opcode. Reviewed-by: Topi Pohjolainen <[email protected]> Acked-by: Kenneth Graunke <[email protected]>
* i965/vec4: Add support for untyped surface message sends from GRF.Francisco Jerez2015-05-043-16/+14
| | | | | | | | | This doesn't actually enable untyped surface message sends from GRF yet, the upcoming atomic counter and image intrinsic lowering code will. Reviewed-by: Topi Pohjolainen <[email protected]> Acked-by: Kenneth Graunke <[email protected]>
* i965: Don't request untyped atomic writeback message if the destination is null.Francisco Jerez2015-05-042-2/+3
| | | | | Reviewed-by: Topi Pohjolainen <[email protected]> Acked-by: Kenneth Graunke <[email protected]>
* i965: Simplify generator code for untyped surface messages.Francisco Jerez2015-05-044-87/+18
| | | | | | | | | The generate_untyped_*() methods do nothing useful other than calling the corresponding function from brw_eu_emit.c. The calls to brw_mark_surface_used() will go away too in a future commit. Reviewed-by: Topi Pohjolainen <[email protected]> Acked-by: Kenneth Graunke <[email protected]>
* i965: Fix the untyped surface opcodes to deal with indirect surface access.Francisco Jerez2015-05-044-82/+99
| | | | | | | | | | | | Change brw_untyped_atomic() and brw_untyped_surface_read() to take the surface index as a register instead of a constant and to use brw_send_indirect_message() to emit the indirect variant of send with a dynamically calculated message descriptor. This will be required to support variable indexing of image arrays for ARB_shader_image_load_store. Acked-by: Kenneth Graunke <[email protected]> Reviewed-by: Topi Pohjolainen <[email protected]>
* ilo: use ilo_image exclusively in coreChia-I Wu2015-05-024-139/+149
| | | | | Initialize ilo_view_surface and ilo_zs_surface from ilo_image instead of ilo_texture.
* ilo: add ilo_image_can_enable_aux()Chia-I Wu2015-05-029-50/+27
| | | | It replaces ilo_texture_can_enable_hiz().
* ilo: make ilo_image more self-containedChia-I Wu2015-05-022-9/+21
| | | | Add depth0, sample_count, and scanout to ilo_image.
* ilo: add ilo_image_init_for_imported()Chia-I Wu2015-05-023-60/+66
| | | | | It replaces ilo_image_update_for_imported_bo() and enables more error checkings for imported textures.
* ilo: prepare for image init for imported boChia-I Wu2015-05-021-120/+129
| | | | Refactoring in prepraration for ilo_image_init_for_imported().
* ilo: constify ilo_image_paramsChia-I Wu2015-05-021-11/+11
| | | | Make ilo_image_params const in functions that do not modify it.
* ilo: improve readability of ilo_imageChia-I Wu2015-05-026-111/+127
| | | | Improve docs, rename struct fields, and reorder walk types. No real changes.
* ilo: move command builder to coreChia-I Wu2015-05-0223-61/+74
|
* ilo: move ilo_state_3d* to coreChia-I Wu2015-05-029-276/+274
| | | | ilo state structs (struct ilo_xxx_state) are moved as well.
* ilo: add ilo_buffer.h to coreChia-I Wu2015-05-025-90/+138
| | | | Rename the original ilo_buffer to ilo_buffer_resource to avoid name conflict.
* ilo: move BOs from ilo_texture to ilo_imageChia-I Wu2015-05-027-39/+63
| | | | We want to work with ilo_image instead of ilo_texture in core.
* ilo: move ilo_layout.[ch] to core as ilo_image.[ch]Chia-I Wu2015-05-0211-487/+489
| | | | Move files and s/layout/image/.
* ilo: add ilo_format.[ch] to coreChia-I Wu2015-05-028-169/+184
| | | | The original ilo_format.[ch] are removed.
* ilo: add ilo_fence.h to coreChia-I Wu2015-05-025-58/+113
| | | | Implement pipe_fence_handle on top of ilo_fence.
* ilo: add ilo_dev_init() to coreChia-I Wu2015-05-024-146/+195
| | | | Move init_dev() from ilo_screen.c to core.
* ilo: rename ilo_dev_info to ilo_devChia-I Wu2015-05-0225-141/+141
| | | | With intel_winsys being embedded in it, drop the "_info" suffix.
* ilo: move intel_winsys to ilo_dev_infoChia-I Wu2015-05-025-13/+15
| | | | We want to use ilo_dev_info instead of ilo_screen in core.
* ilo: add ilo_dev.h to coreChia-I Wu2015-05-023-38/+73
| | | | Move what are remaining in ilo_common.h (that is, ilo_dev_*) to ilo_dev.h.
* ilo: add ilo_debug.[ch] to coreChia-I Wu2015-05-025-85/+158
| | | | | They consist of the debug helpers that used to live in ilo_common.h and ilo_screen.c.
* ilo: add ilo_core.h to coreChia-I Wu2015-05-023-14/+48
| | | | | ilo_core.h includes the common gallium headers that were included in ilo_common.h.
* ilo: move intel_winsys.h to coreChia-I Wu2015-05-0220-19/+19
| | | | | Add a new subdirectory and start moving files that do not depend on ilo_screen/ilo_context to it.
* i965: Upload atomic buffer state for compute shadersJordan Justen2015-05-024-1/+29
| | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965/cs: Emit MEDIA_STATE_FLUSH after WALKERJordan Justen2015-05-022-0/+6
| | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965/cs: Implement brw_emit_gpgpu_walkerJordan Justen2015-05-022-1/+51
| | | | | | | | | | | | | Tested on Ivybridge, Haswell and Broadwell. v2: * Use SET_FIELD. (Ken) * Use simd_size / 16 to support SIMD8/16/32. Ken suggested that we might be able to do it arithmetically rather than just supporting SIMD8 and SIMD16 with a conditional. Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965/state: Emit pipeline select when changing pipelinesJordan Justen2015-05-024-6/+36
| | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Implement DispatchCompute() back-endPaul Berry2015-05-024-0/+127
| | | | | | | brw_emit_gpgpu_walker will be implemented in a subsequent patch. Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* main/cs: Implement front end code for glDispatchCompute().Paul Berry2015-05-021-1/+19
| | | | | Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa/cs: Add DispatchCompute() to driver function table.Paul Berry2015-05-021-0/+7
| | | | | Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965/cs: Emit state base addressJordan Justen2015-05-022-1/+3
| | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965/fs: Add CS shader time supportJordan Justen2015-05-024-2/+33
| | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965/cs: Upload brw_cs_stateJordan Justen2015-05-024-0/+109
| | | | | | | | v3: * Add defines. Misc cleanup suggestions. (Ken) Signed-off-by: Jordan Justen <[email protected]> Acked-by: Kenneth Graunke <[email protected]>
* i965/cs: Support CS program precompileJordan Justen2015-05-024-0/+41
| | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Add brw_setup_tex_for_precompile. Use in VS, GS & FS.Jordan Justen2015-05-023-24/+24
| | | | | | Suggested-by: Kristian Høgsberg <[email protected]> Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965/cs: Emit compute shader code and upload programsJordan Justen2015-05-023-0/+212
| | | | | | | | | | | | v2: * Don't bother checking for 'gen > 5' (krh) * Populate sampler data in key (krh) v3: * Drop no8 support, and simplify code in several places (Ken) Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>