Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | gallium: Add SCons as alternative build system for Gallium. | José Fonseca | 2008-01-31 | 9 | -0/+875 |
| | |||||
* | I don't know why using uint64_t for "base" doesn't work. Ugh. | Ian Romanick | 2008-01-30 | 2 | -4/+5 |
| | |||||
* | Use SPUs for vertex shader processing | Ian Romanick | 2008-01-30 | 4 | -1/+132 |
| | |||||
* | Add driver_private field for drivers that hook shader_queue_flush. | Ian Romanick | 2008-01-30 | 1 | -0/+2 |
| | |||||
* | Numerous small fixed to PPU-SPU vertex shader protocol | Ian Romanick | 2008-01-30 | 2 | -12/+34 |
| | |||||
* | cell_array_info should not be 16-byte aligned | Ian Romanick | 2008-01-30 | 1 | -1/+1 |
| | | | | | Forcing cell_array_info to be 16-byte aligned makes it more difficult to stuff that state in batch commands. | ||||
* | Correctly read / write vertex header from / to main memory | Ian Romanick | 2008-01-30 | 1 | -8/+9 |
| | |||||
* | Handle CELL_CMD_VS_EXECUTE *only* outside batch commands. | Ian Romanick | 2008-01-30 | 2 | -6/+5 |
| | |||||
* | Set machine->Processor | Ian Romanick | 2008-01-30 | 1 | -1/+2 |
| | | | | | The default value is 0, which is TGSI_PROCESSOR_FRAGMENT...not correct for a vertex shader! | ||||
* | Elts are always ints, pass vOut pointers in-line in command | Ian Romanick | 2008-01-30 | 2 | -15/+5 |
| | |||||
* | Implement micro_pow and micro_sqrt | Ian Romanick | 2008-01-30 | 1 | -12/+31 |
| | | | | Unimplemented micro ops get assertions for now. | ||||
* | Fix size calculation in attribute fetch. | Ian Romanick | 2008-01-30 | 1 | -4/+4 |
| | |||||
* | Fetch uniforms from main memory. | Ian Romanick | 2008-01-30 | 1 | -5/+16 |
| | |||||
* | Missing amperstand in previous commit. Oops. | Ian Romanick | 2008-01-30 | 1 | -1/+1 |
| | |||||
* | Pass ptr to local memory copy instead of main memory to exec_instruction | Ian Romanick | 2008-01-30 | 1 | -10/+12 |
| | | | | | | 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. | ||||
* | Provide mechanism to hook in custom vertex shader cache flush function | Ian Romanick | 2008-01-30 | 3 | -1/+8 |
| | |||||
* | Implement vertex fetch / vertex shader output write-back | Ian Romanick | 2008-01-30 | 3 | -41/+58 |
| | |||||
* | Initial pass at instruction / declaration fetch | Ian Romanick | 2008-01-30 | 2 | -0/+23 |
| | |||||
* | Initial pass at vertex shader on SPU using TGSI VM | Ian Romanick | 2008-01-30 | 9 | -1/+3540 |
| | | | | | | 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. | ||||
* | Cell: prototype SIMD code for z testing | Brian | 2008-01-30 | 2 | -34/+123 |
| | |||||
* | Cell: start to SIMD-ize triangle attribute interpolation | Brian | 2008-01-30 | 4 | -62/+79 |
| | | | | | Using the spu_add(), etc intrinsics. About a 15% speed-up with some tests. | ||||
* | Cell: fold setup_tri() into tri_draw() | Brian | 2008-01-30 | 1 | -43/+19 |
| | |||||
* | Cell: make 'setup' a regular var instead of passing around a pointer everywhere | Brian | 2008-01-30 | 1 | -210/+209 |
| | | | | | We'll never have more than one of these objects. Avoiding pointer deref improves performance a bit. | ||||
* | Cell: minor code refactoring, movement | Brian | 2008-01-30 | 1 | -30/+55 |
| | |||||
* | Cell: check tile status before wait_on_mask() | Brian | 2008-01-30 | 1 | -2/+2 |
| | |||||
* | Cell: make wait_on_mask() static/inlined | Brian | 2008-01-30 | 2 | -21/+21 |
| | |||||
* | Cell: move CELL_MAX_SPUS | Brian | 2008-01-30 | 2 | -3/+2 |
| | |||||
* | gallium: Teach draw_vf about draw vertices. | José Fonseca | 2008-01-30 | 3 | -174/+161 |
| | | | | | This reduces the emit overhead, which is significant since we're emiting one vertex at a time. | ||||
* | gallium: Remove draw_vertex_fetch::lookup. | José Fonseca | 2008-01-30 | 2 | -7/+0 |
| | | | | It is not being used, and would be dangerous to use given the possibility of constants. | ||||
* | gallium: Fix build on WinXP. | Michal Krol | 2008-01-30 | 6 | -19/+19 |
| | |||||
* | Cell: use _pack_rgba8() from pack_rgba8.h to do float[4]->uint color conversion | Brian | 2008-01-29 | 1 | -11/+4 |
| | | | | texcyl.c is twice as fast now in non-texture mode | ||||
* | gallium: weaken assert slightly | Keith Whitwell | 2008-01-29 | 1 | -1/+1 |
| | |||||
* | gallium: streamline various unfilled & stippled paths | Keith Whitwell | 2008-01-29 | 1 | -45/+113 |
| | |||||
* | gallium: don't rely on assert(0) for error handling - may be disabled | Keith Whitwell | 2008-01-29 | 1 | -0/+2 |
| | |||||
* | gallium: Emit point size as a constant. | José Fonseca | 2008-01-29 | 1 | -4/+81 |
| | |||||
* | gallium: Emit constants. | José Fonseca | 2008-01-29 | 4 | -16/+62 |
| | |||||
* | gallium: Allow draw_vf usage to be controlled at runtime. | José Fonseca | 2008-01-29 | 1 | -78/+71 |
| | |||||
* | gallium: Add extern keyword to global. | José Fonseca | 2008-01-29 | 1 | -1/+2 |
| | |||||
* | Cell: add OPT_FLAGS var | Brian | 2008-01-28 | 1 | -2/+4 |
| | |||||
* | Cell: move cmd_render() into new spu_render.c file | Brian | 2008-01-28 | 5 | -203/+283 |
| | |||||
* | Cell: add a few null texture tests | Brian | 2008-01-28 | 2 | -4/+12 |
| | |||||
* | Cell: compute min index referenced in draw command, use it to reduce size of ↵ | Brian | 2008-01-28 | 3 | -6/+29 |
| | | | | vertex data payload | ||||
* | Cell: minor optimization for flat shading | Brian | 2008-01-28 | 1 | -9/+28 |
| | |||||
* | Cell: basic texture mapping | Brian | 2008-01-28 | 10 | -28/+183 |
| | | | | | | 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. | ||||
* | Cell: initial texture cache/sampling code | Brian | 2008-01-28 | 2 | -0/+182 |
| | |||||
* | Cell: emit state in cell_clear_surface() if dirty. | Brian | 2008-01-28 | 1 | -0/+4 |
| | | | | | Without this a program that does nothing but glClear() doesn't work. We need the framebuffer state. | ||||
* | Cell: re-enable bounding boxes | Brian | 2008-01-28 | 3 | -12/+24 |
| | | | | | | | | 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. | ||||
* | gallium: Use GALLIUM_ prefix for env vars. | José Fonseca | 2008-01-29 | 1 | -1/+1 |
| | |||||
* | gallium: Use CALLOC for pb_buffer to ensure that all fields of pipe_buffer ↵ | José Fonseca | 2008-01-29 | 3 | -3/+4 |
| | | | | are initiallized. | ||||
* | gallium: Remove direct dependencies to mesa internals. | José Fonseca | 2008-01-29 | 4 | -64/+31 |
| | | | _mesa_exec_free is still being called. More invasive refactoring is necessary to clean it out. |