Commit graph

85652 commits

Author SHA1 Message Date
Ben Skeggs
0a0d8e4497 nv50: remove unnecessary include
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Acked-by: Ilia Mirkin <imirkin@alum.mit.edu>
2016-02-16 15:56:33 +10:00
Ben Skeggs
9c4b7748db nv50: switch nv50_transfer.c to g80_defs.xml.h
Verified (binary diff) to produce identical code.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Acked-by: Ilia Mirkin <imirkin@alum.mit.edu>
2016-02-16 15:56:31 +10:00
Ben Skeggs
577eeb7984 nv50: switch nv50_tex.c to updated g80_defs.xml.h
Verified (binary diff) to produce identical code.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Acked-by: Ilia Mirkin <imirkin@alum.mit.edu>
2016-02-16 15:56:29 +10:00
Ben Skeggs
114d41feb2 nv50: switch nv50_surface.c to updated g80_defs.xml.h
Verified (binary diff) to produce identical code.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Acked-by: Ilia Mirkin <imirkin@alum.mit.edu>
2016-02-16 15:56:27 +10:00
Ben Skeggs
413cc25753 nv50: import updated g80_defs.xml.h from rnndb
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Acked-by: Ilia Mirkin <imirkin@alum.mit.edu>
2016-02-16 15:56:12 +10:00
Nicolai Hähnle
2de9317d5f st/mesa: count shader images in MaxCombinedShaderOutputResources
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
2016-02-15 22:22:34 -05:00
Ilia Mirkin
1edbe0157d st/mesa: enable GL image extensions when backend supports them
This enables ARB_shader_image_load_store and ARB_shader_image_size when
the backend claims support for these. It will also implicitly enable the
image component of ARB_shader_texture_image_samples.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
2016-02-15 22:22:33 -05:00
Ilia Mirkin
2e0a84208b st/mesa: convert GLSL image intrinsics into TGSI
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Dave Airlie <airlied@redhat.com>
2016-02-15 22:22:33 -05:00
Ilia Mirkin
672257dc69 st/mesa: allow st_format.h to be included from C++ files
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
2016-02-15 22:22:33 -05:00
Nicolai Hähnle
ef27190a34 st/mesa: set pipe_image_view layers correctly for 3D textures
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
2016-02-15 22:22:33 -05:00
Nicolai Hähnle
f1b0bda6bc st/mesa: call st_finalize_texture from image atoms
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
2016-02-15 22:22:33 -05:00
Ilia Mirkin
78093167b1 st/mesa: add an image atom for shader images
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
2016-02-15 22:22:33 -05:00
Ilia Mirkin
e2a1ec5f0f tgsi: show textual format representation
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
2016-02-15 22:22:33 -05:00
Ilia Mirkin
9fbfa1abb2 gallium: add PIPE_SHADER_CAP_MAX_SHADER_IMAGES
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
2016-02-15 22:22:33 -05:00
Ilia Mirkin
bceff68114 gallium: make image views non-persistent objects
Make them akin to shader buffers, with no refcounting/etc. Just used to
pass data about the bound image in ->set_shader_images.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
2016-02-15 22:22:33 -05:00
Ilia Mirkin
cfbf25ac8f st/mesa: empty buffer binding if the buffer's not really there
This can happen with 0-sized buffers.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
2016-02-15 22:22:33 -05:00
Kristian Høgsberg Kristensen
a3672a241b anv/genxml: Include MBO bits for gen7 and gen75 2016-02-15 17:57:03 -08:00
Kristian Høgsberg Kristensen
c2b2ebf1ed anv: Add missing gen75_cmd_buffer_set_subpass() prototype 2016-02-15 17:40:15 -08:00
Adam Jackson
80ec20351c anv: Bump to 1.0.3
Probably this should be picked up from <vulkan.h> directly, or we should
just assume that any 1.0.x is legal.
2016-02-15 17:38:26 -08:00
Kristian Høgsberg Kristensen
b53edea76c anv/gen7: Make disabling the FS work
We disable the fragment shader for depth/stencil-only pipelines. This
commit makes that work for gen7.
2016-02-15 17:32:07 -08:00
Kristian Høgsberg Kristensen
85f67cf16e anv: Deduplicate render pass code
This lets us share the renderpass code and depth/stencil state code
between gen 7 and gen 8.
2016-02-15 17:32:07 -08:00
Kristian Høgsberg Kristensen
ac4fd0ed21 anv/gen7: Fix pipeline selection in init_device_state()
We need the 3D pipeline for the initial setup, not GPGPU.
2016-02-15 17:32:07 -08:00
Kristian Høgsberg Kristensen
ea694637ac anv/gen7: Set 3DSTATE_SF depth buffer format correctly
We need to pull this from the render pass information at state flush
time.
2016-02-15 17:32:07 -08:00
Kristian Høgsberg Kristensen
18dd59538b anv/gen7: Call flush_pipeline_select_3d() from CmdBeginRenderPass 2016-02-15 17:32:07 -08:00
Kristian Høgsberg Kristensen
832f73f512 anv: Share flush_pipeline_select_3d() between gen7 and gen8 2016-02-15 17:32:07 -08:00
Kristian Høgsberg Kristensen
53eaa0a6b8 anv: Fix warning 3DSTATE_VERTEX_ELEMENTS setup
This is a little more subtle. If elem_count is 0, nothing else happens
in this function, so we return early to avoid warning about
uninitialized 'p'.
2016-02-15 17:32:07 -08:00
Kristian Høgsberg Kristensen
5d72d7b12d anv: Fix misc simple warnings 2016-02-15 17:32:07 -08:00
Rhys Kidd
76e2af3dd4 docs: Document VC4_DEBUG envvar
Signed-off-by: Rhys Kidd <rhyskidd@gmail.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
2016-02-15 17:13:52 -08:00
Rhys Kidd
aa82cc4b22 vc4: Add missing braces in initializer
Silences the following GCC warning:

