Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | llvmpipe: fix wierd performance regression in isosurf | Keith Whitwell | 2010-09-12 | 1 | -6/+8 |
| | | | | | | | | | | | | I really don't understand the mechanism behind this, but it seems like the way data blocks for a scene are malloced, and in particular whether we treat them as stack or a queue, and whether we retain the most recently allocated or least recently allocated has a real affect (~5%) on isosurf framerates... This is probably specific to my distro or even just my machine, but none the less, it's nicer not to see the framerates go in the wrong direction. | ||||
* | llvmpipe: Only generate the whole shader specialization for opaque shaders. | José Fonseca | 2010-09-12 | 1 | -1/+7 |
| | | | | | If not opaque, then the color buffer will have to be read any way, therefore the specialization is pointless. | ||||
* | pb: add void * for flush ctx to mapping functions | Dave Airlie | 2010-09-12 | 1 | -1/+1 |
| | | | | | | | | | | If the buffer we are attempting to map is referenced by the unsubmitted command stream for this context, we need to flush the command stream, however to do that we need to be able to access the context at the lowest level map function, currently we set the buffer in the toplevel map, but this racy between context. (we probably have a lot more issues than that.) I'll look into a proper solution as suggested by jrfonseca when I get some time. | ||||
* | nv30: fix breakage due to 10 texcoord support on nv40 | Luca Barbieri | 2010-09-11 | 1 | -2/+2 |
| | |||||
* | r600g: Undo bo placement change. | Tilman Sauerbeck | 2010-09-11 | 1 | -1/+1 |
| | | | | | | | This reverts a part of e795ca8f3175fa6fd97b6b2ef2775e3f8803012a that causes artefacts and a performance drop. Signed-off-by: Tilman Sauerbeck <[email protected]> | ||||
* | llvmpipe: Silence some warnings. | José Fonseca | 2010-09-11 | 1 | -2/+2 |
| | |||||
* | llvmpipe: Don't store display the alpha ref value in the key. | José Fonseca | 2010-09-11 | 4 | -12/+13 |
| | | | | It's never used. | ||||
* | gallivm: s/lp_build_broadcast_aos/lp_build_swizzle_scalar_aos/ | José Fonseca | 2010-09-11 | 1 | -1/+1 |
| | | | | More accurate description of this function purpose. | ||||
* | llvmpipe: restore larger command blocks | Keith Whitwell | 2010-09-11 | 1 | -1/+1 |
| | |||||
* | llvmpipe: move some debug to DEBUG_SCENE | Keith Whitwell | 2010-09-11 | 1 | -2/+2 |
| | |||||
* | llvmpipe: add DEBUG_MEM option | Keith Whitwell | 2010-09-11 | 3 | -0/+14 |
| | |||||
* | llvmpipe: allow bigger scenes | Keith Whitwell | 2010-09-11 | 1 | -1/+1 |
| | |||||
* | r300/compiler: Enable presubtract sources | Tom Stellard | 2010-09-10 | 2 | -0/+2 |
| | | | | | | | The r300 compiler can now emit instructions that select from the presubtract source. A peephole optimization has been added to convert instructions like: ADD Temp[0].x, none.1, -Temp[1].x into the INV (1 - src0) presubtract operation. | ||||
* | r600g: Fixed a bo reference leak in the draw module. | Tilman Sauerbeck | 2010-09-10 | 1 | -0/+5 |
| | | | | Signed-off-by: Tilman Sauerbeck <[email protected]> | ||||
* | r600g: Fixed a bo leak in r600_texture_from_handle(). | Tilman Sauerbeck | 2010-09-10 | 1 | -5/+6 |
| | | | | | | We would leak bo if the argument check failed. Signed-off-by: Tilman Sauerbeck <[email protected]> | ||||
* | r600g: Don't leave stale references in query_list when we cannot create bo. | Tilman Sauerbeck | 2010-09-10 | 1 | -1/+3 |
| | | | | Signed-off-by: Tilman Sauerbeck <[email protected]> | ||||
* | r600g: Implemented the y component write for the LOG opcode. | Tilman Sauerbeck | 2010-09-10 | 1 | -5/+90 |
| | | | | | | This makes the 'vp1-LOG test' piglit test work. Signed-off-by: Tilman Sauerbeck <[email protected]> | ||||
* | r600g: fixup state calculations for picking states. | Dave Airlie | 2010-09-10 | 1 | -0/+1 |
| | | | | | for evergreen I ended up using a non-contig array of states, but this code needs a bit of fixing up to deal with that. | ||||
* | r600g: fixup CB state numbering header | Dave Airlie | 2010-09-10 | 3 | -95/+36 |
| | |||||
* | r600g: fix warning in r600 pipe driver | Dave Airlie | 2010-09-10 | 3 | -15/+14 |
| | |||||
* | r600g: evergreen CBs are more sane to support with a single state | Dave Airlie | 2010-09-10 | 1 | -1/+1 |
| | |||||
* | r600g: add initial evergreen support | Dave Airlie | 2010-09-10 | 20 | -40/+4548 |
| | | | | | | | | | | adds shader opcodes + assembler support (except ARL) uses constant buffers add interp instructions in fragment shader adds all evergreen hw states adds evergreen pm4 support. this runs gears for me on my evergreen | ||||
* | r600g: align flushing of cb/db with DDX/r600c. | Dave Airlie | 2010-09-10 | 3 | -0/+60 |
| | | | | | | | | | the DDX and r600c both flush cb/db after the draw is emitted, as long as they do that, r600g can't be different, as it races. We end up with r600g flush, set CB, DDX set CB, flush. This was causing misrendering on my evergreen, where sometimes the drawing would go to an old CB. | ||||
* | r600g: don't need 3 bos here. | Dave Airlie | 2010-09-10 | 1 | -6/+2 |
| | | | | the code should reloc correctly a single BO 3 times. | ||||
* | llvmpipe: remove redundant tgsi_dup_tokens() call | Brian Paul | 2010-09-09 | 1 | -3/+0 |
| | | | | We were calling this twice so the first allocation was orphaned/leaked. | ||||
* | r600g: add initial bank swizzle support. | Dave Airlie | 2010-09-08 | 4 | -4/+295 |
| | | | | | this is ported from r600c mostly, bank swizzling is real messy and I don't think I got enough sleep last night to fully understand it. | ||||
* | r600g: Added missing r600_bc_add_literal() calls to XPD implementation. | Tilman Sauerbeck | 2010-09-08 | 1 | -0/+8 |
| | | | | Signed-off-by: Dave Airlie <[email protected]> | ||||
* | r600g: Added preliminary support for the LOG opcode. | Tilman Sauerbeck | 2010-09-08 | 1 | -1/+121 |
| | | | | Signed-off-by: Dave Airlie <[email protected]> | ||||
* | r600g: Added missing abs-ification to RSQ. | Tilman Sauerbeck | 2010-09-08 | 1 | -1/+30 |
| | | | | | | This makes the 'fp1-RSQ test 2' piglit test work. Signed-off-by: Dave Airlie <[email protected]> | ||||
* | r600g: split opcodes out and add wrapper around usage. | Dave Airlie | 2010-09-08 | 4 | -208/+233 |
| | | | | | | This splits the r600 opcodes out of the sq file and adds a wrapper so we can convert to evergreen opcodes later without touching these functions too much. | ||||
* | r600g: add support for constants in memory buffers. | Dave Airlie | 2010-09-08 | 12 | -51/+143 |
| | | | | | | DX9 constants were in the constant file, and evergreen no longer support cfile. r600/700 can also use constants in memory buffers, so add the code (disabled for now) to enable that as precursor for evergreen. | ||||
* | r600g: abstract the hw states out behind a vtbl. | Dave Airlie | 2010-09-08 | 7 | -975/+1103 |
| | | | | | this is step one towards evergreen support, it lets us plug in whole new hw level states. | ||||
* | llvmpipe: Add lp_rast_debug.c to Makefile. | Chia-I Wu | 2010-09-07 | 1 | -0/+1 |
| | |||||
* | llvmpipe: Refactor lp_scene_add_resource_reference | José Fonseca | 2010-09-07 | 1 | -14/+15 |
| | | | | Less goto spaghetti. | ||||
* | llvmpipe: Fix negated logic in lp_scene_add_resource_reference(). | José Fonseca | 2010-09-07 | 1 | -1/+1 |
| | | | | Fixes performance regression. | ||||
* | llvmpipe: move more coef setup into lp_setup_coef.c | Keith Whitwell | 2010-09-07 | 4 | -40/+61 |
| | |||||
* | llvmpipe: declare fence handle struct | Keith Whitwell | 2010-09-07 | 1 | -0/+1 |
| | |||||
* | llvmpipe: rasterization debugging helpers | Keith Whitwell | 2010-09-07 | 7 | -0/+428 |
| | |||||
* | llvmpipe: use opcodes instead of function pointers in bins | Keith Whitwell | 2010-09-07 | 15 | -441/+513 |
| | | | | Also, move some state from rasterizer struct to the scene. | ||||
* | llvmpipe: rearrange queries | Keith Whitwell | 2010-09-07 | 4 | -116/+53 |
| | |||||
* | llvmpipe: enforce fixed memory limit on scenes | Keith Whitwell | 2010-09-07 | 11 | -341/+459 |
| | |||||
* | llvmpipe: clean up deferred zstencil clears | Keith Whitwell | 2010-09-07 | 6 | -79/+41 |
| | |||||
* | llvmpipe: rework fences and queries | Keith Whitwell | 2010-09-07 | 7 | -92/+124 |
| | |||||
* | llvmpipe: move whole-tile emit into a function | Keith Whitwell | 2010-09-07 | 2 | -8/+42 |
| | |||||
* | llvmpipe: put fs variant dumping in a function | Keith Whitwell | 2010-09-07 | 2 | -4/+15 |
| | |||||
* | nvfx: fix return in vp main | Luca Barbieri | 2010-09-06 | 1 | -17/+39 |
| | |||||
* | r600g: add error print for no literals for r700s as well | Dave Airlie | 2010-09-06 | 1 | -0/+3 |
| | |||||
* | r600g: fixup r700 assembler for clamp/relative addressing | Dave Airlie | 2010-09-06 | 1 | -13/+18 |
| | |||||
* | r600g: add script to generate header file with offsets into state objects. | Dave Airlie | 2010-09-06 | 2 | -412/+525 |
| | | | | | | | | This was inherently fragile as any changes to r600_states.h would also need manual updating of all of the bits in radeon.h. Just add a simple python script to do the conversion, its not hooked up to make at all. This also will make adding evergreen a bit easier. | ||||
* | r600g: fix up surface references | Dave Airlie | 2010-09-06 | 1 | -4/+2 |
| | | | | | We end up referencing the new surf and derefing the old surface which is a copy of the pointer to the new surf. So just bump the ref count directly. |