summaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
* st/mesa: more helpful debug message in destroy_program_variants_cb()Brian Paul2011-06-081-2/+2
|
* intel: Request DRI2 buffers for separate stencil and hizChad Versace2011-06-083-14/+444
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When it is sensible to do so, 1) intelCreateBuffer() now attaches separate depth and stencil buffers to the framebuffer it creates. 2) intel_update_renderbuffers() requests for the framebuffer a separate stencil buffer (DRI2BufferStencil). The criteria for "sensible" is: - The GLX config has nonzero depth and stencil bits. - The hardware supports separate stencil. - The X driver supports separate stencil, or its support has not yet been determined. If the hardware supports hiz too, then intel_update_renderbuffers() also requests DRI2BufferHiz. If after requesting DRI2BufferStencil we determine that X driver did not actually support separate stencil, we clean up the mistake and never ask for DRI2BufferStencil again. CC: Ian Romanick <[email protected]> CC: Kristian Høgsberg <[email protected]> Acked-by: Eric Anholt <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* intel: Add assertions to intelCreateBuffer()Chad Versace2011-06-081-3/+12
| | | | | | | | | | | | | | | Assert that the GLX config has an expected depth/stencil bit combination: one of d24/s8, d16/s0, d0/s0. These are the only depth/stencil configurations that we advertise. Remove the check for software stencil, because given the assertions' constraints the check always fails. CC: Ian Romanick <[email protected]> CC: Kristian Høgsberg <[email protected]> Acked-by: Eric Anholt <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* intel: Refactor intel_update_renderbuffers()Chad Versace2011-06-081-111/+212
| | | | | | | | | | | | | | | | | | | | | | Extract the code that queries DRI2 to obtain the DRIdrawable's buffers into intel_query_dri2_buffers_no_separate_stencil(). Extract the code that assigns the DRI buffer's DRM region to the corresponding renderbuffer into intel_process_dri2_buffer_no_separate_stencil(). Rationale --------- The next commit enables intel_update_renderbuffers() to query for separate stencil and hiz buffers. Without separating the separate-stencil and no-separate-stencil paths, intel_update_renderbuffers() degenerates into an impenetrable labyrinth of if-trees. CC: Ian Romanick <[email protected]> CC: Kristian Høgsberg <[email protected]> Acked-by: Eric Anholt <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* intel: Add function intel_renderbuffer_set_hiz_region()Chad Versace2011-06-082-0/+17
| | | | | | | | | | | It's the analog of intel_renderbuffer_set_region(), but for the hiz region of course. CC: Ian Romanick <[email protected]> CC: Kristian Høgsberg <[email protected]> Acked-by: Eric Anholt <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* intel/intel_context.c: Remove unused functionsChad Versace2011-06-081-48/+0
| | | | | | | | | | | Remove functions intel_override_hiz() and intel_override_separate_stencil(). They are now located in intel_screen.c. CC: Ian Romanick <[email protected]> CC: Kristian Høgsberg <[email protected]> Acked-by: Eric Anholt <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* intel: Add flags to intel_screen for hiz and separate stencilChad Versace2011-06-083-7/+73
| | | | | | | | | | | | | | | | | | | | | Add the fields below to intel_screen. The expression in parens is the value to which intelInitScreen2() currently sets the field. GLboolean hw_has_separate_stencil (true iff gen >= 7) GLboolean hw_must_use_separate_stencil (true iff gen >= 7) GLboolean hw_has_hiz (always false) enum intel_dri2_has_hiz dri2_has_hiz (INTEL_DRI2_HAS_HIZ_UNKNOWN) The analogous fields in intel_context now inherit their values from intel_screen. When hiz and separate stencil become completely implemented for a given chipset, then the respective fields need to be enabled. CC: Ian Romanick <[email protected]> CC: Kristian Høgsberg <[email protected]> Acked-by: Eric Anholt <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* intel: Define enum intel_dri2_has_hizChad Versace2011-06-081-0/+56
| | | | | | | | | | | | | ... which indicates if the X driver supports DRI2BufferHiz and DRI2BufferStencil. I'm placing this in its own commit due to the large comment block. CC: Ian Romanick <[email protected]> CC: Kristian Høgsberg <[email protected]> Acked-by: Eric Anholt <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* intel: Define span functions for S8 renderbuffersChad Versace2011-06-081-0/+64
| | | | | | | | | Since the stencil buffer is interleaved, the generic Mesa renderbuffer accessors do not suffice. Custom span functions are necessary. Acked-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* i965/brw: Emit state for hiz and separate stencil buffersChad Versace2011-06-082-9/+107
| | | | | | | | | | When emitting 3DSTATE_DEPTH_BUFFER, also emit 3DSTATE_HIER_DEPTH_BUFFER if there is a hiz buffer. Ditto for 3DSTATE_STENCIL_BUFFER and a separate stencil buffer. Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* mesa: merge glapidispatch.h into dispatch.hChia-I Wu2011-06-084-12282/+12242
| | | | | | | | | glapidispatch.h was located in glapi and shared with mesa core. Because the way it was shared, mesa core must include it indirectly via main/dispatch.h. Now that it is no longer needed by glapi and is located in core mesa, merging it with main/dispatch.h to avoid wrong uses.
* mesa: fix function remapping for dlistChia-I Wu2011-06-081-1/+0
| | | | | | glapidispatch.h should not be included directly. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=36282
* mesa: fix GLES remap table setup againChia-I Wu2011-06-081-2/+3
| | | | | | | | | Generate different glapidispatch.h's for GL and GLES. For GLES, we want a local remap table. This reverts commit 5af46e836073d2112b147b524e441bdb808cc128. The commit will break GL remap table setup when main/glapidispatch.h is regenerated.
* vbo: run 'indent' on vbo_save_api.cBrian Paul2011-06-081-362/+456
|
* vbo: rename DO_FALLBACK -> dlist_fallbackBrian Paul2011-06-081-9/+9
|
* vbo: remove node->count > 0 test in vbo_save_playback_vertex_list()Brian Paul2011-06-081-9/+11
| | | | | | | | | | | | | | See piglit dlist-fdo31590.c test and http://bugs.freedesktop.org/show_bug.cgi?id=31590 In this case we had node->prim_count=1 but node->count==0 because the display list started with glBegin() but had no vertices. The call to glEvalCoord1f() triggered the DO_FALLBACK() path. When replaying the display list, the old condition basically no-op'd the call to vbo_save_playback_vertex_list call(). That led to the invalid operation error being raised in glEnd(). NOTE: This is a candidate for the 7.10 branch.
* vbo: check array indexes to prevent negative indexingBrian Paul2011-06-082-10/+13
| | | | | | See the piglit dlist-fdo31590.c test NOTE: This is a candidate for the 7.10 branch.
* st: use _mesa_is_bufferobj()Brian Paul2011-06-081-3/+4
|
* vbo: added a commentBrian Paul2011-06-081-1/+1
|
* mesa: remove old commentBrian Paul2011-06-081-1/+0
|
* mesa: add more sampler types to is_sampler_type()Brian Paul2011-06-081-0/+4
|
* osmesa: Fix missing symbols when GLX_INDIRECT_RENDERING is defined.Jeremy Huddleston2011-06-071-0/+28
| | | | | | | | | When GLX_INDIRECT_RENDERING is defined, some symbols are used in libglapi.a but are not defined. Define them through the help of glapitemp.h. Signed-off-by: Jeremy Huddleston <[email protected]> Signed-off-by: Chia-I Wu <[email protected]>
* mesa: Ignore blits to/from missing buffersIan Romanick2011-06-071-8/+37
| | | | | | | | | | | | | | | | | | | | | The EXT_framebuffer_object spec (and later specs) say: "If a buffer is specified in <mask> and does not exist in both the read and draw framebuffers, the corresponding bit is silently ignored." Check for color, depth, and stencil that the source and destination FBOs have the specified buffers. If the buffer is missing, remove the bit from the blit request mask and continue. Fixes the crash in piglit test 'fbo-missing-attachment-blit from', and fixes 'fbo-missing-attachment-blit es2 from'. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=37739 Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Eric Anholt <[email protected]> NOTE: This is a candidate for the stable branches.
* mesa: Don't try to clear a NULL renderbufferIan Romanick2011-06-071-0/+8
| | | | | | | | | | | | | | In an ES2 context (or if GL_ARB_ES2_compatibility) is supported, the framebuffer can be complete with some attachments be missing. In this case the _ColorDrawBuffers pointer will be NULL. Fixes the crash in piglit test fbo-missing-attachment-clear. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=37739 Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Eric Anholt <[email protected]> NOTE: This is a candidate for the stable branches.
* mga: enable GL_ARB_vertex_array_object extensionNicolas Kaiser2011-06-071-0/+2
| | | | | | | Tested on a Matrox G550 AGP. Signed-off-by: Nicolas Kaiser <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* intel: Update intel-decode.c from intel-gpu-tools.Eric Anholt2011-06-072-88/+785
|
* intel: Implement glFinish() correctly by waiting on all previous rendering.Eric Anholt2011-06-073-16/+13
| | | | | Before, we were waiting for (most of) the current framebuffer to be done, which is not quite the same thing.
* radeon: Use pciid list to generate PCI_CHIP_<FAMILY>_<ID> definesBenjamin Franzke2011-06-071-491/+9
| | | | Reviewed-by: Alex Deucher <[email protected]>
* i965: Fix flipped GT1 vs GT2 URB VS entry count limits.Eric Anholt2011-06-071-2/+2
|
* i965: Update SURFACE_STATE dumping for Ivybridge.Kenneth Graunke2011-06-061-3/+43
| | | | Signed-off-by: Kenneth Graunke <[email protected]>
* i965: Update SAMPLER_STATE dumping for Ivybridge.Kenneth Graunke2011-06-061-1/+53
| | | | Signed-off-by: Kenneth Graunke <[email protected]>
* i965: Update SF_CLIP_VIEWPORT state dumping for Ivybridge.Kenneth Graunke2011-06-061-2/+38
| | | | Signed-off-by: Kenneth Graunke <[email protected]>
* st/mesa: fix renderbuffer internal format for accum bufferBrian Paul2011-06-061-1/+2
| | | | | Fixes an accum buffer regression since switching to the table-based format selection code.
* dri/nouveau: fix gnome-shell segfaultBen Skeggs2011-06-061-1/+1
| | | | Signed-off-by: Ben Skeggs <[email protected]>
* meta: Don't do sRGB encode for framebuffer blits on sRGB-enabled framebuffers.Eric Anholt2011-06-051-0/+6
| | | | | | | Fixes fbo-srgb-blit. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=35373 Reviewed-by: Brian Paul <[email protected]>
* meta: Don't do srgb to linear decode when blitting srgb textures.Eric Anholt2011-06-051-0/+10
| | | | | | Fixes the GL_SRGB8_ALPHA8 -> GL_RGBA8 blits in fbo-srgb-blit.c Reviewed-by: Brian Paul <[email protected]>
* i965: Drop remaining strict conformance fallback for GL_POINT_SMOOTH.Eric Anholt2011-06-031-30/+0
| | | | | We actually could do this in hardware in the fragment shader using gl_PointCoord and the point's size.
* i965: Drop strict conformance fallback for GL_LINE_STIPPLE.Eric Anholt2011-06-031-18/+0
| | | | | | We implement line stipples, just not *quite* correctly. We have a piglit testcase to use when we want to fix it, if we do. Until then, don't lie to our test suites.
* i965: Drop strict conformance fallback for GL_LINE_SMOOTH.Eric Anholt2011-06-031-9/+0
| | | | | | | | | | We do have hardware antialised lines. If we care, we should actually fix them to be conformant (or as close as possible) instead of using this knob to fool testcases using swrast. For some interesting reading on the state of GL_*_SMOOTH across several drivers, see: http://homepage.mac.com/arekkusu/bugs/invariance/HWAA.html
* i965: Drop strict conformance fallback for GL_POLYGON_SMOOTH.Eric Anholt2011-06-031-6/+0
| | | | | | From my reading of the GL 2.1 spec, no antialiasing is strictly conformant for polygon smoothing. Yes, it's absurd, but then, hardware doesn't support this so maybe it's not so absurd.
* i965: Drop INTEL_CONFORMANCE=2 fallback code.Eric Anholt2011-06-031-3/+0
| | | | | This was just a duplicate of no_rast=true driconf option, which is relatively standard across drivers.
* mesa: fix typo (s/GLGL/GLSL/)Brian Paul2011-06-021-1/+1
|
* mesa: 80-column wrappingBrian Paul2011-06-021-8/+14
|
* mesa: consolidate glGetUniform codeBrian Paul2011-06-021-124/+64
|
* mesa: refactor/consolidate uniform lookup codeBrian Paul2011-06-021-96/+87
|
* mesa: add some minor fixes for geometry shadersBrian Paul2011-06-021-0/+6
|
* dri: add missing files from 873379a8818eed9ab16c24728b7091a3a3705c5bBrian Paul2011-06-022-0/+112
|
* mesa: add implementation of glDrawElementsInstancedBaseVertexPierre-Eric Pelloux-Prayer2011-06-025-4/+35
| | | | Signed-off-by: Brian Paul <[email protected]>
* glapi: regenerated filesPierre-Eric Pelloux-Prayer2011-06-022-2723/+2742
| | | | Signed-off-by: Brian Paul <[email protected]>
* dri/nouveau: Fix build with --enable-shared-dricore.Johannes Obermayr2011-06-0217-140/+56
| | | | | | | | | - Based on the work of Себастьян Gliţa Κατινα <[email protected]> - Split Makefile.template into Makefile.defines and Makefile.targets - Adapt other drivers to new situation - Fixes https://bugs.freedesktop.org/show_bug.cgi?id=35441 Signed-off-by: Brian Paul <[email protected]>