mesa/src/gallium/drivers/vc4/vc4_qir_schedule.c: In function 'qir_schedule_instructions':
mesa/src/gallium/drivers/vc4/vc4_qir_schedule.c:578:16: warning: missing braces around initializer [-Wmissing-braces]
         struct schedule_state state = { 0 };
                ^

Signed-off-by: Rhys Kidd <rhyskidd@gmail.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
2016-02-15 17:13:52 -08:00
Rhys Kidd
c75ced3623 vc4: Correct typo setting 'handled_qinst_cond'
Variable was previously always set to true. Accordingly, the later
assert() served no active purpose.

Found with GCC warning and code inspection:

mesa/src/gallium/drivers/vc4/vc4_qpu_emit.c: In function'vc4_generate_code':
mesa/src/gallium/drivers/vc4/vc4_qpu_emit.c:315:22: warning: variable 'handled_qinst_cond' set but not used [-Wunused-but-set-variable]
                 bool handled_qinst_cond = true;
                      ^

Signed-off-by: Rhys Kidd <rhyskidd@gmail.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
2016-02-15 17:13:52 -08:00
Eric Anholt
655fa0f465 vc4: Don't treat conditional MOVs as raw MOV.
The two consumers want to know that the destination will be exactly the
source, which is not true if we might not set the destination.

Signed-off-by: Eric Anholt <eric@anholt.net>
2016-02-15 17:13:52 -08:00
Timothy Arceri
00a1bd13b5 glsl: warn in GL as well as ES when varying not written
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93339
2016-02-16 11:15:43 +11:00
Ilia Mirkin
6d39075c06 docs: update GLES 3.1 section for recent nvc0 additions
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
2016-02-15 17:43:37 -05:00
Jason Ekstrand
08ecd8a8d1 anv/meta_resolve: Set origin_upper_left on gl_FragCoord
It's required by the spec and any shaders that don't set it will be broken.
I'm not really sure how multisampling was even working before...
2016-02-15 12:45:03 -08:00
Ilia Mirkin
4360ba0caf mesa: need to check resource and set length even if bufSize is 0
This fixes a number of dEQP tests, such as:

dEQP-GLES31.functional.program_interface_query.buffer_limited_query.resource_query

