summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-11-03intel: Remove duplicated teximage miptree to object miptree promotion.Eric Anholt
intel_finalize_mipmap_tree() does this optimization too, just more aggressively.
2010-11-03intel: Avoid taking logbase2 of several things that we max.Eric Anholt
logbase2(max(width, height, depth)) == max(logbase2(width), logbase2(height), logbase2(depth)), but in 60 bytes less code.
2010-11-03i965: Remove dead intel_structs.h file.Eric Anholt
2010-11-03intel: Remove the magic unaligned memcpy code.Eric Anholt
In testing on Ironlake, the histogram of clocks/pixel results for the system memcpy and magic unaligned memcpy show no noticeable difference (and no statistically significant difference with the 5510 samples taken, though the stddev is large due to what looks like the cache effects from the different texture sizes used).
2010-11-03intel: Annotate debug printout checks with unlikely().Eric Anholt
This provides the optimizer with hints about code hotness, which we're quite certain about for debug printouts (or, rather, while we developers often hit the checks for debug printouts, we don't care about performance while doing so).
2010-11-03egl/gdi: fix typo: xsurf->gsurfBrian Paul
2010-11-03evergreeng: set hardware pixelcenters according to gl_rasterization_rulesKeith Whitwell
2010-11-03evergreeng: respect linewidth state, use integer widths onlyKeith Whitwell
Discard fractional bits from linewidth. This matches the nvidia closed drivers, my reading of the OpenGL SI and current llvmpipe behaviour. It looks a lot nicer & avoids ugliness where lines alternate between n and n+1 pixels in width along their length. Also fix up r600g to match.
2010-11-03r600g: don't call debug_get_bool_option for tiling more than onceKeith Whitwell
2010-11-03evergreeng: protect against null constant buffersKeith Whitwell
Should do better than this and actually unbind the buffer, but haven't yet gotten it to work.
2010-11-03st/egl: Use native_display_buffer for EGL_MESA_drm_image.Chia-I Wu
native_display_buffer is just a wrapper to resource_{from,get}_handle for drm backend.
2010-11-03st/egl: Add native_display_buffer interface.Chia-I Wu
The interface is a wrapper to pipe_screen::resource_from_handle and pipe_screen::resource_get_handle. A winsys handle is platform-dependent.
2010-11-03st/egl: Add extern "C" wrapper to native.h.Chia-I Wu
This allows a backend to be written in C++.
2010-11-03r600g: set hardware pixel centers according to gl_rasterization_rulesKeith Whitwell
These were previously being left in the default (D3D) mode. This mean that triangles were drawn slightly incorrectly, but also because this state is relied on by the u_blitter code, all blits were half a pixel off.
2010-11-03r600g: remove unused flink, domain fields from r600_resourceKeith Whitwell
These were being set but not used anywhere.
2010-11-03r600g: use a buffer in GTT as intermediate on texture up and downloadsKeith Whitwell
Generalize the existing tiled_buffer path in texture transfers for use in some non-tiled up and downloads. Use a staging buffer, which the winsys will restrict to GTT memory. GTT buffers have the major advantage when they are mapped, they are cachable, which is a very nice property for downloads, usually the CPU will want to do look at the data it downloaded.
2010-11-03r600g: propogate resource usage flags to winsys, use to choose bo domainsKeith Whitwell
This opens the question of what interface the winsys layer should really have for talking about these concepts. For now I'm using the existing gallium resource usage concept, but there is no reason not use terms closer to what the hardware understands - eg. the domains themselves.
2010-11-03r600g: propagate usage flags in texture transfersKeith Whitwell
2010-11-03st/egl: Add support for EGL_MATCH_NATIVE_PIXMAP.Chia-I Wu
Added for completeness. It makes sense to have such mechanism, but I am not aware of any user of that..
2010-11-03st/egl: Add support for swap interval and swap behavior.Chia-I Wu
The value of EGL_MAX_SWAP_INTERVAL and whether EGL_SWAP_BEHAVIOR_PRESERVED_BIT is set will depend on the native backend used.
2010-11-03st/egl: Remove flush_frontbuffer and swap_buffers.Chia-I Wu
They are deprecated by native_surface::present and there is no user of them.
2010-11-03d3d1x: Use native_surface::present.Chia-I Wu
Replace native_surface::flush_frontbuffer and native_surface::swap_buffers calls by native_surface::present calls.
2010-11-03st/egl: Use native_surface::present callback.Chia-I Wu
Replace native_surface::flush_frontbuffer and native_surface::swap_buffers calls by native_surface::present calls.
2010-11-03st/egl: Add native_surface::present callback.Chia-I Wu
The callback presents the given attachment to the native engine. It allows the swap behavior and interval to be controlled. It will replace native_surface::flush_frontbuffer and native_surface::swap_buffers shortly.
2010-11-03egl: Set up the pthread key even TLS is used.Chia-I Wu
We have to rely on the pthread key destructor to free the current thread info when a thread exits.
2010-11-02st/vega: Remove unnecessary headers.Vinson Lee
2010-11-02mesa: silence new warnings in texobj.cBrian Paul
Silences warning such as: main/texobj.c:442:40: warning: ISO C99 requires rest arguments to be used main/texobj.c:498:58: warning: ISO C99 requires rest arguments to be used
2010-11-02savage: Remove unnecessary header.Vinson Lee
2010-11-02intel: For batch, use GTT mapping instead of writing to a malloc and copying.Eric Anholt
No measurable performance difference on cairo-perf-trace, but simplifies the code and should have cache benefit in general.
2010-11-02mesa: Don't compute an unused texture completeness debug string.Eric Anholt
This showed up at about 1% on cairo-gl firefox-talos-gfx, where glClear() is called while a texture is incomplete.
2010-11-02st/mesa: Reset the index buffer before destroying the pipe context.Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: Destroy the winsys in r600_destroy_screen().Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: Fixed two memory leaks in winsys.Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: Delete custom_dsa_flush on shutdown.Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: We don't support PIPE_CAP_PRIMITIVE_RESTART.Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: Made radeon_bo::map_count signed.Tilman Sauerbeck
That way assert(map_count >= 0) can actually fail when we screwed up. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: Fixed unmap condition in radeon_bo_pb_destroy().Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: Made radeon_bo_pb_map_internal() actually call radeon_bo_map().Tilman Sauerbeck
This ensures that we increase bo->map_count when radeon_bo_map_internal() returns successfully, which in turn makes sure we don't decrement bo->map_count below zero later. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: Removed unused 'ptr' argument from radeon_bo().Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02graw: Tidy graw xlib scons file a bitJakob Bornecrantz
2010-11-02llvmpipe: add a castBrian Paul
2010-11-02llvmpipe: assign context's frag shader pointer before using itBrian Paul
The call to draw_bind_fragment_shader() was using the old fragment shader. This bug would have really only effected the draw module's use of the fragment shader in the wide point stage.
2010-11-02mesa: Fix C++ includes in sampler.cppChad Versace
Some C++ header files were included in an extern "C" block. When building with Clang, this caused the build to fail due to namespace errors. (GCC did not report any errors.) Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Brian Paul <brianp@vmware.com>
2010-11-02st/mesa: unbind constant buffer when not in useKeith Whitwell
Important as more constant buffers per shader start to get used. Fix up r600 (tested) and nv50 (untested) to cope with this. Drivers previously didn't see unbinds of constant buffers often or ever, so this isn't always dealt with cleanly. For r600 just return and keep the reference. Will try to do better in a followup change.
2010-11-02llvmpipe: guard against NULL task->query pointerKeith Whitwell
This doesn't seem like it should be possible, but some test suites manage to hit this case. Avoid crashing release builds under those circumstances.
2010-11-02llvmpipe: avoid generating tri_16 for tris which extend past tile boundsKeith Whitwell
Don't trim triangle bounding box to scissor/draw-region until after the logic for emitting tri_16. Don't generate tri_16 commands for triangles with untrimmed bounding boxes outside the current tile. This is important as the tri-16 itself can extend past tile bounds and we don't want to add code to it to check against tile bounds (slow) or restrict it to locations within a tile (pessimistic).
2010-11-02mesa: fix aux/accum comment and error message mixupsBrian Paul
2010-11-02mesa: remove always-false conditional in check_compatible()Brian Paul
The two gl_config pointers can never be equal.
2010-11-02dri/util: add a bunch of commentsBrian Paul
2010-11-02mesa: move the gl_config struct declarationBrian Paul
It was in the middle of the lighting-related structures before. Also add some info about field sizes in this structure.