summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/cell
AgeCommit message (Collapse)Author
2008-01-30I don't know why using uint64_t for "base" doesn't work. Ugh.Ian Romanick
2008-01-30Use SPUs for vertex shader processingIan Romanick
2008-01-30Numerous small fixed to PPU-SPU vertex shader protocolIan Romanick
2008-01-30cell_array_info should not be 16-byte alignedIan Romanick
Forcing cell_array_info to be 16-byte aligned makes it more difficult to stuff that state in batch commands.
2008-01-30Correctly read / write vertex header from / to main memoryIan Romanick
2008-01-30Handle CELL_CMD_VS_EXECUTE *only* outside batch commands.Ian Romanick
2008-01-30Set machine->ProcessorIan Romanick
The default value is 0, which is TGSI_PROCESSOR_FRAGMENT...not correct for a vertex shader!
2008-01-30Elts are always ints, pass vOut pointers in-line in commandIan Romanick
2008-01-30Implement micro_pow and micro_sqrtIan Romanick
Unimplemented micro ops get assertions for now.
2008-01-30Fix size calculation in attribute fetch.Ian Romanick
2008-01-30Fetch uniforms from main memory.Ian Romanick
2008-01-30Missing amperstand in previous commit. Oops.Ian Romanick
2008-01-30Pass ptr to local memory copy instead of main memory to exec_instructionIan Romanick
This was essentially a cut-and-paste bug when the instruction fetcher was added. Also, the test for TGSI_PROCESSOR_FRAGMENT was moved outside the loop for exec_declaration.
2008-01-30Implement vertex fetch / vertex shader output write-backIan Romanick
2008-01-30Initial pass at instruction / declaration fetchIan Romanick
2008-01-30Initial pass at vertex shader on SPU using TGSI VMIan Romanick
All of the code is wired in on the SPU side, but it is not called from the PPU yet. Instruction / declaration fetch still needs to be implemented in spu_exec.c.
2008-01-30Cell: prototype SIMD code for z testingBrian
2008-01-30Cell: start to SIMD-ize triangle attribute interpolationBrian
Using the spu_add(), etc intrinsics. About a 15% speed-up with some tests.
2008-01-30Cell: fold setup_tri() into tri_draw()Brian
2008-01-30Cell: make 'setup' a regular var instead of passing around a pointer everywhereBrian
We'll never have more than one of these objects. Avoiding pointer deref improves performance a bit.
2008-01-30Cell: minor code refactoring, movementBrian
2008-01-30Cell: check tile status before wait_on_mask()Brian
2008-01-30Cell: make wait_on_mask() static/inlinedBrian
2008-01-30Cell: move CELL_MAX_SPUSBrian
2008-01-29Cell: use _pack_rgba8() from pack_rgba8.h to do float[4]->uint color conversionBrian
texcyl.c is twice as fast now in non-texture mode
2008-01-28Cell: move cmd_render() into new spu_render.c fileBrian
2008-01-28Cell: add a few null texture testsBrian
2008-01-28Cell: compute min index referenced in draw command, use it to reduce size of ↵Brian
vertex data payload
2008-01-28Cell: minor optimization for flat shadingBrian
2008-01-28Cell: basic texture mappingBrian
Texture images are tiled in PPU code. SPUs use a texture cache for getting texels from textures. This is very rough code, but demos/texcyl.c works.
2008-01-28Cell: initial texture cache/sampling codeBrian
2008-01-28Cell: emit state in cell_clear_surface() if dirty.Brian
Without this a program that does nothing but glClear() doesn't work. We need the framebuffer state.
2008-01-28Cell: re-enable bounding boxesBrian
The geometry bounding box is used to restrict rasterization to just those tiles that are relevant. Note another dummy field had to be added to the cell_command_render struct. Apparently, every 4th word in a struct is susceptible to corruption in some circumstances. Might be a compiler bug.
2008-01-28Cell: additional assertionsBrian
2008-01-28Cell: make sure state commands aren't split across batchesBrian
2008-01-28Cell: remove unneeded flush(), dead codeBrian
2008-01-28Cell: clean-up of render pathBrian
Finally removed a number of unneeded flush commands. Vertex buffers are allocated from the general buffer pool, freed by SPUs when done. Still an occasional failed assertion (invalid batch buffer command)...
2008-01-28Cell: checkpoint commit: always inline prim indexes into batch bufferBrian
Also, explicit release-vertex-buffer command. Lots of debug/stale code still in place...
2008-01-28Cell: If flushing for swapbuffers, wait for frame completionBrian
2008-01-28Cell: additional debug code, misc clean-upBrian
2008-01-28Cell: generalize the batch buffer code for vertex buffers...Brian
2008-01-26Cell: added support for inlined vertex buffers.Brian
Small prims are now self-contained in batch buffers when space allows.
2008-01-26Cell: added ROUNUP4Brian
2008-01-26Cell: added support for inlined indexesBrian
If there's room in the batch buffer after the rendering command to accomodate the indexes, put them there rather than in a separate buffer.
2008-01-26Cell: added cell_batch_free_space()Brian
2008-01-26Cell: remove some old tile codeBrian
2008-01-26Cell: fix a recursive flushing bugBrian
2008-01-26Cell: add check to catch recursive batch flushingBrian
2008-01-26Cell: move ASSERT macro into common.hBrian
2008-01-25Cell: updates to match pipe_buffer changesBrian