It was expecting the length to be set even in the bufSize == 0 case.
Also _mesa_get_program_resourceiv does some error checking on the
resource which should probably happen even in the bufSize == 0 case as
well although there's no dEQP test for that.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
2016-02-15 12:20:25 -05:00
Ben Widawsky
66c790720b i965/bxt: Production thread counts
v2: Forgot to squash in the comment removal

Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Reviewed-by: Mark Janes <mark.a.janes@intel.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
2016-02-15 07:48:09 -08:00
Daniel Czarnowski
5d87a7c894 egl_dri2: NULL check for xcb_dri2_get_buffers_reply()
Without the check, unsuccessful xcb_dri2_get_buffers_reply(...) causes
segmentation fault in dri2_get_buffers.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org
2016-02-15 07:43:27 +02:00
Edward O'Callaghan
331f963b7e nv50,nvc0: Remove duplicate logic from nvc0_set_framebuffer_state()
We already have this logic in the gallium/util functions so
lets reduce some entropy while here.

V.2:
  Apply change to nv50 also as suggested by Samuel Pitoiset.

Signed-off-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
2016-02-14 23:56:54 +01:00
Samuel Pitoiset
cbf24a01dd nv50: add missing PIPE_SHADER_CAP_SUPPORTED_IRS
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
2016-02-14 22:56:02 +01:00
Kenneth Graunke
8122d21d15 i965: Fix gl_DrawID in the vec4 backend.
brw_draw_upload.c uploads VertexID/InstanceID first, then DrawID.
So we need to assign the attribute mapping in that order as well.

Fixes the following Pigit tests with the vec4 backend:
- arb_shader_draw_parameters-drawid vertexid
- arb_shader_draw_parameters-drawid-indirect basevertex

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
2016-02-14 13:24:07 -08:00
Brian Paul
816c987b67 mesa: move assertion in _mesa_cube_face_target()
Fixes piglit arb_texture_view-sampling-2d-array-as-2d-layer regression.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94134
Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
2016-02-14 09:16:22 -07:00
Serge Martin
a4cff1859e clover: fix build failure since bfd695e
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
2016-02-14 11:00:29 +01:00
Kenneth Graunke
565aa69970 glsl: Fix overflow of ImageAccess[] array.
The ImageAccess array is statically sized to MAX_IMAGE_UNIFORMS:

   GLenum ImageAccess[MAX_IMAGE_UNIFORMS];

There was no bounds checking ensuring we don't overflow.  Passing in a
shader with too many uniforms would cause writes to extend into other
fields, such as sh->NumImages.

Later linker checks already handle reporting an error when there are too
many images, so just avoid corrupting structures here.

This rearranges the logic a bit to look more like the sampler case.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Tested-by: Jordan Justen <jordan.l.justen@intel.com>
2016-02-13 21:12:18 -08:00
Ilia Mirkin
6411444c36 mesa: default FixedSampleLocations to true when using a dummy image
GL_ARB_texture_multisample and GLES 3.1 expect the initial value to be
GL_TRUE. This fixes

dEQP-GLES31.functional.state_query.texture_level.texture_2d_multisample_array.fixed_sample_locations_integer

and a few related tests.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
2016-02-13 23:41:28 -05:00
Jason Ekstrand
7410c60988 nir/types: Add more type constructor functions
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2016-02-13 17:22:36 -08:00
Jason Ekstrand
f05f576803 nir/types: Add a few more glsl_type_is_ functions
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2016-02-13 17:22:36 -08:00
Jason Ekstrand
914829f766 nir/types: Add helpers for working with sampler and image types
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2016-02-13 17:22:36 -08:00
Jason Ekstrand
d140b13fd5 nir/types: Add helpers for function types
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2016-02-13 17:22:36 -08:00
Jason Ekstrand
b9e94ad806 glsl/types: Expose glsl_struct_field and glsl_function_param to C
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2016-02-13 17:22:36 -08:00
Jason Ekstrand
954d46184f glsl/types: Add a helper for getting image types
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2016-02-13 17:22:36 -08:00