summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-10-30CELL: stencil bug fixesRobert Ellison
Two definitive bugs in stenciling were fixed. The first, reversed registers in the generated Select Bytes (selb) instruction, caused the stenciling INCR and DECR operations to fail dramatically, putting new values in where old values were supposed to be and vice versa. The second caused stencil tiles to not be read and written from main memory by the SPUs. A per-spu flag, spu.read_depth, was used to indicate whether the SPU should be reading depth tiles, and was set only when depth was enabled. A second flag, spu.read_stencil, was set when stenciling was enabled, but never referenced. As stenciling and depth are in the same tiles on the Cell, and there is no corresponding TAG_WRITE_TILE_STENCIL to complement TAG_WRITE_TILE_COLOR and TAG_WRITE_TILE_Z, I fixed this by eliminating the unused "spu.read_stencil", renaming "spu.read_depth" to "spu.read_depth_stencil", and setting it if either stenciling or depth is enabled. I also added an optimization to the fragment ops generation code, that avoids calculating stencil values and/or stencil writemask when the stencil operations are all KEEP.
2008-10-30cell: Added check for PIPE_FLUSH_RENDER_CACHE to cell_flush to fix black ↵Jonathan White
blocks during st_readpixels due to a flush wait not happening in order to allow any previous rendering to complete.
2008-10-29gallium: grow SPE instruction buffer as neededBrian Paul
2008-10-29gallium: no longer pass max_inst to ppc_init_func()Brian Paul
2008-10-29gallium: use execmem for PPC code, grow instruction buffer as neededBrian Paul
2008-10-29gallium: fix alignment parameter passed to u_mmAllocMem()Brian Paul
Was 32, now 5. The param is expressed as a power of two exponent. The net effect is that the alignment was a no-op on X86 but on PPC we always got the same memory address everytime rtasm_exec_malloc() was called.
2008-10-29gallium: prefix memory manager functions with u_ to differentiate from ↵Brian Paul
functions in mesa/main/mm.c
2008-10-29gallium: test for PIPE_OS_LINUX instead of __linux__Brian Paul
2008-10-29cell: add scalar param to emit_function_call() to indicate scalar function callsBrian Paul
Scalar calls only use the X component of the src regs and smear the result across the dest register's X/Y/Z/W.
2008-10-29cell: use simd utilities for pow, exp2, log2Brian Paul
2008-10-29gallium: added PPC support for SWZ, XPD, POWBrian Paul
That's the last of the ARB_v_p opcodes, except for ARL.
2008-10-29gallium: clean-upsBrian Paul
2008-10-29gallium: added ppc_vnmsubfp()Brian Paul
2008-10-28move glut.h includeBrian Paul
2008-10-28mesa: use APP_CC compiler in progs/vp/Brian Paul
2008-10-28mesa: convert log/exp tests to ARB_v_pBrian Paul
2008-10-28gallium: ppc: implement TGSI_OPCODE_LOG/EXPBrian Paul
2008-10-28gallium: remove old codeBrian Paul
2008-10-28gallium: ppc: don't replicate/smear immediate values, use vspltw instruction ↵Brian Paul
as with constants
2008-10-28mesa: don't continually redrawBrian Paul
2008-10-28cell: fix a number of fence issuesBrian Paul
Plus add assertions to check status, alignment, etc.
2008-10-28gallium: use some PPC vec registers to store TGSI tempsBrian Paul
This could be a lot better, but already makes for better code.
2008-10-28cell: don't include libmisc.hBrian Paul
Doesn't seem to be needed and fixes compilation with SDK 3.1 beta.
2008-10-27cell: fix some problems when displaying to a PIPE_FORMAT_B8G8R8A8_UNORM screenBrian Paul
2008-10-27cell: added -D_BSD_SOURCE flagBrian Paul
Needed to get MAP_ANONYMOUS in execmem.c and to define timezone type in glxgears.c Adding -std=c99 earlier caused this regression.
2008-10-27gallium: ppc: emit fewer 'li' instructions prior to vector loads/storesBrian Paul
2008-10-27gallium: ppc: use a src register cache to avoid redundant loadsBrian Paul
2008-10-27cell: Added support for untwiddling textures during glReadPixels. This ↵Jonathan White
allows glReadPixels to work correctly on cell now and makes conformance tests that use pixel compares useable.
2008-10-27disable OPENGL_BITAlan Hourihane
2008-10-27Merge commit 'origin/master' into gallium-0.2Alan Hourihane
2008-10-26intel: GL_FALSE on a BO if it won't be modified when mapping this BO. ↵Xiang, Haihao
(thanks Eric).
2008-10-24i965: don't emit state when dri_bufmgr_check_aperture_space fails.Xiang, Haihao
This ensures there is an unfilled batchbuffer used for emitting states again. Partial fix for #17964.
2008-10-24intel: fallback for intelEmitCopyBlit.Xiang, Haihao
Use _mesa_copy_rect instead of BLT operation if dri_bufmgr_check_aperture_space still fails after flushing batchbuffer. Partial fix for #17964.
2008-10-23mesa: version 43 of glext.hBrian Paul
2008-10-23mesa: version 21 of glxext.hBrian Paul
2008-10-23mesa: remove calls to _mesa_adjust_image_for_convolution(), use texImage fieldsBrian Paul
The texImage->Width/Height fields will have the post-convolution width/height.
2008-10-23mesa: updated status in cell.htmlBrian Paul
2008-10-23scons: ppc support.Michel Dänzer
2008-10-23scons: Don't hardcode any drivers for the xlib winsys, just pick suitable ones.Michel Dänzer
2008-10-23gallium: Fix typo, PPC_FEATURE_HAS_ALTIVEC not PPC_FEATURES_...Michel Dänzer
2008-10-22gallium: PPC: clamp y to [-128,128] for LITBrian Paul
2008-10-22gallium: remove ppc_vload_float(), rename ppc_vecmove() -> ppc_vmove().Brian Paul
2008-10-22gallium: new PPC built-in constants arrayBrian Paul
It's hard to form PPC vector immediates so load them from an array.
2008-10-22gallium: added ppc_vzero()Brian Paul
2008-10-22gallium: GALLIUM_NOPPC debug var to disable PPC codegenBrian Paul
2008-10-22gallium: PPC LIT instruction (not quite complete yet)Brian Paul
2008-10-22gallium: var renaming in tgsi_ppc.cBrian Paul
2008-10-22gallium: remove SSE remnants from tgsi_ppc.cBrian Paul
2008-10-22cell: turn on PPC assembly vertex transformBrian Paul
gears runs with it now (3x faster FPS than before).
2008-10-22cell: TGSI->PPC for RSQ, RCP and src register sign modesBrian Paul