summaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
* Revert "st/mesa: don't unreference user attribs up front."Brian Paul2012-03-011-6/+3
| | | | | | | This reverts commit 72931ca4b9fb1002f5b62b74f7f7f32e94e80fde. This commit caused a few piglit regressions (quad-invariance, draw-batch, etc) with the vmware svga driver.
* mesa: let GL3 buf obj queries not depend on opengl major versionYuanhan Liu2012-03-011-6/+6
| | | | | | | | | | | | | | | | | While the ARB_map_buffer_range extension spec says nothing about these queries -- they were added in GL 3.0 --, it seems like this could be an error in the extension spec. This is one of the extensions, like ARB_framebuffer_object, that "back ports" OpenGL 3.0 functionality to previous versions. These extensions are supposed to provide identical functionality to OpenGL 3.0. The other cases of mismatches have been determined to be bugs in the extension specs. And tools like apitrace rely on such queries to function properly. Signed-off-by: Yuanhan Liu <[email protected]> Signed-off-by: José Fonseca <[email protected]> Acked-by: Brian Paul <[email protected]> Acked-by: Ian Romanick <[email protected]>
* st/mesa: remove old assertionBrian Paul2012-02-291-3/+0
|
* i965: Disable PrimitiveID upload.Kenneth Graunke2012-02-291-1/+1
| | | | | | | | | | | We currently don't support gl_PrimitiveID, and I believe asking the hardware to generate it results in vertex cache invalidations. This could result in slowdowns for applications that use gl_InstanceID, which would be counter-productive. Just turn it off for now. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965: Enable the GL_ARB_draw_instanced extension.Kenneth Graunke2012-02-292-2/+3
| | | | | Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965: Fix swizzles for system values such as gl_InstanceID.Kenneth Graunke2012-02-291-0/+4
| | | | | | | | | | | | | | | visit(ir_variable *) sets dst_reg::writemask to the appropriate channel for system values. Unfortunately, visit(ir_dereference_variable *) then calls swizzle_for_size, which for a float, sets the swizzle to .x. This works for gl_VertexID, since we store it in the .x component (see brw_draw_upload.c:732 - VID), but fails for gl_InstanceID (IID) since we store it in the .y channel. To fix this, avoid calling swizzle_for_size on ir_var_system_values. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Add missing error check for first < 0 in glDrawArraysInstanced().Eric Anholt2012-02-291-0/+6
| | | | | | Fixes piglit GL_ARB_draw_instanced/negative-arrays-first-negative. Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Fix display lists for draw_elements_base_vertex with draw_instanced.Eric Anholt2012-02-291-2/+16
| | | | | | Fixes piglit GL_ARB_draw_elements_base_vertex/dlist-arb_draw_instanced Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Fix display list handling for GL_ARB_draw_instanced.Eric Anholt2012-02-292-6/+28
| | | | | | | | | When you called them in a display list compile before, you would just end up calling through NULL. Fixes piglit GL_ARB_draw_instanced/dlist. Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Fix typo in comment.Eric Anholt2012-02-291-1/+1
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Fix Gen6+ dynamic state upper bound on older kernels.Kenneth Graunke2012-02-291-2/+1
| | | | | | | | | | | | | | | | | | | | | Kernels prior to 271d81b84171d84723357ae6d172ec16b0d8139c (March 2011) don't support relocations outside of the target buffer object. Rather than guarding this with a I915_PARAM_HAS_RELAXED_DELTA check, just smash the bound to 0xfffff001 like we do on Ironlake. This effectively gives us no upper bound check, just like we did prior to commit 271d81b84171d84723357ae6d172ec16b0d8139c. Daniel Vetter would also like to mention that this relies on the guard page at the end of the GTT. NOTE: This is a candidate for release branches. Fixes a regression since 271d81b84171d84723357ae6d172ec16b0d8139c. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=46766 Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Daniel Vetter <[email protected]>
* glx: Convert to automake.Eric Anholt2012-02-291-2/+0
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Push the shine table into the tnl module.Mathias Fröhlich2012-02-2910-179/+183
| | | | | | | | | | All users of the shine table outside of the tnl module are gone. Move the implementation into the tnl module and prefix the public functions with _tnl. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Mathias Froehlich <[email protected]>
* mesa: Do not invalidate shine tables in compute light positions.Mathias Fröhlich2012-02-291-3/+0
| | | | | | | | | | | | Since the shine tables are now only used in the tnl lighting stage, where they are validated through the tnl driver function NotifyMaterialChange called in tnl/t_vb_light.c, we can not omit calling _mesa_validate_all_lighting_tables (which only validates the shine tables) in main/light.c. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Mathias Froehlich <[email protected]>
* mesa: Avoid revalidating shine tables in _tnl_RasterPos.Mathias Fröhlich2012-02-291-2/+0
| | | | | | | | | Now that _tnl_RasterPos no longer uses the shine tables, avoid revalidating them. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Mathias Froehlich <[email protected]>
* mesa: Avoid using the shine table for _tnl_RasterPosMathias Fröhlich2012-02-291-1/+5
| | | | | | | | | | | | | Use direct computation of pow for computing the shininess in _tnl_RasterPos. Since the _tnl_RasterPos function is still used by plenty drivers that do only need the shine table for _tnl_RasterPos but do not make use of swtnl computations, this enables pushing down the shine table computation and validation into the tnl module, which will happen in a followup change. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Mathias Froehlich <[email protected]>
* mesa: Avoid explicit invalidation of shine tables.Mathias Fröhlich2012-02-291-27/+0
| | | | | | | | | | Since the shine tables are implicitly invalidated by having a different shininess value than the current one, we can omit the explicit invalidation of the shine table. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Mathias Froehlich <[email protected]>
* mesa: Remove gl_light_attrib::_Flags.Mathias Fröhlich2012-02-293-6/+4
| | | | | | | | This variable is only used locally in _mesa_update_lighting. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Mathias Froehlich <[email protected]>
* mesa: Remove _CosCutoffNeg from light state.Mathias Fröhlich2012-02-292-6/+2
| | | | | | | | | It is only used as a temporary variable during computation of _CosCutoff. So, don't store it. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Mathias Froehlich <[email protected]>
* mesa: use arrayObj var in more places in client_state()Brian Paul2012-02-291-3/+3
|
* mesa: asst. fixes for texture arrays and bordersBrian Paul2012-02-291-12/+20
| | | | | For 1D array textures, there is no border on the height dimension. For 2D array textures, there is no border on the depth dimension.
* mesa: check for no state change in VertexAttribDivisor()Brian Paul2012-02-291-2/+8
| | | | Reviewed-by: José Fonseca <[email protected]>
* mesa: reorder things in mtypes.hBrian Paul2012-02-291-160/+169
| | | | | | Move structs, enums, etc so they're in more logical order. In particular, the shader and transform feedback-related structs/enums were pretty scattered around.
* i965: Avoid blocking on the GPU for setting the HiZ op vertex data.Eric Anholt2012-02-284-60/+9
| | | | | | | | | | | | We need to allocate new space every time to avoid blocking on the last HiZ op completing. There are two easy ways to do this: brw_state_batch() and intel_upload_data(). brw_state_batch() is simpler and avoids another buffer allocation. Improves Unigine Tropics performance 0.376416% +/- 0.148722% (n=7). Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Don't disable fast path for normalized typesNeil Roberts2012-02-281-7/+15
| | | | | | | | | | | | | | | | | | Mesa has a fast path for the generic fallback when using glReadPixels for RGBA data which uses memcpy. However it was really difficult to hit this case because it would not be used if any transferOps are enabled. Any type apart from floating point or non-normalized integer types (so any of the common types) would force enabling clamping so the fast path could not be used. This patch makes it ignore clamping when determining whether to use the fast path if the data type of the buffer is an unsigned normalized type because in that case clamping will not have any effect anyway. https://bugs.freedesktop.org/show_bug.cgi?id=46631 NOTE: This is a candidate for the 8.0 branch. Signed-off-by: Brian Paul <[email protected]>
* mesa: minor comment, whitespace fixes in teximage.cBrian Paul2012-02-281-3/+1
|
* st/mesa: don't unreference user attribs up front.Dave Airlie2012-02-281-3/+6
| | | | | | | | postpone unreferences until end of function, as the ones in use will get naturally dereferenced. Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* mesa/vbo: inline vbo_sizeof_ib_type.Dave Airlie2012-02-282-18/+16
| | | | | | | Can't see any reason this wouldn't be better off as an inline. Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* xlib: silence unused var warningBrian Paul2012-02-271-0/+1
|
* gallium: remove PIPE_SHADER_CAP_OUTPUT_READMarek Olšák2012-02-271-11/+2
| | | | | | | | | | | | r600g is the only driver which has made use of it. The reason the CAP was added was to fix some piglit tests when the GLSL pass lower_output_reads didn't exist. However, not removing output reads breaks the fallback for glClampColorARB, which assumes outputs are not readable. The fix would be non-trivial and my personal preference is to remove the CAP, considering that reading outputs is uncommon and that we can now use lower_output_reads to fix the issue that the CAP was supposed to workaround in the first place.
* scons: Don't build the assembly sources on Mac OS X.Vinson Lee2012-02-251-1/+1
| | | | | | | | This patch allows the Mac OS X SCons build to complete. The assembly sources contain psuedo-ops that not are supported on Mac OS X. Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: José Fonseca <[email protected]>
* mesa/gdi: include swrast.h to fix compilationBrian Paul2012-02-241-0/+1
|
* st/mesa: initialize the MaxViewport, MaxRenderbufferSize constantsBrian Paul2012-02-241-0/+8
| | | | | Use the max 2D/rect texture size as the limit. If that's not true for some devices we'll need new PIPE_CAP_ queries.
* mesa: move more swrast-related #defines out of core MesaBrian Paul2012-02-243-40/+28
|
* mesa: remove STENCIL_BITS useBrian Paul2012-02-241-1/+1
|
* xlib: remove STENCIL_BITSBrian Paul2012-02-241-3/+3
|
* mesa: remove last of MAX_WIDTH, MAX_HEIGHTBrian Paul2012-02-243-13/+7
| | | | | Define new MAX_VIEWPORT_WIDTH/HEIGHT and MAX_RENDERBUFFER_SIZE values instead.
* mesa: remove MAX_WIDTH from prog_execute.hBrian Paul2012-02-242-1/+7
| | | | | define a PROG_MAX_WIDTH var instead. It has to match MAX_WIDTH in swrast. More elaborate refactoring could fix that (someday).
* intel: remove MAX_WIDTH usage in intelInitContext()Brian Paul2012-02-241-4/+2
|
* swrast: check max renderbuffer size against SWRAST_MAX_WIDTHBrian Paul2012-02-241-0/+2
|
* osmesa: use SWRAST_MAX_WIDTH/HEIGHTBrian Paul2012-02-241-4/+4
|
* dri/swrast: use SWRAST_MAX_WIDTH/HEIGHTBrian Paul2012-02-241-1/+1
|
* xlib: use SWRAST_MAX_WIDTH/HEIGHTBrian Paul2012-02-241-3/+3
|
* swrast: define, use SWRAST_MAX_WIDTH/HEIGHTBrian Paul2012-02-2416-46/+55
| | | | We'll get rid of MAX_WIDTH, MAX_HEIGHT soon.
* mesa: remove some cruft from config.hBrian Paul2012-02-241-16/+1
|
* mesa: minor comment clean-ups in config.hBrian Paul2012-02-241-4/+4
|
* mesa: remove WIN32 MAX_WIDTH work-around in config.hBrian Paul2012-02-241-17/+0
| | | | | There aren't any more stack-allocated arrays dimensioned by MAX_WIDTH so there shouldn't be any more stack overflows.
* swrast: remove MAX_WIDTH array in s_span.cBrian Paul2012-02-241-1/+2
|
* swrast: simplify mask array codeBrian Paul2012-02-241-3/+4
|
* swrast: stop using MAX_WIDTH arrays in triangle codeBrian Paul2012-02-241-2/+2
|