summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* r600g: reduce r600_reg footprintDave Airlie2011-05-133-788/+785
| | | | | | | | This drops 6k of the text segment, a minor drop in the ocean, however it also makes the code a lot cleaner and removes a lot of duplicated information, hopefully making it more maintainable. Signed-off-by: Dave Airlie <[email protected]>
* r600g: reduce memory usage from range/block hash table.Dave Airlie2011-05-134-28/+39
| | | | | | | | | | | | | | | | | | This table covered a large range unnecessarily, reduce the address range covered, use the fact that the bottom two bits aren't significant, and remove unused fields from the range struct. It also drops the hash_size/shift in context in favour of a define, which should make doing the math a bit less CPU intensive. valgrind glxinfo Before: ==320== in use at exit: 419,754 bytes in 706 blocks ==320== total heap usage: 3,691 allocs, 2,985 frees, 7,272,467 bytes allocated After: ==967== in use at exit: 419,754 bytes in 706 blocks ==967== total heap usage: 3,552 allocs, 2,846 frees, 3,550,131 bytes allocated Signed-off-by: Dave Airlie <[email protected]>
* r600g: delay mapping until first map request. (v2)Dave Airlie2011-05-132-6/+4
| | | | | | | | | | | | | | Currently r600g always maps every bo, this is quite pointless as it wastes VM and on 32-bit with wine running VM space is quite useful. So with this patch we don't create the mappings until first use, without tiling enabled this probably won't make a major difference on its own, but with tiled staged uploads it should avoid keeping maps for most of the textures unnecessarily. v2: add bo data ptr check Signed-off-by: Dave Airlie <[email protected]>
* egl/dri2: Avoid unused static functions.José Fonseca2011-05-121-1/+1
|
* egl/dri2: Prevent uninitialized variable dereference.José Fonseca2011-05-121-2/+5
|
* egl/dri2: Fix const pointer duplication, prevent unitialized variable ↵José Fonseca2011-05-121-5/+7
| | | | | | dereference. Based on zhigang gong <[email protected]>'s patch.
* egl: Fix int <-> ptr casts.José Fonseca2011-05-124-5/+5
| | | | Based on zhigang gong <[email protected]>'s patch.
* glu: Fix _GLUfuncptr typedef.zhigang gong2011-05-121-1/+1
| | | | | | | typedef void (GLAPIENTRYP _GLUfuncptr)(); causes the following warning: function declaration isn't a prototype. Signed-off-by: José Fonseca <[email protected]>
* mesa: Fix GetVertexAttrib* inside display lists.José Fonseca2011-05-121-3/+3
| | | | | | | | | GetVertexAttrib*{,ARB} is no longer aliased to the NV calls. This fixes tracing yofrankie with apitrace, given it requires accurate results from GetVertexAttribiv*. NOTE: This is a candidate for the stable branches.
* r300/compiler: Fix bug in rc_get_variables()Tom Stellard2011-05-111-7/+11
| | | | | | Variables that share readers were not always being linked together. https://bugs.freedesktop.org/show_bug.cgi?id=36939
* r300/compiler: Limit instructions to 3 source selectsTom Stellard2011-05-114-39/+104
| | | | | | | | | Some presubtract conversions were generating more than 3 source selects. https://bugs.freedesktop.org/show_bug.cgi?id=36527 Note: This is a candidate for the 7.10 branch.
* r300/compiler: Add simple unit test frameworkTom Stellard2011-05-117-0/+579
| | | | Plus three tests for rc_inst_can_use_presub()
* r600g: fix flushes on rs780/rs880Alex Deucher2011-05-111-1/+3
| | | | | | | | | They need the same hack as rv670. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=35312 Signed-off-by: Alex Deucher <[email protected]>
* mesa: Don't append fog code for programs that don't output color.José Fonseca2011-05-111-0/+6
| | | | | | | | | Fixes fdo 36919. NOTE: This is a candidate for the stable branches. It should be cherry-picked to the sames branches that 3aa21f93dc1329c6f956277f2746c2a0bdae5446 was.
* svga/drm: Implement svga_winsys_screen::get_hw_version.José Fonseca2011-05-101-0/+14
|
* st/wgl: Remove buggy assertion.José Fonseca2011-05-101-2/+0
| | | | | The assertion is wrong, now that state tracker can cope with a window with zero width or height.
* nv50: fix mistake in pipe caps for pre-NVA0 cardsMaxim Levitsky2011-05-101-0/+1
| | | | Introduced by 531b12af35a832bcd8928a4919d76f8e9405cde0.
* ir_to_mesa: Emit TXD instruction.Kenneth Graunke2011-05-091-2/+11
| | | | | | | Mesa already supports this because of NV_fragment_program. Signed-off-by: Kenneth Graunke <[email protected]> Tested-by: Marek Olšák <[email protected]>
* glsl: Add compiler support for ARB_shader_texture_lod.Kenneth Graunke2011-05-096-0/+188
| | | | | Signed-off-by: Kenneth Graunke <[email protected]> Tested-by: Marek Olšák <[email protected]>
* mesa: Add ARB_shader_texture_lod to the extension list; off by default.Kenneth Graunke2011-05-092-1/+2
| | | | Signed-off-by: Kenneth Graunke <[email protected]>
* nv50/nvc0: make transfers aware of PIPE_TRANSFER_MAP_DIRECTLYMarcin Slusarz2011-05-092-0/+6
| | | | | | | | | | If state tracker asked us to map resource directly and we can't do it (because of tiling), return NULL instead of doing full transfer - state tracker should handle it and fallback to some other method or repeat transfer without PIPE_TRANSFER_MAP_DIRECTLY. It greatly improves performance of xorg state tracker on nv50+, because its fallback (DFS/UTS) is much faster than full transfer.
* r300/compiler: align memory allocations to 8-bytesMatt Turner2011-05-091-1/+1
| | | | | | | | | Eliminates unaligned accesses on strict architectures. Spotted by Jay Estabrook. Signed-off-by: Matt Turner <[email protected]> NOTE: This is a candidate for the 7.10 branch.
* r300g: unreference a zbuffer surface after decompressionMarek Olšák2011-05-091-0/+2
|
* r300g: remove redundant state variable hyperz_lockedMarek Olšák2011-05-095-14/+12
|
* mesa: document instructions ir_to_mesa emitsMarek Olšák2011-05-091-14/+14
| | | | | | | | | | | | | | | | | | | GLSL stopped using: BRA, EXP, LOG, LRP, NRM3, NRM4, XPD. GLSL started using: KIL, SCS, SSG, SWZ. (omg why SWZ? isn't proc_src_register flexible enough?) GLSL doesn't use these opcodes some Radeons do support: ARR, DP2A, DST, LRP, XPD. These opcodes are now unused: AND, NOT, NRM3, NRM4, OR, XOR. (plus maybe the NV extensions which are unused by Gallium) In addition to that, we don't use two-dimensional indirect addressing, which the Mesa IR can do.
* r300c: Fix up for register allocator rewrite.Michel Dänzer2011-05-092-0/+2
| | | | | Was broken by commit fe622bac0c1b5b9f2a9fcf9f35b51232a06bea42 ('r300/compiler: Rewrite register allocator').
* r600g: anisotropic filtering support for evergreen hwJerome Glisse2011-05-095-23/+31
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: add support for anisotropic filteringCarl-Philip Haensch2011-05-092-3/+26
|
* gallium: Factor out unknown endianness detection.Michel Dänzer2011-05-091-2/+4
|
* Don't allow compilation if endianness isn't knownMatt Turner2011-05-091-1/+1
| | | | | | | | PIPE_ARCH_UNKNOWN_ENDIAN is used no where else. All #else branches of ifdef PIPE_ARCH_LITTLE assume big-endian. Not #error'ing out here only serves to allow bad things to happen. Signed-off-by: Matt Turner <[email protected]>
* p_config.h: Rely on glibc endianness definitions when availableMatt Turner2011-05-091-0/+12
| | | | | | Suggested by Julien Cristau. Signed-off-by: Matt Turner <[email protected]>
* st/xorg: add some debugging messages to xorg_exa.cMarcin Slusarz2011-05-091-1/+15
|
* st/xorg: remove DEBUG_PRINT macro and add exa_debug_printfMarcin Slusarz2011-05-091-30/+29
| | | | Localizes preprocessor usage to one place.
* st/xorg: fix compilation of xorg_exa.c with DEBUG_PRINT set to 1Marcin Slusarz2011-05-091-7/+5
|
* cell: fix unbalanced parenthesisNicolas Kaiser2011-05-081-1/+1
| | | | | Signed-off-by: Nicolas Kaiser <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* mesa: add precision to M_PI constantMatt Turner2011-05-061-1/+1
| | | | | | | | Value found in my math.h header. Reviewed-by: Alex Deucher <[email protected]> Signed-off-by: Matt Turner <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* mesa: replace ONE_DIV_LN2 constant with M_LOG2EMatt Turner2011-05-062-5/+1
| | | | | | | | | | | | | 1/ln(2) is equivalent to log2(e), so define it as such. log2(e) = ln(e)/ln(2) = 1/ln(2) Worst of all, the definitions for M_LOG2E and ONE_DIV_LN2 (right beside each other!) weren't the same. Reviewed-by: Alex Deucher <[email protected]> Signed-off-by: Matt Turner <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* r300/compiler: implement TXD and TXL opcodesMarek Olšák2011-05-075-0/+52
|
* r300g: handle seamless_cube_map capsMarek Olšák2011-05-071-0/+2
|
* egl/wayland: Follow wl_resource_destroy changesBenjamin Franzke2011-05-061-1/+1
|
* nv50,nvc0: activate seamless cube map filteringChristoph Bumiller2011-05-063-1/+44
|
* docs: update relnotes-7.11Marek Olšák2011-05-061-0/+5
|
* docs: update GL3 statusMarek Olšák2011-05-061-1/+1
|
* r600g: implement seamless_cube_map for evergreenMarek Olšák2011-05-063-0/+15
| | | | The r600/r700 support will follow soon.
* gallium: implement seamless cubemap extensionsMarek Olšák2011-05-065-0/+18
| | | | Reviewed-by: Brian Paul <[email protected]>
* mesa: handle TEXTURE_CUBE_MAP_SEAMLESS in SamplerParameterMarek Olšák2011-05-061-0/+37
| | | | Reviewed-by: Brian Paul <[email protected]>
* mesa: implement AMD_seamless_cubemap_per_textureMarek Olšák2011-05-065-0/+58
|
* r600g: avoid recursion in rv670 flush workaroundAlex Deucher2011-05-061-2/+7
| | | | | | | Should fix: https://bugs.freedesktop.org/show_bug.cgi?id=36914 Signed-off-by: Alex Deucher <[email protected]>
* gallium/xorg st/nv50: add PIPE_BIND_CURSORMarcin Slusarz2011-05-063-2/+12
| | | | | We need to distinguish surfaces for mouse cursors from scanouts, because nv50 hardware display engine ignores tiling flags.
* Add pci id for FirePro 2270Kostas Georgiou2011-05-064-0/+4
| | | | Signed-off-by: Kostas Georgiou <[email protected]>