summaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
* i965: Cleanly fail programs with unsupported array access.Eric Anholt2010-07-231-1/+28
| | | | | This should be more useful for developers and for bug triaging than just generating wrong code.
* i965: Add support for VS relative addressing of temporary arrays.Eric Anholt2010-07-231-2/+49
| | | | Fixes glsl-vs-arrays. Bug #27388.
* glsl: remove invalid _mesa_problem() callBrian Paul2010-07-221-0/+2
| | | | Fixes fd.o bug 29206.
* i965: Respect VS/VP point size result when enabled.Eric Anholt2010-07-221-3/+4
| | | | Fixes glsl-vs-point-size.
* i965: Fix the disasm output for da16 src widths.Eric Anholt2010-07-221-1/+1
| | | | | | This has confused me twice now. It's a fixed width of 4 (usually a region description of <4,4,1>), not 1. If it was 1, we'd have been skipping all over register space.
* i965: Avoid extra MOV in VS indirect register reads.Eric Anholt2010-07-221-15/+16
|
* i965: Fix up VS temporary array access for fixed index offset != 0.Eric Anholt2010-07-221-1/+1
|
* r600: Flip point sprite coordinates when rendering to an FBO.Henri Verbeet2010-07-221-1/+3
| | | | This supersedes http://lists.freedesktop.org/archives/mesa-dev/2010-July/001442.html.
* i965: In the VS, multiply the address reg by the appropriate register size.Eric Anholt2010-07-211-27/+14
| | | | | | | | | | | | The ARL value is increments of vec4 in the register file. But PROGRAM_TEMPORARY or PROGRAM_INPUT are stored as vec4s interleaved between the two verts being executed (thus a vec8 each), compared to PROGRAM_STATE_VAR being packed vec4s. Fixes: glsl-vs-arrays-2 glsl-vs-mov-after-deref (without regressing glsl-vs-arrays-3)
* i965: Clean up brw_dp_READ_4_vs() now that it has fewer options to support.Eric Anholt2010-07-213-52/+31
|
* i965: Support relative addressed VS constant reads using the appropriate msg.Eric Anholt2010-07-213-31/+66
| | | | | The previous support was overly complicated by trying to use the same 1-OWORD message for both offsets.
* i965: Fix the DP read msg_control definitions other than plain OWORD.Eric Anholt2010-07-211-6/+16
|
* i965: Clean up dead code from the VS get_constant/get_reladdr_constant split.Eric Anholt2010-07-211-3/+1
|
* i956: Set the execution size correctly for scratch space writes.Eric Anholt2010-07-211-2/+2
| | | | | | | | Otherwise, the second half isn't written, and we end up reading back black. Fixes the remaining junk drawn in glsl-max-varyings, and will likely help with a number of large real-world shaders.
* i965: Set the GEM domain flags for the scratch space.Eric Anholt2010-07-211-1/+1
| | | | | | They go into the render cache, so while we don't care about their contents after execution, failing to note them could cause the writes to be flushed over important buffer contents later.
* i965: Use the pretty define for 4-oword DP reads.Eric Anholt2010-07-211-1/+1
|
* i965: Set the send commit bit on register spills as required pre-gen6.Eric Anholt2010-07-211-9/+32
| | | | Otherwise, the subsequent read may not get the written value.
* i965: Add disasm for dataport reads (register unspilling).Eric Anholt2010-07-211-1/+22
|
* st/mesa: implement depth clampMarek Olšák2010-07-212-0/+6
|
* Add missing initialization of inOutFlags pointer.Carl Worth2010-07-211-1/+1
| | | | | | This quiets a compiler warning, (and ensures a segmentation fault rather than memory corruption if this variable is written through before being initialized elsewhere).
* i965: Remove an unused variable.Carl Worth2010-07-211-1/+0
| | | | To quiet a compiler warning.
* Regenerate program/lex.yy.cCarl Worth2010-07-211-179/+206
| | | | Based on the two recent changes to program_lexer.l.
* Avoid more warnings in flex-generated code.Carl Worth2010-07-211-0/+7
| | | | | | | | | | This avoids two "function defined but not used" warnings. For the yyinput function we define YY_NO_INPUT which tells flex to simply not generate this function. For unput, we add a call to this function, but inside a while(0) so that it will quiet the warning without actually changing any functionality.
* Avoid warnings in flex-generated code.Carl Worth2010-07-211-0/+6
| | | | | | Add declarations for two functions generated in the flex ouput. It would be nicer if flex simply declared these generated functions as static, but for now we can at least avoid the warning this way.
* radeon: Remove unnecessary header.Vinson Lee2010-07-201-1/+0
|
* st/mesa: implement and advertise GL_ARB_draw_elements_base_vertexMarek Olšák2010-07-202-3/+5
| | | | Signed-off-by: Brian Paul <[email protected]>
* st/mesa: implement depth texture modesMarek Olšák2010-07-201-11/+85
|
* mesa: call ctx->Driver.ChooseTextureFormat() only when necessary.Brian Paul2010-07-203-51/+84
| | | | | | | | | | | | | | | | | | | When defining mipmap level 'L' and level L-1 exists and the new level's internalFormat matches level L-1's internalFormat, then use the same hw format. Otherwise, do the regular ctx->Driver.ChooseTextureFormat() call. This avoids a problem where we end up choosing different hw formats for different mipmap levels depending on how the levels are defined (glTexImage vs. glCopyTexImage vs. glGenerateMipmap, etc). The root problem is the ChooseTextureFormat() implementation in some drivers uses the user's glTexImage format/type parameters in the choosing heuristic. Later mipmap levels might be generated with different calls (ex: glCopyTexImage()) so we don't always have format/type info and the driver may choose a different format. For more background info see the July 2010 mesa-dev thread "Bug in _mesa_meta_GenerateMipmap"
* glx: Remove support for MESA_swap_frame_usageKristian Høgsberg2010-07-197-42/+0
| | | | | The extension never worked, the implementation returns GLX_BAD_CONTEXT when enabling the frame tracking.
* glx: Drop support for GLX_MESA_allocate_memoryKristian Høgsberg2010-07-194-154/+0
| | | | Only r200 implemented it.
* i965: Mostly fix glsl-max-varyings.Eric Anholt2010-07-191-10/+20
| | | | | | | | There was confusion on both the size of message we can send, and on what the URB destination offset means. The remaining problems appear to be due to spilling of regs in the fragment shader being broken.
* i965: Clean up message register setup in emit_vertex_write().Eric Anholt2010-07-191-7/+7
|
* i965: Reduce repeated calculation of the attribute-offset-in-VUE.Eric Anholt2010-07-194-24/+19
| | | | | | This cleans up some chipset dependency sprinkled around, and fixes a potential overflow of the attribute offset array for many vertex results.
* i965: Clarify the nr_regs calculation in brw_clip.cEric Anholt2010-07-191-3/+8
|
* i965: Don't set up VUE space for the disabled user clip distances on gen6.Eric Anholt2010-07-192-8/+14
|
* mesa: remove restart.c from buildBrian Paul2010-07-192-2/+0
|
* st/mesa: fix FRAMEBUFFER_UNSUPPORTED with the D24S8 formatMarek Olšák2010-07-191-7/+19
| | | | | | Fixes FDO bug #29116. NOTE: this is a candidate for the 7.8 branch
* mesa: return retval in _mesa_RenderObjectUnpurgeable()Brian Paul2010-07-161-1/+1
| | | | | | Found by Vinson with static analysis. NOTE: This is a candidate for the 7.8 branch.
* mesa: Add error path in compressed_texture_error_check.Vinson Lee2010-07-151-0/+4
| | | | | Add error path for unhandled dimensions in compressed_texture_error_check.
* r600: fix typo in r700 assemblerAlex Deucher2010-07-151-1/+1
| | | | | | Noticed by Henri Verbeet on IRC. NOTE: This is a candidate for the 7.8 branch.
* radeon: Also flush if it's not the current context that's being destroyed.Henri Verbeet2010-07-151-1/+1
| | | | | | | This avoids calling radeonFlush() during context destruction, when ctx->DrawBuffer would be NULL. NOTE: This is a candidate for the 7.8 branch.
* radeon: allow driconf vblank settings with dri2Alex Deucher2010-07-151-0/+1
| | | | | | | fixes: https://bugs.freedesktop.org/show_bug.cgi?id=28771 NOTE: This is a candidate for the 7.8 branch.
* st/mesa: fix quad strip trimming bugBrian Paul2010-07-151-27/+57
| | | | | | | | | | | | | | | | The translate_prim() function tries to convert quad strips into tri strips. This is normally OK but we have to check for an odd number of vertices so that we don't accidentally draw an extra triangle. The mesa-demos/src/samples/prim.c demo exercises that. With this fix the stray yellow triangle is no longer drawn. Use the u_trim_pipe_prim() function to make sure that prims have the right number of vertices and avoid calling gallium drawing functions when the prim has a degenerate number of vertices. Plus add comments, clean-up formatting, etc. NOTE: This is a candidate for the 7.8 branch.
* mesa: Fix potential out-of-bounds access by _vbo_Materialf.Vinson Lee2010-07-151-1/+4
| | | | | _vbo_Materialf calls _vbo_Materialfv, which uses the params argument as an array.
* mesa: fix _mesa_Texture/Render/BufferObjectUnpurgeable() return valuesBrian Paul2010-07-141-3/+3
| | | | | | | Fixes piglit object_purgeable-api-pbo, object_purgeable-api-vbo and object_purgeable-api-texture failures with swrast. NOTE: This is a candidate for the 7.8 branch.
* mesa: update assertions and fix refcounting in depth/stencil renderbuffer codeBrian Paul2010-07-141-6/+16
|
* mesa: silence a printf warningBrian Paul2010-07-141-2/+2
|
* Merge branch 'mesa-2d-registers'Zack Rusin2010-07-1314-58/+203
|\
| * mesa: add comments and change Index2D to just Index2Zack Rusin2010-07-137-25/+37
| |
| * mesa: make uniform work with geometry shadersZack Rusin2010-07-102-5/+42
| |