summaryrefslogtreecommitdiff
path: root/src/mesa
AgeCommit message (Collapse)Author
2009-06-22st/mesa: enable GL_ARB_vertex_array_objectBrian Paul
2009-06-22mesa: enforce the rule that arrays live in VBOs for GL_ARB_vertex_array_objectBrian Paul
2009-06-22mesa: added extension flag for ARB_vertex_array_objectBrian Paul
2009-06-19mesa: implement _mesa_GenVertexArrays() for GL_ARB_vertex_array_objectBrian Paul
This also involves adding a gl_array_object::VBOonly field. For the ARB extension, all arrays in the object must reside in a VBO. This flag keeps track of that requirement.
2009-06-19mesa: implement _mesa_BindVertexArray()Brian Paul
2009-06-19mesa: move vertex array objects from shared state to per-contextBrian Paul
The ARB version requires VAOs to be per-context while the Apple extension was ambiguous.
2009-06-19mesa: regenerated files related to GL_ARB_vertex_array_objectBrian Paul
2009-06-19glapi: add new information for GL_ARB_vertex_array_objectBrian Paul
2009-06-19intel: Fixups for 'mesa: create/destroy buffer objects via driver functions'.Michel Dänzer
Initialize all driver function hooks before calling _mesa_initialize_context(), and handle all buffer objects in intel_buffer_object(). Fixes assertion failure when running glxinfo.
2009-06-19radeon: fix cube maps for non-mm pathRoland Scheidegger
drm cmd checker would refuse cube emits also fix an issue in the cs path which would calculate the register offset off by one dword. Only same testing done as original code (none except compile tested).
2009-06-19st/mesa: restore some parameter checking buffer object functionsBrian Paul
These functions may be called from the VBO code (not just user GL calls) so do some parameter sanity checking.
2009-06-19r200: fix cube maps for non-mm pathRoland Scheidegger
drm cmd checker rightfully fell over any cube emit
2009-06-19i965: initial code for loops in vertex programsBrian Paul
2009-06-19i965: asst clean-ups, etc in brw_vs_emit()Brian Paul
2009-06-19i965: asst clean-ups, var renaming in brw_wm_emit_glsl()Brian Paul
2009-06-19st/mesa: remove redundant st_buffer_object::size field and error checksBrian Paul
Just use the gl_buffer_object::Size field. Remove unnecessary size/offset error checks. Core Mesa will have already done these checks before these functions are called.
2009-06-19st/mesa: no longer special-case buffer object 0 in st_buffer_object() cast ↵Brian Paul
wrapper Since commit 6629a35559ff7e3b993966f697f7c7f68e5a38d9 "mesa: create/destroy buffer objects via driver functions" this is no longer needed, and actually was causing a crash during context tear-down.
2009-06-19radeons: use dp4 for position invariant vertex programsRoland Scheidegger
Fixes #22181. R200 requires this since DP4 is used in hw tnl mode. R300 prefers it (should be faster due to no instruction dependencies), but both methods should be correct (when sw tcl is used though, MUL/MAD might be faster). Probably doesn't make much difference for R100 since vertex progs are executed in software anyway, but let's just keep it the same there too.
2009-06-19mesa: make query-related driver fallback functions staticBrian Paul
Plug them in via _mesa_init_query_object_functions().
2009-06-19mesa: make buffer object-related driver fallback functions staticBrian Paul
Plug them in via _mesa_init_buffer_object_functions().
2009-06-19mesa: create/destroy buffer objects via driver functionsBrian Paul
2009-06-19Merge branch 'ext-provoking-vertex'Brian Paul
Conflicts: docs/relnotes-7.6.html progs/tests/Makefile src/gallium/drivers/softpipe/sp_prim_vbuf.c src/glx/x11/indirect.c src/mesa/glapi/Makefile src/mesa/glapi/dispatch.h src/mesa/glapi/glapioffsets.h src/mesa/glapi/glapitable.h src/mesa/glapi/glapitemp.h src/mesa/glapi/glprocs.h src/mesa/main/dlist.c src/mesa/main/enums.c src/mesa/sparc/glapi_sparc.S src/mesa/x86-64/glapi_x86-64.S src/mesa/x86/glapi_x86.S
2009-06-18mesa: fix first provoking vertex mode for unfilled tri stripsBrian Paul
2009-06-17mesa driconf: Add macro to specify an option with a quoted default value.Thomas Hellstrom
The default values true and false will expand to "1" and "0" when gcc -std=c99, causing bool option defaults to generate runtime failures. One solution is to specify bool option defaults quoted as "true" and "false". Add a macro to assist this. Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
2009-06-17i965: Add decode for the G4X x,y offset in surface state.Eric Anholt
2009-06-17i965: Fix up texture layout for small things with wide pitches (tiled)Eric Anholt
We were packing according to the pitch, while the hardware appears to base it on the base level width. With this and the previous commit, fbo-cubemap now matches untiled behavior.
2009-06-17i965: Fall back or appropriately adjust offsets of drawing to tiled regions.Eric Anholt
3D rendering to tiled textures was being done with non-tile-aligned offsets. The G4X hardware has fields to let us support it easily and correctly, while the pre-G4X hardware requires a path full of suffering, so we just fall back.
2009-06-18r300: use vbo_split_prims to split up large vertex buffers.Dave Airlie
This lets ut2004 avoid hitting the elt warning.
2009-06-17i965: Fix tiling for FBO depth attachments by making DEPTH_COMPONENT Y tiled.Eric Anholt
This may hurt if miptree relayout occurs, since we can't blit Y tiled objects. But it corrects depth tests on FBOs using textures.
2009-06-18radeon: don't re-add BOs to validate listDave Airlie
if its on the list its on the list don't go readding it. multitexturing from the same texture could cause this.
2009-06-17glsl: call _mesa_postprocess_program(), disabledBrian Paul
2009-06-17mesa: silence warningBrian Paul
2009-06-17mesa: added _mesa_postprocess_program() to aid shader debuggingBrian Paul
2009-06-17radeon: Flush command buffer on viewport changeJerome Glisse
We flush the command buffer so we don't emit mixed state (with new and previous buffer size) command buffer, this is especialy affecting zbuffer states.
2009-06-17r300: don't emit vap index offset on r5xx hw when using csJerome Glisse
vap index offset is programmed to 0 by the kernel, it would add work to kernel checker to allow userspace programming of this so it's now disallowed with CS on KMS.
2009-06-17GLX: attempt to fix glean makeCurrent test cases.Dave Airlie
Two parts to this: One we don't keep pointers to possibly freed memory anymore once we unbind the drawables from the context. Brian I need to figure out what the comment you made there, can we get a glean/piglit test so we can fix it properly? If the new gc is the same as the oldGC, we call the unbind even though we just bound it in that function. doh.
2009-06-17radeon: fix warnings in wrapper with libdrmDave Airlie
2009-06-16Merge branch 'mesa_7_5_branch'Brian Paul
Conflicts: src/mesa/main/api_validate.c
2009-06-16i965: fix bugs in projective texture coordinatesBrian Paul
For the TXP instruction we check if the texcoord is really a 4-component atttibute which requires the divide by W step. This check involved the projtex_mask field. However, the projtex_mask field was being miscalculated because of some confusion between vertex program outputs and fragment program inputs. 1. Rework the size_masks calculation so we correctly set bits corresponding to fragment program input attributes. 2. Rename projtex_mask to proj_attrib_mask since we're interested in more than just texcoords (generic varying vars too). 3. Simply the indexing of the size_masks and proj_attrib_mask fields. 4. The tracker::active[] array was mis-dimensioned. Use MAX_PROGRAM_TEMPS instead of a magic number. 5. Update comments, add new assertions. With these changes the Lightsmark demo/benchmark renders correctly, until we eventually hit a GPU lockup...
2009-06-16i965: handle OPCODE_SWZ in the glsl pathRoland Scheidegger
glsl compiler will not generate OPCODE_SWZ, and as a first step it would be translated away to a MOV anyway (why?), but later internally this opcode is generated (for EXT_texture_swizzling).
2009-06-16mesa: fix incorrect viewport clamping in _mesa_set_viewport()Brian Paul
A 0 by 0 viewport size is legal. Don't clamp against lower bound of one. The error checking earlier in the function prevents negative values.
2009-06-16mesa: fix REMAINDER() macroBrian Paul
The results were incorrect for some negative values of A. See bug 21872.
2009-06-15Merge branch 'arb_map_buffer_range'Brian Paul
Conflicts: docs/relnotes-7.6.html src/mesa/main/mtypes.h
2009-06-15intel: Release fb backing regions in intelDestroyBuffer()Shuang He
Fixes memory leak when destroying framebuffers.
2009-06-15mesa: Always return a value.José Fonseca
2009-06-15mesa: Use appropriate float/integer types.José Fonseca
2009-06-15mesa: Use type modifier for float constants.José Fonseca
2009-06-15mesa: Use integer type with appropriate sign.José Fonseca
2009-06-15mesa: revert some recent VBO buffer object refcounting changesBrian Paul
Reverts part of commit d7ea9ddf5824556e47decac7ba200f37cf1e552f. We were calling _mesa_reference_buffer_object() on some heap-allocated memory that was uninitialized and could trigger an assertion. We can actually go back to "looser" ref counting of the Null/default buffer object in these cases.
2009-06-15enable ARB_half_float_pixel for intel driversRoland Scheidegger