summaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
* mesa: more complete fix for transform_invarient glitchesKeith Whitwell2009-05-086-11/+153
| | | | | | Add a new flag mvp_with_dp4 in the context, and use that to switch both ffvertex.c and programopt.c vertex transformation code to either DP4 or MUL/MAD implementations.
* mesa/main: set PREFER_DP4 to match position_invarient codeKeith Whitwell2009-05-081-1/+1
| | | | | | | | This is a quick fix for z fighting in quake4 caused by the mismatch between vertex transformation here and in the position_invarient code. Full fix would be to make this driver-tunable and adjust both position_invarient and ffvertex_prog.c code to respect driver preferences.
* swrast: fix span clipping bugBrian Paul2009-05-072-22/+71
| | | | | If a horizontal span of pixels was located at x < 0 we could sometimes read/write outside of renderbuffer bounds.
* mesa: unmap buffer objects during context tear-downBrian Paul2009-05-071-0/+4
|
* st: create renderbuffer's pipe_surface in st_render_texture()Brian Paul2009-05-011-1/+11
| | | | | | Previously we created the pipe_surface during framebuffer validation. But if we did a glCopyTex[Sub]Image() before anything else we wouldn't yet have the surface. This fixes that.
* mesa: fix state validation bug for glCopyTex[Sub]Image()Brian Paul2009-05-011-5/+16
| | | | | We need to make sure the framebuffer state is up to date to make sure we read pixels from the right buffer when doing a texture image copy.
* mesa: remove -devel suffix from versionBrian Paul2009-05-011-1/+1
|
* r300: Increase reference count of texture objects referenced by current state.Michel Dänzer2009-04-304-9/+11
| | | | | | | Fixes a use-after-free reported in http://bugs.freedesktop.org/show_bug.cgi?id=20539, so this possibly fixes that bug. It has been confirmed to fix http://bugs.freedesktop.org/show_bug.cgi?id=17895 .
* Use variable library name in pkg-config output.Tom Fogal2009-04-292-2/+3
| | | | | | | | | | | Previously the pkg-config output files would contain e.g. `-lGL' and `-lGLU', even if the user modified their configuration to build libraries with different names. This modifies the pkg-config inputs, and corresponding makery, so that modifying the output library name will cause the appropriate updated name to appear in the pkg-config `-l' option. Signed-off-by: Dan Nicholson <[email protected]>
* mesa: added _mesa_check_soa_dependencies() functionBrian Paul2009-04-292-0/+53
| | | | | This function will check an instruction to see if there's data dependencies between the dst and src registers if executed in an SOA manner.
* mesa/st: protect internal flushes with FLUSH_CURRENTKeith Whitwell2009-04-281-1/+1
| | | | Already doing this for driver.flush()
* mesa/main: protect driver.finish with FLUSH_CURRENTKeith Whitwell2009-04-281-0/+1
| | | | Already doing this for driver.flush()
* mesa/st: remove duplicate offset calculationKeith Whitwell2009-04-282-18/+1
|
* mesa/st: translate VERT_ATTRIB_GENERIC8..15 in st_translate_vertex_programKeith Whitwell2009-04-281-0/+8
| | | | It seems quake4 can hit these attributes sometimes.
* mesa/st: workaround for crashes in st_copy_texsubimageKeith Whitwell2009-04-281-0/+10
| | | | Proper fix for this hasn't been identified, but avoid crashing.
* R300: add quadpipe overridesAlex Deucher2009-04-281-4/+13
| | | | | RV410 SE chips only have 1 quadpipe. Also, handle other R300 chip with quadpipe override
* i965: avoid segfault in intel_update_renderbuffers() if using DRI1Brian Paul2009-04-281-3/+4
|
* swrast: add missing break in clamp_rect_coord_linear()Brian Paul2009-04-281-0/+1
| | | | See bug 21461.
* st: Add an st_get_current() function.Thomas Hellstrom2009-04-282-0/+8
| | | | Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
* Avoid a segfault in shader compilationRobert Ellison2009-04-271-0/+6
| | | | | | | | | | If a shader reaches an out-of-memory condition while adding a new function (reallocating the function list), a segfault will occur during cleanup (because the num_functions field is non-zero, but the functions pointer is NULL). This fixes that segfault by zeroing out the num_functions field if reallocation fails.
* i965: only upload constant buffer data when we actually need the const bufferBrian Paul2009-04-276-17/+17
| | | | | | | Make the use_const_buffer field per-program and only call the code which updates the constant buffer's data if the flag is set. This should undo the perf regression from 20f3497e4b6756e330f7b3f54e8acaa1d6c92052
* mesa/st: fix incorrect face, level in compress_with_blitKeith Whitwell2009-04-271-2/+1
| | | | | | | We were incorrectly applying the destination texture face and level when requesting a transfer to the temporary texture, which has only one face and level. This would obviously cause problems uploading to compressed cube and mipmap textures.
* mesa: Call _mesa_snprintf instead of snprintf.José Fonseca2009-04-271-1/+1
| | | | snprintf not directly available on Windows.
* r300: always emit output insts after all KIL instsMaciej Cencora2009-04-272-3/+46
|
* intel: Fix more issues with the combined depth-stencil attachmentIan Romanick2009-04-241-6/+13
|
* intel: Initialize region ptr to prevent assertion in intel_region_referenceIan Romanick2009-04-241-1/+1
|
* intel / DRI2: When available, use DRI2GetBuffersWithFormatIan Romanick2009-04-242-16/+99
| | | | | | | | | | | This interface gives the driver two important features. First, it can allocate the (fake) front-buffer only when needed. Second, it can tell the buffer allocator the format of buffers being allocated. This enables support for back-buffer and depth-buffer with different bits per pixel. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kristian Høgsberg <[email protected]>
* mesa: fix up error/warning/debug output newlinesBrian Paul2009-04-242-10/+27
| | | | | | | | | | As of commit 23ad86cfb91c294ce85a3116d4b825aaa3988a6e all messages go through output_if_debug(). Add new parameter to output_if_debug() to indicate whether to emit a newline. _mesa_warning() and _mesa_error() calls should not end their strings with \n. _mesa_debug() calls should end their text with \n.
* i965: use drm_intel_gem_bo_map/unmap_gtt() when possible, otherwise ↵Brian Paul2009-04-241-5/+9
| | | | | | dri_bo_subdata() This wraps up the unfinished business from commit a9a363f8298e9d534e60e3d2869f8677138a1e7e
* i965: fix point size issueRoland Scheidegger2009-04-241-1/+1
| | | | | need to clamp point size to user set min/max values, even for constant point size. Fixes glean pointAtten test.
* mesa: more informative error messagesBrian Paul2009-04-231-6/+10
|
* i965: revert part of commit 4f4907d69f9020ce17aef21b6431d2dd65e01982Brian Paul2009-04-231-2/+2
| | | | | | | | | | | The drm_intel_gem_bo_map_gtt() call that replaced dri_bo_map() is producing errors like: intel_bufmgr_gem.c:689: Error preparing buffer map 39 (vp_const_buffer): Invalid argument . and returning NULL, causing a segfault in the memcpy(). Just reverting until we can get to the root issue...
* i915: fix fix for anisotropic filteringRoland Scheidegger2009-04-231-2/+7
| | | | forgot to commit the changes to actually support 4x aniso filtering...
* i965: Support drawing to FBO cube faces other than positive X.Eric Anholt2009-04-231-7/+11
| | | | Also fixes drawing to 3D texture depth levels.
* intel: Take advantage of GL_READ_ONLY_ARB to map to GEM bo_map write flag.Eric Anholt2009-04-232-5/+4
| | | | | This is a CPU win in general, but in particular reduces the pain of Mesa's calculation of min/max indices in DrawElements (wtf?).
* mesa: minor state-update changes in histogram codeBrian Paul2009-04-221-5/+2
| | | | | Call FLUSH_VERTICES() in _mesa_Histogram(). No need to signal _NEW_PIXEL in ResetHistogram(), ResetMinmax().
* mesa: fix comment typoBrian Paul2009-04-221-1/+1
|
* st: comments, license, copyrightBrian Paul2009-04-221-0/+32
|
* mesa: fix _mesa_dump_textures(), add null ptr checkBrian Paul2009-04-221-2/+3
| | | | Calling _mesa_dump_textures() deleted the textures... oops!!!
* mesa: Fix buffer overflow when parsing generic vertex attributes.Brian Paul2009-04-221-3/+9
|
* intel: fix max anisotropy supportedRoland Scheidegger2009-04-225-3/+7
| | | | | | i915 actually supports up to 4 (according to header file - not tested), i965 up to 16 (code already handled this but slightly broken), so don't use 2 for all chips, even though angular dependency is very high.
* st: also check _NEW_PROGRAM flag for vertex shader constant buffersBrian Paul2009-04-221-1/+1
| | | | | | This is a follow-on to commit c1a3b852807fb160f0cd246c1364b7336b4b947e. Note that (at this time) wherever _NEW_PROGRAM_CONSTANTS is set we're still setting _NEW_PROGRAM so this won't really make any difference (for now).
* gallium: Reinstate unconditional flushes.Thomas Hellstrom2009-04-222-0/+4
| | | | | | Lost in commit e50dd26ca6d0eb0d0f97c2780020ea16e3d4a687. Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
* mesa: protect driver.flush() with FLUSH_CURRENTKeith Whitwell2009-04-222-8/+8
| | | | | | Need to do this to ensure vbo code unmaps its buffers before calling the driver, which may be sitting on top of a memory manager which objects to firing commands from a mapped buffer.
* st: play it safe for now and check _NEW_PROGRAM for shader const buffer atomBrian Paul2009-04-211-1/+1
| | | | | When a new program is bound but no constants are updated we still need to update the Gallium const buffer.
* swrast: simplify state update logic for fragment shader const buffersBrian Paul2009-04-211-25/+2
|
* st: use the static atoms[] array directlyBrian Paul2009-04-212-20/+8
| | | | We can simplify this now that we no longer have any dynamic atoms.
* st: do away with dynamic state atom for const buffersBrian Paul2009-04-212-29/+4
| | | | Just use the new _NEW_PROGRAM_CONSTANTS flag instead.
* mesa: new _NEW_PROGRAM_CONSTANTS flagBrian Paul2009-04-215-10/+43
| | | | | | | | | | | | | | | This state flag will be used to indicate that vertex/fragment program constants have changed. _NEW_PROGRAM will be used to indicate changes to the vertex/fragment shader itself, or misc related state. _NEW_PROGRAM_CONSTANTS is also set whenever a program parameter that's tracking GL state has changed. For example, if the projection matrix is in the parameter list, calling glFrustum() will cause _NEW_PROGRAM_CONSTANTS to be set. This will let to remove the need for dynamic state atoms in some drivers. For now, we still set _NEW_PROGRAM in all the places we used to. We'll no longer set _NEW_PROGRAM in glUniform() after drivers/etc have been updated.
* mesa: print internal.current[i] attribBrian Paul2009-04-211-2/+7
|