summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-01-08r600g: write all MRTs only if there is exactly one output (fixes a hang)Marek Olšák1-1/+2
This fixes a hang in piglit/arb_blend_func_extended-fbo-extended-blend-pattern_gles2 on REDWOOD. Cc: 11.0 11.1 <mesa-stable@lists.freedesktop.org> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (cherry picked from commit b5b87c4ed1dfd58aec8905e0514c9ba92ba83e1d)
2016-01-08tgsi/scan: add flag colors_writtenMarek Olšák2-0/+4
This is a prerequisite for the following r600g fix. Cc: 11.0 11.1 <mesa-stable@lists.freedesktop.org> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (cherry picked from commit eb4813a9524e1a61f46bf45150adb1bd78564863)
2016-01-08cherry-ignore: drop the "re-enable" DCC on StoneyEmil Velikov1-0/+2
As per Marek's request of the mesa-stable ML. Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2016-01-07mesa/shader: return correct attribute location for double matrix arraysDave Airlie1-3/+8
If we have a dmat2[4], then dmat2[0] is at 17, dmat2[1] at 19, dmat2[2] at 21 etc. The old code was returning 17,18,19. I think this code is also wrong for float matricies as well. There is now a piglit for the float case. This partly fixes: GL41-CTS.vertex_attrib_64bit.limits_test [airlied: update with Tapani suggestion to clean it up]. Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com> Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 18ad641c3b2e926b8b3e2bd1df31fa739624cbe4)
2016-01-07gallium/util: return correct number of bound vertex buffersPatrick Rudolph1-1/+7
In case a state tracker unbinds every slot by a seperate pipe->set_vertex_buffers() call, starting from slot zero, the number of bound buffers would not reach zero at all. The current algorithm does not account for pre-existing holes in the buffer list. Unbinding all buffers at once or starting at the top-most slot results in correct behaviour. Calculating the correct number of bound buffers fixes a NULL pointer dereference in nvc0_validate_vertex_buffers_shared(). Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93004 Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> (cherry picked from commit 79bff488bc23b8615cc37069b6c5914c56be835f)
2016-01-07mesa/varray: set double arrays to non-normalised.Dave Airlie1-1/+1
Doesn't have any effect in practice I don't think, but CTS reads back using GetVertexAttrib. This fixes: GL41-CTS.vertex_attrib_64bit.get_vertex_attrib Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 21abaad8fe7b5bf78737b9cf009548f41e4777b9)
2016-01-07nv50,nvc0: fix use-after-free when vertex buffers are unboundPatrick Rudolph2-7/+6
Always reset the vertex bufctx to make sure there's no pointer to an already freed pipe_resource left after unbinding buffers. Fixes use after free crash in nvc0_bufctx_fence(). Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93004 Signed-off-by: Patrick Rudolph <siro@das-labor.org> [imirkin: simplify nvc0 fix, apply to nv50] Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> (cherry picked from commit 432a798cf5c7fab18a3e32d4073840df7d0d37cb)
2015-12-15docs: add sha256 checksums for 11.0.1Emil Velikov1-1/+2
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2015-12-15docs: Update 11.1.0 release notesEmil Velikov1-3/+188
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2015-12-14Update version to 11.1.0(final)Emil Velikov1-1/+1
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2015-12-12i965: Resolve color and flush for all active shader images in ↵Francisco Jerez1-0/+18
intel_update_state(). Fixes arb_shader_image_load_store/execution/load-from-cleared-image.shader_test. Couldn't reproduce any significant FPS regression in CPU-bound benchmarks from the Finnish benchmarking system on neither VLV nor BSW after 30 runs with 95% confidence level. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92849 Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Jason Ekstrand <jason.ekstrand@intel.com> Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> Tested-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Kristian Høgsberg <krh@bitplanet.net> (cherry picked from commit 595c8180714da1d97be445b9a66affa1dfea39f6)
2015-12-12radeonsi: handle loading doubles as geometry shader inputs.Dave Airlie1-4/+16
This adds the double code to the geometry shader input handling. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit e307cfa7d9a6c4c44be9d0fb50a113024646029e)
2015-12-12radeonsi: handle doubles in lds load path.Dave Airlie1-0/+8
This handles loading doubles from LDS properly. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> Cc: "11.0 11.1" <mesa-stable@lists.fedoraproject.org> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 8c9e40ac22ce5a60753172a8f95a120d84a3ec4c)
2015-12-12r600: handle geometry dynamic input array indexDave Airlie1-2/+11
This fixes: glsl-1.50/execution/geometry/dynamic_input_array_index.shader_test my profanity. We need to load the AR register with the value from the index reg Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit cce3864046be104933fd4f1bb7a4b36092ff4925)
2015-12-12r600g: fix geom shader input indirect indexing.Dave Airlie1-2/+30
This fixes: gs-input-array-vec4-index-rd The others run out of gprs unfortunately. Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 38542921c785efb37bae88db409d278990684fa4)
2015-12-12r600/shader: add utility functions to do single slot arithmaticDave Airlie1-0/+95
These utilities are to be used to do things like integer adds and multiplies to be used in calculating the LDS offsets etc. It handles CAYMAN MULLO differences as well. Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 0696ebc899d3aa125ae85b757c5fba137617ecaa)
2015-12-12r600/shader: split address get out to a function.Dave Airlie1-1/+6
This will be used in the tess shaders. Reviewed-by: Oded Gabbay <oded.gabbay@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 4d64459a92a4c1a64fb7051fd1320c14c1854dcb)
2015-12-12r600g: fix outputing to non-0 buffers for stream 0.Dave Airlie1-2/+4
This fixes: arb_transform_feedback3-ext_interleaved_two_bufs_gs arb_transform_feedback3-ext_interleaved_two_bufs_gs_max transform-feedback-builtins If we are only emitting one ring, then emit all output buffers on it. Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit e97ac006d77ccbc87a56e46e2f75da6511c9b9e5) [Emil Velikov: squash trivial conflicts] Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Conflicts: src/gallium/drivers/r600/r600_shader.c
2015-12-12nv50/ir: fix cutoff for using r63 vs r127 when replacing zeroIlia Mirkin1-1/+2
The only effect here is a space savings - 822 programs in shader-db affected with the following overall change: total bytes used in shared programs : 44154976 -> 44139880 (-0.03%) Fixes: 641eda0c (nv50/ir: r63 is only 0 if we are using less than 63 registers) Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> (cherry picked from commit f920f8eb026d39c0adb547a90399e76b8351fec6)
2015-12-12glsl: Relax qualifier ordering restriction in ES 3.1.Matt Turner2-10/+15
... and allow the "binding" qualifier in ES 3.1 as well. GLSL ES 3.1 incorporates only a few features from the extension ARB_shading_language_420pack: the relaxed qualifier ordering requirements and the binding qualifier. Cc: "11.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit eca846e7ae3721c900ad78db300bbc66b08a3cc3)
2015-12-12glsl: Use has_420pack().Matt Turner3-7/+6
These features would not have been enabled with #version 420 otherwise. Cc: "11.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> (cherry picked from commit 79da7220db645ade2903af238603c32d551ed5c4)
2015-12-12glsl: Allow binding of image variables with 420pack.Matt Turner1-1/+3
This interaction was missed in the addition of ARB_image_load_store. Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93266 Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit c200e606f7348a6d75e4cf72fb538f5d78d67649)
2015-12-12i965/nir: Remove unused indirect handlingJason Ekstrand1-33/+11
The one and only place where the FS backend allows reladdr is on uniforms. For locals, inputs, and outputs, we lower it away before the backend ever sees it. This commit gets rid of the dead indirect handling code. Cc: "11.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit 22c273de2b97743587310f7bbf66767191bde866)
2015-12-12i965/state: Get rid of dword_pitch arguments to buffer functionsJason Ekstrand6-38/+19
Cc: "11.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit abb569ca18db159ae3e4c4b51d01e5a8b3215e04)
2015-12-12i965/vec4: Use a stride of 1 and byte offsets for UBOsJason Ekstrand3-27/+7
Cc: "11.0" <mesa-stable@lists.freedesktop.org> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92909 Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit 05bdc21f84edc200a0b0a695b79d12f25cc00645)
2015-12-12i965/fs: Use a stride of 1 and byte offsets for UBOsJason Ekstrand3-16/+13
Cc: "11.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit 13ad8d03f201a4d09bf7ab9078b00807d61dfada)
2015-12-12i965/vec4: Use byte offsets for UBO pulls on Sandy BridgeJason Ekstrand3-10/+31
Previously, the VS_OPCODE_PULL_CONSTANT_LOAD opcode operated on vec4-aligned byte offsets on Iron Lake and below and worked in terms of vec4 offsets on Sandy Bridge. On Ivy Bridge, we add a new *LOAD_GEN7 variant which works in terms of vec4s. We're about to change the GEN7 version to work in terms of bytes, so this is a nice unification. Cc: "11.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit e3e70698c3cfa7e9acccd6eddfb37516c45d5ac2)
2015-12-12radeonsi: last_gfx_fence is a winsys fenceNicolai Hähnle1-1/+1
Cc: "11.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Marek Olšák <marek.olsak@amd.com> (cherry picked from commit d5a5dbd71f0e8756494809025ba2119efdf26373)
2015-12-12gk110/ir: fix imad sat/hi flag emission for immediate argsIlia Mirkin1-8/+3
According to nvdisasm both the immediate and non-imm cases use the same bits. Both of these flags are quite rarely set though. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> (cherry picked from commit 1d708aacb7631833b0f04e704481854428f60ba3)
2015-12-12gk104/ir: sampler doesn't matter for txfIlia Mirkin1-1/+1
We actually leave the sampler unset for OP_TXF, which caused the GK104+ logic to treat some texel fetches as indirect. While this works, it's incredibly wasteful. This only happened when the texture was > 0 (since sampler remained == 0). Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> (cherry picked from commit 63b850403c90f33c295d3ad6be4ad749d4ea6274)
2015-12-12radeonsi: disable DCC on StoneyMarek Olšák1-0/+4
Cc: 11.1 <mesa-stable@lists.freedesktop.org> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (cherry picked from commit 32f05fadbbdf2a3fb60055e610bbbdcd82dd3ce5)
2015-12-12st/va: disable MPEG4 by default v2Christian König2-1/+15
The workarounds are too hacky to enable them by default and otherwise MPEG4 doesn't work reliably. v2: add docs/envvars.html, CC stable and fix typos Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> (v1) Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> (v1) Cc: "11.1.0" <mesa-stable@lists.freedesktop.org> (cherry picked from commit a2c5200a4b3e04a6284dac7de87bc34957b01fa3)
2015-12-12gk110/ir: fix imul hi emission with limm argIlia Mirkin1-2/+2
The elemental demo hits this case. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> (cherry picked from commit db072d20867426958153279575dfdc2049b5f595)
2015-12-12mesa: move pipeline input/output validation inside ↵Timothy Arceri1-15/+15
_mesa_validate_program_pipeline() This allows validation to be done on rendering calls also. Fixes 3 dEQP-GLES31.functional.separate tests. Cc: "11.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Cc: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit 4dd096d74178e66334089fb0ed01cbf2d6117fac)
2015-12-12glsl: don't generate extra errors in ValidateProgramPipelineTimothy Arceri1-2/+5
From Section 11.1.3.11 (Validation) of the GLES 3.1 spec: "An INVALID_OPERATION error is generated by any command that trans- fers vertices to the GL or launches compute work if the current set of active program objects cannot be executed, for reasons including:" It then goes on to list the rules we validate in the _mesa_validate_program_pipeline() function. For ValidateProgramPipeline the only mention of generating an error is: "An INVALID_OPERATION error is generated if pipeline is not a name re- turned from a previous call to GenProgramPipelines or if such a name has since been deleted by DeleteProgramPipelines," Which we handle separately. This fixes: ES31-CTS.sepshaderobjs.PipelineApi No regressions on the eEQP 3.1 tests. Cc: Gregory Hainaut <gregory.hainaut@gmail.com> Reviewed-by: Tapani Pälli <tapani.palli@intel.com> (cherry picked from commit c3ec12ec3c1ddbc72e50df1f5632fe0547a89f7e) Nominated-by: Emil Velikov <emil.velikov@collabora.com>
2015-12-12glsl: re-validate program pipeline after sampler changeTimothy Arceri1-0/+4
Cc: "11.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Cc: Kenneth Graunke <kenneth@whitecape.org> https://bugs.freedesktop.org/show_bug.cgi?id=93180 (cherry picked from commit da1a01361b0b4b9c727aa9a5a2ebe270a6fa81b7)
2015-12-12glsl: don't sort varying in separate shader modeGregory Hainaut1-6/+32
This fixes an issue where the addition of the FLAT qualifier in varying_matches::record() can break the expected varying order. It also avoids a future issue with the relaxing of interpolation qualifier matching constraints in GLSL 4.50. V2: (by Timothy Arceri) * reworked comment slightly Signed-off-by: Gregory Hainaut <gregory.hainaut@gmail.com> Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com> Reviewed-by: Tapani Pälli <tapani.palli@intel.com> (cherry picked from commit 2ab9cd0c4dcefb3e63266cadc1e06079e67c3962) Nominated-by: Timothy Arceri <timothy.arceri@collabora.com>
2015-12-12glsl: don't dead code remove SSO varyings marked as activeGregory Hainaut1-0/+14
GL_ARB_separate_shader_objects allow matching by name variable or block interface. Input varyings can't be removed because it is will impact the location assignment. This fixes the bug 79783 and likely any application that uses GL_ARB_separate_shader_objects extension. V2 (by Timothy Arceri): * simplify now that builtins are not set as always active Signed-off-by: Gregory Hainaut <gregory.hainaut@gmail.com> Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com> Reviewed-by: Tapani Pälli <tapani.palli@intel.com> https://bugs.freedesktop.org/show_bug.cgi?id=79783 (cherry picked from commit 8117f46f496fb31339fc97a2501d5b3325a1fefb) Nominated-by: Timothy Arceri <timothy.arceri@collabora.com>
2015-12-12glsl: add always_active_io attribute to ir_variableGregory Hainaut3-0/+82
The value will be set in separate-shader program when an input/output must remains active. e.g. when deadcode removal isn't allowed because it will create interface location/name-matching mismatch. v3: * Rename the attribute * Use ir_variable directly instead of ir_variable_refcount_visitor * Move the foreach IR code in the linker file v4: * Fix variable name in assert v5 (by Timothy Arceri): * Rename functions and reword comments * Don't set always active on builtins Signed-off-by: Gregory Hainaut <gregory.hainaut@gmail.com> Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com> Reviewed-by: Tapani Pälli <tapani.palli@intel.com> (cherry picked from commit 618612f867ed8140409796535314d9b9ed58440b) Nominated-by: Timothy Arceri <timothy.arceri@collabora.com>
2015-12-12glsl: copy how_declared when lowering interface blocksTimothy Arceri1-0/+1
Cc: Gregory Hainaut <gregory.hainaut@gmail.com> Reviewed-by: Tapani Pälli <tapani.palli@intel.com> (cherry picked from commit 76c09c1792ff1209bd34e1ae0e17b9c4929a892f)
2015-12-12radeonsi: fix occlusion queries on FijiMarek Olšák1-2/+2
Tested. (cherry picked from commit bfc14796b077444011c81f544ceec5d8592c5c77)
2015-12-12i965: Pass brw_context pointer, not gl_context pointer.Matt Turner1-2/+1
Fixes a warning introduced by commit dcadd855. (cherry picked from commit f1b7fefd4e7e3872cc0d43901b7ec643e1d115f9)
2015-12-12gles2: Update gl2ext.h to revision: 32120Marta Lofstedt1-6/+934
This is needed to be able to implement the accepted OES extensions. Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org> Signed-off-by: Marta Lofstedt <marta.lofstedt@linux.intel.com> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> (cherry picked from commit 1d5b88e33b07bc26d612720e6cb197a6917ba75f)
2015-12-12Revert "cherry-ignore: ignore unneeded header update"Emil Velikov1-2/+0
This reverts commit 79f3aaca4f03e8efec4c75907fe9b80cfcefefdf. The commit (header update) was not needed for the 11.0 branch as opposed to this one (11.1)
2015-12-11vc4: When doing algebraic optimization into a MOV, use the right MOV.Eric Anholt1-1/+6
If there were src unpacks, changing to the integer MOV instead of float (for example) would change the unpack operation. (cherry picked from commit e3efc4b02334897e0103f8cf926f376159ca1293)
2015-12-11vc4: Fix handling of src packs on in qir_follow_movs().Eric Anholt1-2/+8
The caller isn't going to expect it from a return, so it would probably get misinterpreted. If the caller had an unpack in its reg, that's fine, but don't lose track of it. (cherry picked from commit 2591beef890015538bed005a79414274a7497b2f)
2015-12-11vc4: Add missing progress note in opt_algebraic.Eric Anholt1-0/+1
(cherry picked from commit b70a2f4d81940ef103c95ee51f2a84391a076ac0)
2015-12-11vc4: Fix handling of sample_mask output.Eric Anholt2-6/+6
I apparently broke this in a late refactor, in such a way that I decided its tests were some of those interminable ones that I should just blacklist from my testing. As a result, the refactors related to it were totally wrong. (cherry picked from commit 53b2523c6ed8202ba44596bee7ec7ba8420c4e92)
2015-12-11vc4: Enable MSAA.Eric Anholt1-2/+3
We still have several failures in the newly enabled tests in simulation: sRGB downsampling is done as if it was just linear, stencil blits are not supported on MSAA either, and derivatives are still not supported (breaking some MSAA simulation shaders). So, other than sRGB downsampling quality, things seem to be in good shape. (cherry picked from commit f61ceeb3fd368cec18b13416a65a35fc233d7799)
2015-12-11vc4: Add support for mapping of MSAA resources.Eric Anholt2-8/+105
The pipe_transfer_map API requires that we do an implicit downsample/upsample and return a mapping of that. (cherry picked from commit fc4a1bfb88d065afb9eda9a888b91d8c0fa72dcd)