summaryrefslogtreecommitdiffstats
path: root/src/mesa/pipe/softpipe
Commit message (Collapse)AuthorAgeFilesLines
* handle frag progs that write ZBrian2007-10-031-13/+10
|
* added s8z24_get_tile()Brian2007-10-031-0/+37
|
* Track fragment and vertex shader code generation via pipe shader state objects.Michel Dänzer2007-10-034-1/+30
| | | | | Unfortunately, the generated fragment shader code is effectively unusable until it handles quad->mask.
* In vertex shaders also expect the template to be stack allocatedZack Rusin2007-10-031-1/+5
| | | | structure so allocate a private copy of it.
* Make softpipe behave more like a real driver by always allocating somethingZack Rusin2007-10-034-14/+27
| | | | in the state functions.
* Implement/use fragment kill resultsBrian2007-10-021-1/+1
|
* Move tgsi machine state init/allocations so they're done less frequently.Brian2007-10-021-42/+39
| | | | | This, plus expanding all instructions ahead of time, seems to have improved the performance of program execution by 8x or so.
* fix a few vert/frag program items to get i915 driver going againBrian2007-10-011-2/+0
|
* Use texture->first_level, not 0, when not mipmapping.Brian2007-09-281-4/+2
| | | | | Fixes crash when GL_BASE_LEVEL!=0. Also, remove old assertion.
* Redoing the way we handle vertex shaders for the draw module.Zack Rusin2007-09-285-23/+58
|
* Revert "Redoing the way we handle vertex shaders for the draw module."Zack Rusin2007-09-285-58/+23
| | | | This reverts commit 6dcfddb8e2ec2bfb6187b912807fa65f28da2c5e.
* Redoing the way we handle vertex shaders for the draw module.Zack Rusin2007-09-285-23/+58
|
* reduced debugkeithw2007-09-271-2/+2
|
* Enable codegen based whenever __i386__ is defined.Keith Whitwell2007-09-271-8/+2
|
* restore primitive trimming in sp_draw_arrays.ckeithw2007-09-272-4/+7
|
* Make flushing more lazy in the draw module.Keith Whitwell2007-09-272-7/+12
|
* added a8r8g8b8_put_tile()Brian2007-09-261-0/+41
|
* s/_mesa_copy_rect/copy_rect/Brian2007-09-261-25/+26
|
* First attempt at building vertex buffers post-clip.Keith Whitwell2007-09-256-8/+444
| | | | | | | | | | | | | | Build a buffer of contigous vertices and indices at the backend of our software transformation/clipping path. This will become the mechanism for emitting buffers of vertices to rasterization hardware. This is similar to but not the same as the post-transform vertex cache. In particular, these vertices are subject to clipping, culling, poly offset, etc. The vertices emitted will all be used by hardware. TODOs include the actual transformation to hardware vertex formats, moving this out of softpipe to somewhere more useful and allowing >1 primitive to share the generated VB.
* Enable SSE2 for FS.michal2007-09-241-28/+31
|
* fix some post-transform vertex layout issues (bcolors, psize emitted lastBrian2007-09-211-16/+16
|
* Fix up some point size breakage. Start on fogcoord too.Brian2007-09-212-22/+44
|
* Get rid of TGSI_SEMANTIC_TEXCOORD and just use TGSI_SEMANTIC_GENERIC.Brian2007-09-211-6/+1
|
* Make the alpha test state a cso.Zack Rusin2007-09-216-11/+33
|
* Silence a few warnings.Zack Rusin2007-09-211-1/+1
|
* Clean-up the TGSI_SEMANTIC tokens, introduce semantic indexes.Brian2007-09-201-10/+14
| | | | Still need to produce decl instructions for vertex shaders...
* remove #includes of tgsi_attribs.hBrian2007-09-202-2/+0
|
* checkpoint: TGSI_ATTRIB_x tokens no longer usedBrian2007-09-202-17/+15
|
* Checkpoint: vertex attribute clean-up.Brian2007-09-203-9/+10
| | | | | Remove/disable the attrib/slot mapping arrays in a few places. Work in progress...
* Fix failover state binding and convert the sampler to use the newZack Rusin2007-09-202-18/+9
| | | | state constant state object semantics.
* Convert depth_stencil state to the new semantics.Zack Rusin2007-09-202-19/+11
|
* Switch fragment/vertex shaders to the new caching semantics.Zack Rusin2007-09-202-23/+15
| | | | | Allow driver custom allocation within cached objects. The shaders are currently twiced (by cso layer and by the program itself).
* Checkpoint: replacement of TGSI_ATTRIB_x tokens with input/output semantics.Brian2007-09-192-44/+56
| | | | | | | | TGSI_ATTRIB_x tokens still present and used in a few places. Expanded set of TGSI_SEMANTIC_x tokens for describing the meaning of inputs/outputs. These tokens are in a crude state ATM. Lots of #if 0 / disabled code to be removed yet, etc... Softpipe and i915 drivers should be in working condition but not heavily tested.
* Avoid redundant reallocation of the template.Zack Rusin2007-09-191-5/+4
| | | | | | cso already allocated the template for us. Returning 0 means we have no driver specific representation and just want the template on the bind.
* Convert the rasterizer cso to the new semantics.Zack Rusin2007-09-192-15/+11
| | | | | Basically make cso hold the driver specific struct, while managing the template.
* Redo the cso cache to map driver data in a lot more pleasing way.Zack Rusin2007-09-192-8/+8
| | | | | | Drivers can now create whatever they want from the state template. We use cso_state object to store the template (necessary during lookups), and the driver data. Convert blend state to the new semantics.
* Finish up conversions of shaders to immutable objects.Zack Rusin2007-09-191-4/+6
| | | | | Create/Delete calls should be split since in create we'll be compiling them so we want to know which one it is (vertex/fragment).
* Checkpoint: rework shader input/output register mapping.Brian2007-09-181-0/+8
| | | | | | | This is a step toward removing TGSI_ATTRIB_ tokens. Basically, when translating Mesa programs to TGSI programs, pass in input and output register re-maps, plus interpolation info. There's some known breakage (cubemap.c) so more to be done...
* Fix some issues with perspective-corrected interpolation.Brian2007-09-181-5/+4
| | | | | | | | | | In mesa_to_tgsi.c, use TGSI_INTERPOLATE_PERSPECTIVE by default (to match post-transform vertex info convention). More to be done there... In sp_quad_fs.c, interpolate W in addition to Z. This fixes the divide by zero happening in perspective_interpolation() tgsi_exec.c As it was, we were only getting perspective correction of texture coords used by the TGSI_TEX instruction since it does a homogeneous divide. Other coords/varyings were incorrect.
* additional comments for tri_persp_coeff()Brian2007-09-181-0/+4
|
* Convert shader to an immutable state object.Zack Rusin2007-09-186-19/+41
|
* Finishing up rename of the setup state to the rasterizer state.Zack Rusin2007-09-183-3/+3
|
* converting the setup state to immutable object and renaming it to rasterizer ↵Zack Rusin2007-09-188-32/+56
| | | | state
* Combing depth and stencil objects and making them immutable.Zack Rusin2007-09-189-63/+70
| | | | | Converting depth and stencil objects into a single state object (d3d10 like) and making it immutable.
* Fix the warning.Zack Rusin2007-09-181-1/+1
| | | | | | The const is there to enforce the immutable state of the object, which is in reality owned by the pipe so just cast away the constness.
* Make sampler an immutable state object.Zack Rusin2007-09-184-11/+36
| | | | Switch the sample to be an immutable state object.
* First stab at immutable state objects (create/bind/delete)Zack Rusin2007-09-187-19/+42
| | | | | | | We want our state objects to be immutable, handled via the create/bind/delete calls instead of struct propagation. Only implementing the blend state to see how it would look like and work.
* Remove non-meaningful region_idle() interfaceKeith Whitwell2007-09-171-7/+0
| | | | This is already handled by the semanics of map(), etc.
* Implement query object interface.Brian2007-09-113-13/+39
| | | | | | This replaces the temporary occlusion counter functions we had before. Added new ctx->Driver.WaitQuery() function which should block until the result is ready. Sketch out some code for vertex transformation feedback counters.
* vertex feedback functionsBrian2007-09-101-0/+72
|