- 05 Jul, 2012 13 commits
-
-
Marek Olšák authored
I don't think it's possible or even useful to use the extension with GLSL 1.2. Reviewed-by:
Brian Paul <brianp@vmware.com>
-
Kristian Høgsberg authored
We factor out all the EGL book-keeping into dri2_create_image() and simplify the wayland case by using dupImage. Signed-off-by:
Kristian Høgsberg <krh@bitplanet.net>
-
Kristian Høgsberg authored
We have the same switch and allocation code in two places. Signed-off-by:
Kristian Høgsberg <krh@bitplanet.net> Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Kristian Høgsberg authored
Signed-off-by:
Kristian Høgsberg <krh@bitplanet.net> Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Kristian Høgsberg authored
Signed-off-by:
Kristian Høgsberg <krh@bitplanet.net> Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Brian Paul authored
-
Brian Paul authored
This reverts commit cbffaf20. Use the PRIx64 macro in the fprintf() call instead, as suggested by Dylan Noblesmith. Reviewed-by:
José Fonseca <jfonseca@vmware.com>
-
Brian Paul authored
We'll revert the #define fprintf __mingw_fprintf change next. Reviewed-by:
José Fonseca <jfonseca@vmware.com>
-
Brian Paul authored
ROUND and TRUNC are implemented with one function to reduce code duplication. Note: ROUND isn't actually used yet, but probably will be soon. Reviewed-by:
José Fonseca <jfonseca@vmware.com>
-
Brian Paul authored
Converting CMP to SLT+LRP didn't work when src2 or src3 was Inf/NaN. That's the case for GLSL sqrt(0). sqrt(0) actually happens in many piglit auto-generated tests that use the distance() function. v2: remove debug/devel code, per Jose Reviewed-by:
José Fonseca <jfonseca@vmware.com>
-
Brian Paul authored
Was previously implemented with FLOOR. Fixes quite a few piglit tests of float->int conversion, integer division, etc. v2: clean up left over debug/devel code, per Jose Reviewed-by:
José Fonseca <jfonseca@vmware.com>
-
Brian Paul authored
If the 'dst' register is the same as the 'pass' register we'll generate invalid code. Use a temporary register in that case. Reviewed-by:
José Fonseca <jfonseca@vmware.com>
-
Brian Paul authored
-
- 04 Jul, 2012 5 commits
-
-
Eric Anholt authored
-
Gwenole Beauchesne authored
-
Kristian Høgsberg authored
Redo this commit, and remove the inclusion of gl2ext.h from src/mapi/glapi/glapi_priv.h. The include was added in 8f3be339 to fix a missing prototype for glDrawBuffersNV and others, but it's not possible to include both glext.h and gl2ext.h from the same file. I don't see the missing prototype here (with or without shared glapi) so I'm just removing the offending #include. Also, since we're redoing this, update to the most recent gl2ext.2. Signed-off-by:
Kristian Høgsberg <krh@bitplanet.net>
-
Olivier Galibert authored
That old bug was hidden but the clipper always interpolating in 3d space no matter what it should have been doing. Now that the interpolation has been fixed, the bug shows up. Fixes fdo 51364. Signed-off-by:
Olivier Galibert <galibert@pobox.com> Signed-off-by:
José Fonseca <jfonseca@vmware.com>
-
Stuart Abercrombie authored
Calling glGenerateMipmap could overwrite vertex buffer state, leading to incorrect rendering or crashes depending on the Gallium driver. This was happening on WebGL Conformance test texture-size. Before 784dd511 this was covered up by redundant vertex buffer validation. Reviewed-by:
Stéphane Marchesin <marcheu@chromium.org> Signed-off-by:
Marek Olšák <maraeo@gmail.com>
-
- 03 Jul, 2012 9 commits
-
-
Marek Olšák authored
This reverts commit 8818b887. I get a lot of errors like this one: In file included from ../../../src/mapi/glapi/glapi_priv.h:49:0, from glapi_dispatch.c:40: ../../../include/GLES2/gl2ext.h:1074:28: error: redefinition of typedef ‘PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC’ ../../../include/GL/glext.h:10237:25: note: previous declaration of ‘PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC’ was here This with a clean build (with git clean -fdX). I don't get the errors on my other machine. I didn't investigate why, a wild guess is that this depends on the version of gcc.
-
Marek Olšák authored
This reverts commit d1665388.
-
Gwenole Beauchesne authored
-
Gwenole Beauchesne authored
-
Eric Anholt authored
This is a big win for savage2, hon and yofrankie. 62 new programs for savage2/hon get 16-wide mode, along with one for humus demos and two for tropics. Even a few shaders from tropics see reductions of 15% or more. total instructions in shared programs: 216536 -> 207353 (-4.24%) instructions in affected programs: 123941 -> 114758 (-7.41%) In benchmarking Tropics, only a .040% +/- 034% performance improvement was observed (n=90). Rather disappointing, but I was primarily motivated to do this patch by a regression in the number of 16-wide shaders compiled after a GRF texturing on IVB patch I'm working on. Hopefully this helps avoid that regression. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Eric Anholt authored
This shaves a few instructions off of a ton of programs. For 12 shaders from tropics and sanctuary, it's enough reduction in register pressure to get 16-wide mode. 7 shaders from heroes of newerth and savage2 are hurt by about 1.1%, where copy propagation of negates ends up preventing coalescing, but we could regain that by doing dataflow analysis in our copy propagation. No significant performance difference in tropics (n=11) Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Eric Anholt authored
It's going to get more complicated in a moment. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Ian Romanick authored
NOTE: This is a candidate for the 8.0 release branch. Signed-off-by:
Ian Romanick <ian.d.romanick@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50621 Bugzilla: https://bugs.gentoo.org/show_bug.cgi?id=418161Reviewed-by:
Brian Paul <brianp@vmware.com> Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> Cc: Markus Oehme <oehme.markus@gmx.de>
-
Brian Paul authored
-
- 02 Jul, 2012 13 commits
-
-
Paul Berry authored
The meta-ops _mesa_meta_Clear() and _mesa_meta_glsl_Clear() need to ignore the state of GL_SAMPLE_ALPHA_TO_COVERAGE, GL_SAMPLE_ALPHA_TO_ONE, GL_SAMPLE_COVERAGE, GL_SAMPLE_COVERAGE_VALUE, and GL_SAMPLE_COVERAGE_INVERT when clearing multisampled buffers. The easiest way to accomplish this is to disable GL_MULTISAMPLE during the clear meta-ops. Note: this patch also causes GL_MULTISAMPLE to be disabled during _mesa_meta_GenerateMipmap() and _mesa_meta_GetTexImage() (since those two meta-ops use MESA_META_ALL). Arguably this isn't strictly necessary, since those meta-ops use their own non-MSAA fbo's, but it shouldn't do any harm. Fixes Piglit tests "EXT_framebuffer_multisample/clear {2,4} {color,stencil}" on i965. Reviewed-by:
Brian Paul <brianp@vmware.com> Reviewed-by:
Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by:
Chad Versace <chad.versace@linux.intel.com>
-
Paul Berry authored
From the Ivy Bridge PRM, Vol 2 Part 1 p280-281 (3DSTATE_WM: Barycentric Interpolation Mode): "Errata: When Centroid Barycentric mode is required, HW may produce incorrect interpolation results when a 2X2 pixels have unlit pixels." To work around this problem, after doing centroid interpolation, we replace the centroid-interpolated values for unlit pixels with non-centroid-interpolated values (which are interpolated at pixel centers). This produces correct rendering at the expense of a slight increase in shader execution time. I've conditioned the workaround with a runtime flag (brw->needs_unlit_centroid_workaround) in the hopes that we won't need it in future chip generations. Fixes piglit tests "EXT_framebuffer_multisample/interpolation {2,4} {centroid-deriv,centroid-deriv-disabled}". All MSAA interpolation tests pass now. Reviewed-by:
Eric Anholt <eric@anholt.net>
-
Paul Berry authored
In order to compute centroid varyings correctly, the fragment shader needs to be able to load the current pixel/sample mask into a flag register. This patch adds an opcode to the fragment shader back-end to do this; the opcode gets translated into the instruction mov(1) f0<1>UW g1.14<0,1,0>UW { align1 WE_all } Since this instruction clobbers f0, instruction scheduling has to treat it the same as instructions that have a conditional modifier. Reviewed-by:
Eric Anholt <eric@anholt.net>
-
Jordan Justen authored
When querying GL_PRIMITIVES_GENERATED, if primitive restart is also used, then take the software primitive restart path so GL_PRIMITIVES_GENERATED is returned correctly. GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN is also updated since it will also affected by the same issue. As noted in brw_primitive_restart.c, with further work we should be able to move this situation back to a hardware handled path. Signed-off-by:
Jordan Justen <jordan.l.justen@intel.com> Reviewed-by:
Ian Romanick <ian.d.romanick@intel.com> Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Kenneth Graunke authored
Commit d73f6375 fixed the cause of the Piglit failure with ARB_color_buffer_float fragment clamp modes. Now that it's fixed, there's no reason to leave snorm format rendering disabled. Reviewed-by:
Eric Anholt <eric@anholt.net> Signed-off-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Kenneth Graunke authored
Commit 0c005bd7 intended to make ir_loop_jump::mode public, but also accidentally added a new pointer to the enclosing loop. Furthermore, it tried to initialize the new field by adding "this->loop = loop;" to the constructor, but since there is no loop parameter, this only initialized the field to itself---so it will likely be a garbage pointer. A lot of code, such as lower_jumps, allocates new loop jumps without setting this field appropriately, so any uses would probably just crash. Thankfully, there were none, so we can just delete the field. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=51574Reviewed-by:
Ian Romanick <ian.d.romanick@intel.com> Reviewed-by:
Eric Anholt <eric@anholt.net>
-
Kenneth Graunke authored
DrawPixels uses the MESA_META_CLAMP_FRAGMENT_COLOR flag to save/restore the fragment color clamp mode. This is unnecessary since it never alters it. It's also harmful: when the clamp mode is GL_FIXED_ONLY, setting this flag causes _mesa_meta_begin to force it to GL_FALSE, breaking clamping on SNORM formats. DrawPixels should use the user-specified clamp mode and not change it. Fixes Piglit's spec/ARB_color_buffer_float/GL_RGBA8_SNORM-drawpixels test on i965/Sandybridge (with SNORM render targets re-enabled). Reviewed-by:
Eric Anholt <eric@anholt.net> Signed-off-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Marek Olšák authored
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH_WITH_RETVAL calls FLUSH_VERTICES, which is not what we want. This fixes a breakage in classic drivers, introduced in: 62b97167 vbo: first ASSERT_OUTSIDE_BEGIN_END then FLUSH, not the other way around It should fix: https://bugs.freedesktop.org/show_bug.cgi?id=51629 https://bugs.freedesktop.org/show_bug.cgi?id=51642Reviewed-by:
Brian Paul <brianp@vmware.com>
-
Dylan Noblesmith authored
Gets out-of-tree builds slightly closer to working. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Dylan Noblesmith authored
Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Dylan Noblesmith authored
Add $(srcdir) where needed. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Dylan Noblesmith authored
Add "-f $(srcdir)/gl_API.xml" to the arguments of all the scripts that by default look for gl_API.xml in the working directory when run with no arguments, and prepend $(srcdir) to those scripts that are already using an explicit -f argument. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Jose Fonseca authored
tgsi_ureg was recently enhanced to support local temporaries, and as result temps are declared individually. This change avoids many TEMP register declarations on common shaders. (And fixes performance regression due to mismatches against performance sensitive shaders.) Reviewed-by:
Brian Paul <brianp@vmware.com>
-