summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-04-25i965/fs: Disallow constant propagation into POW on Gen 6.HEADmasterMatt Turner1-2/+8
Fixes assertion failures in three piglit tests on Gen 6 since commit 0087cf23e.
2015-04-24mesa: add support for exposing up to GL4.2Ilia Mirkin1-1/+45
Add the 4.0/4.1/4.2 extensions lists to compute_version. A couple of extensions aren't in mesa yet, so those are marked with 0 until they become supported. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-24i965/fs: Add missing pixel_x/y to brw_instruction_name().Matt Turner1-0/+5
Forgotten in commit 529064f6.
2015-04-24i965/fs: Don't constant propagate into integer math instructions.Matt Turner2-3/+5
Constant combining won't promote non-floats, so this isn't safe. Fixes regressions since commit 0087cf23e.
2015-04-24docs: add news item and link release notes for mesa 10.5.4Emil Velikov2-0/+7
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2015-04-24docs: Add sha256 sums for the 10.5.4 releaseEmil Velikov1-1/+2
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> (cherry picked from commit adb47b5b279b6fd920151aa7926af6ffd2069339)
2015-04-24Add release notes for the 10.5.4 releaseEmil Velikov1-0/+124
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> (cherry picked from commit ea0d1f575c214c09ba3df12644a960e86e031766)
2015-04-24mesa: put more info in glTexImage GL_OUT_OF_MEMORY error messageBrian Paul1-1/+3
Give the user some idea about the size of the texture which caused the GL_OUT_OF_MEMORY error. Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-24i965/fs: Allow 2-src math instructions to have immediate src1.Matt Turner2-7/+11
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2015-04-24nir: Transform pow(x, 4) into (x*x)*(x*x).Matt Turner1-0/+1
2015-04-24glsl: Transform pow(x, 4) into (x*x)*(x*x).Matt Turner1-0/+20
Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2015-04-24mesa: fix glGetActiveUniformsiv regressionTapani Pälli1-4/+16
Commit 7519ddb caused regression to glGetActiveUniformsiv. Patch adds back validation loop of all given uniforms before writing any values, not touching params in case of errors is tested by the conformance suite. Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=90149 Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
2015-04-24mesa: refactor active attrib queries for glGetProgramivTapani Pälli1-25/+14
Main motivation here is to get rid of iterating IR and encapsulate queries within program resources. No functional changes. Piglit tests calling the modified functionality: - gl-get-active-attrib-returns-all-inputs - glsl-1.50-get-active-attrib-array - getactiveattrib Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
2015-04-23i965: Add an INTEL_DEBUG=spill option to test spillingJason Ekstrand3-1/+3
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-23i965/debug: Use the ull specifier for DEBUG enum definesJason Ekstrand1-31/+31
The INTEL_DEBUG variable is a uint64_t and if we want a enum value higer than 32 bits, you need to use ull. We might as well use it for all of them. Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-23i965: Disallow linear blits that are not cacheline aligned.Kenneth Graunke1-8/+19
The BLT engine on Gen8+ requires linear surfaces to be cacheline aligned. This restriction was added as part of converting the BLT to use 48-bit addressing. The main user, intel_emit_linear_blit, now handles this properly. But we might also have linear miptrees; just refuse to blit those. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88521 Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com> Cc: mesa-stable@lists.freedesktop.org
2015-04-23i965: Make intel_emit_linear_blit handle Gen8+ alignment restrictions.Kenneth Graunke1-8/+14
The BLT engine on Gen8+ requires linear surfaces to be cacheline aligned. This restriction was added as part of converting the BLT to use 48-bit addressing. intel_emit_linear_blit needs to handle blits that are not cacheline aligned, as we use it for arbitrary glBufferSubData calls and subrange mappings. Since intel_emit_linear_blit uses 1 byte per pixel, we can use the src/dst pixel X offset field to represent the unaligned portion, and subtract that from the address so it's cacheline aligned. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88521 Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com> Cc: mesa-stable@lists.freedesktop.org
2015-04-23mapi: Adding missing string.h include.Pali Rohár1-0/+2
File glapi_entrypoint.c calls memcpy() function, but does not include string.h header. So compilation can fail at error: implicit declaration of function 'memcpy'. Signed-off-by: Jose Fonseca <jfonseca@vmware.com>
2015-04-23os/os_memory_aligned.h: Handle integer overflow.Jose Fonseca1-1/+27
This code is only used when our memory debugging wrappers are enabled, as we use the C runtime functions directly elsewhere. Tested llvmpipe on Windows w/ memory debugging enabled. VMware PR894263. Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2015-04-23draw: fix prim ids when there's no gsRoland Scheidegger3-2/+15
We were resetting the prim id count for each run of the prim assembler, hence this only worked when the draw calls were very small (the exact limit depending on the vertex size), since larger draw calls get split up. So, do the same as we do already if there's a gs, reset it to zero explicitly for every new instance (this possibly could use the same variable but that isn't doable without some heavy refactoring and I'm not sure it makes sense). Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=90130. Reviewed-by: Jose Fonseca <jfonseca@vmware.com> CC: <mesa-stable@lists.freedesktop.org>
2015-04-23gallium/radeon: don't crash when getting out-of-bounds TEMP referencesMarek Olšák1-0/+6
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
2015-04-22nir/lower_source_mods: Don't propagate register sourcesJason Ekstrand1-0/+7
The nir_lower_source_mods pass does a weak form of copy propagation to clean up all of the mov-with-negate's that get generated. However, we weren't properly checking that the sources were SSA and so we could end up moving a register read which is not, in general, valid. Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-22nir: Rewrite instr_rewrite_srcJason Ekstrand1-24/+28
The old code wasn't correctly handling the case where the new value of the source contains an indirect. Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-22nir/locals_to_regs: Hanadle indirect accesses of length-1 arraysJason Ekstrand1-0/+8
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-22nir/locals_to_regs: Initialize registers with constant initializersJason Ekstrand1-0/+103
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-22nir/locals_to_regs: Pass around the nir_shader rather than a void * mem_ctxJason Ekstrand1-13/+13
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-22nir: Add a simple growing array data structureJason Ekstrand1-0/+96
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-22nir/types: Make glsl_get_length smarterJason Ekstrand4-55/+8
Previously, this function returned the number of elements for structures and arrays and 0 for everything else. In NIR, this is almost never what you want because we also treat matricies as arrays so you have to special-case constantly. This commit glsl_get_length treat matrices as an array of columns by returning the number of columns instead of 0 This also fixes a bug in locals_to_regs caused by not checking for the matrix case in one place. v2: Only special-case for matrices and return a length of 0 for vectors as we did before. This was needed to not break the TGSI-based drivers and doesn't really affect NIR at the moment. Reviewed-by: Connor Abbott <cwabbott0@gmail.com> Tested-by: Rob Clark <robclark@freedesktop.org>
2015-04-22nir: Move get_const_initializer_load from vars_to_ssa to NIR coreJason Ekstrand3-62/+65
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-22nir/lower_vars_to_ssa: Pass around the nir_shader instead of a void mem_ctxJason Ekstrand1-14/+14
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-22i965/nir: Use the correct offsets when handling register indirectsJason Ekstrand1-27/+27
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-22nir/print: Print the closing paren on load_const instructionsJason Ekstrand1-0/+2
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-22nir/tex: Use the correct return size for query_levels and lodJason Ekstrand1-1/+4
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-22nir: Refactor tex_instr_dest_size to use a switch statementJason Ekstrand1-5/+8
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-22nir/lower_vars_to_ssa: Actually look for indirects when determining aliasingJason Ekstrand1-0/+4
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2015-04-23docs: mark off texture_stencil8 (v2.1)Dave Airlie2-1/+2
copy drivers from the stencil_texturing list, softpipe is definitely broken for stencil texturing since it uses float, but I'll look at that later. v2.1: update relnotes Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Dave Airlie <airlied@redhat.com>
2015-04-23st/mesa: add ARB_texture_stencil8 support (v4)Dave Airlie4-16/+22
if we support stencil texturing, enable texture_stencil8 there is no requirement to support native S8 for this, the texture can be converted to x24s8 fine. v2: fold fixes from Marek in: a) put S8 last in the list b) fix renderable to always test for d/s renderable fixup the texture case to use a stencil only format for picking the format for the texture view. v3: hit fallback for getteximage v4: put s8 back in front, it shouldn't get picked now (Ilia) Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
2015-04-23mesa: finish implementing ARB_texture_stencil8 (v5)Dave Airlie4-5/+58
Parts of this were implemented previously, so finish it off. v2: fix getteximage falling into the integer check add fixes for the FBO paths, (fbo-stencil8 test). v3: fix getteximage path harder. v4: remove swapbytes from getteximage path (Ilia) v5: brown paper bag the swapbytes removal. (Ilia) Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Dave Airlie <airlied@redhat.com>
2015-04-22mesa: remove the gl_sl_pragmas structureJason Ekstrand3-22/+0
This code was added by Brian Paul in 2009 but, as far as Matt and I can tell, it's been dead ever since the new GLSL compiler was added. Reviewed-by: Brian Paul <brianp@vmware.com>
2015-04-22i965: Add a brw_compiler structure and store the register sets in itJason Ekstrand7-97/+120
Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-22i965: Rename brw_compile to brw_codegenJason Ekstrand29-246/+246
This name better matches what it's actually used for. The patch was generated with the following command: for file in *; do sed -i -e s/brw_compile/brw_codegen/g $file done Signed-off-by: Jason Ekstrand <jason.ekstrand@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-22i965: Use device_info instead of the context for computing vue mapsJason Ekstrand4-7/+12
Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-22i965: Use device_info instead of the context in instruction schedulingJason Ekstrand3-14/+13
Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-22i965: Add a devinfo field to backend_visitor and use it for gen checksJason Ekstrand19-221/+225
Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-22i965: Remove remaining uses of ctx->Const.UniformBooleanTrue in visitorsJason Ekstrand2-12/+6
Since commit 2881b123, we have used 0/~0 for representing booleans on all gens. However, we still had a bunch of places in the visitor code where we were still referring to ctx->Const.UniformBooleanTrue. Since this is always ~0, we can just remove them. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-22i965/vec4: Add a devinfo field to the generator and use it for gen checksJason Ekstrand2-46/+42
Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-22i965/fs: Add a devinfo field to the generator and use it for gen checksJason Ekstrand2-59/+58
Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-22i965/device_info: Add a supports_simd16_3src flagJason Ekstrand6-55/+56
This also involves moving revision checking to screen creation time and passing that into brw_get_device_info so that we can get the right device_info for early versions of SKL. Since the only place we used revision was to check for SIMD16 3-src instruction support, it's safe to remove the revision field from brw_context. Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-22i965/device_info: Add a HSW_FEATURES macroJason Ekstrand1-3/+7
It's basically just a copy of GEN7_FEATURES only with is_haswell set Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-22i965: Make the annotation code take a device_info instead of a contextJason Ekstrand4-10/+14
Reviewed-by: Matt Turner <mattst88@gmail.com>