summaryrefslogtreecommitdiff
path: root/src/gallium/drivers
AgeCommit message (Collapse)Author
2009-08-29llvmpipe: use bitwise logic to setup quad masks in lp_setupKeith Whitwell
2009-08-29llvmpipe: simplify flush_spansKeith Whitwell
No loss of performance, but simpler code.
2009-08-29llvmpipe: make some small steps to flush texture cache less frequentlyKeith Whitwell
No performance gain yet, but the code is a bit cleaner.
2009-08-29llvmpipe: remove backwards dependency from tilecache to llvmpipeKeith Whitwell
The tile cache is a utility, it shouldn't know anything about the entity which is making use of it (ie llvmpipe). Remove llvmpipe parameter to all the tilecache function calls, and also remove the need to keep a llvmpipe pointer in the sampler structs.
2009-08-29llvmpipe: Rename preprocessor symbols too.José Fonseca
2009-08-29llvmpipe: Pixel packing/unpacking and loop code generators.José Fonseca
Just a small proof of concept plus a standalone test app. Not integrated with the rest of the driver yet.
2009-08-29llvmpipe: Fork softpipe for experimentation with llvm.José Fonseca
2009-08-28i915g: Add cursor case for scanout layoutJakob Bornecrantz
2009-08-28drm_api: Operate on textures instead of buffersJakob Bornecrantz
Most use cases just got the buffer from the texture and then called into one of the get_handle functions. Also with this patch it would be easier to move to a generic function for getting handles from textures and textures from handles, that is exposed via the screen.
2009-08-27r300g: Correct scissor setting, subtract 1 from window's width and heightCooper Yuan
2009-08-26nv04: Handle more Z formats.Younes Manton
Based on the patch from Luo Jinghua.
2009-08-24softpipe: use one fewer divide in sample_cubeKeith Whitwell
GCC won't do this for us. Makes a bigger difference to cubemap fps than previous set of compilcated rearrangements.
2009-08-24softpipe: separate out 2d and cube img filter functionsKeith Whitwell
2009-08-24softpipe: make the various get_texel routines more similarKeith Whitwell
Remove arguments, return const float * by default. Add specialized 3d versions and remove 3d texture support from the others.
2009-08-24r300g: Set the vector address in the input memory for ↵Cooper Yuan
bypass_vs_clip_and_viewport case
2009-08-23softpipe: lift tex_address construction up to img_filterKeith Whitwell
For fastpaths at least, can avoid recalculating this sometimes.
2009-08-23softpipe: remove old prim_setup draw stageKeith Whitwell
Everything now goes through the draw_vbuf handler, the same as regular drivers.
2009-08-23softpipe: add missing headerKeith Whitwell
2009-08-23Merge branch 'tex-tilecache' into softpipe-optKeith Whitwell
Conflicts: src/gallium/drivers/softpipe/sp_state_derived.c src/gallium/drivers/softpipe/sp_state_sampler.c src/gallium/drivers/softpipe/sp_tex_sample.c src/gallium/drivers/softpipe/sp_tex_sample.h src/gallium/drivers/softpipe/sp_tile_cache.c
2009-08-21softpipe: remove duplicate #include, move anotherBrian Paul
2009-08-21softpipe: remove tex sample dependencies on softpipeBrian Paul
The texture sampling code doesn't really have any dependencies on the rest of softpipe, just the tile cache.
2009-08-21softpipe: minor code refactoring to remove softpipe/tile cache dependenciesBrian Paul
The tile cache code now has no hard dependencies on softpipe.
2009-08-21softpipe: remove unused #includes, white-space clean-upBrian Paul
2009-08-21softpipe: remove unneeded const qualifierBrian Paul
2009-08-21softpipe: per-unit sampler varientsBrian Paul
Can't share sampler varients across multiple tex units because the texture pointer is in the sampler varient. That prevents different textures per unit. Fixes progs/demos/multiarb, progs/glsl/samplers, etc.
2009-08-21softpipe: add missing PIPE_TEXTURE_CUBE case in get_lambda_func()Brian Paul
Fixes progs/demos/cubemap
2009-08-21softpipe: add missing sp_sampler_varient_destroyKeith Whitwell
2009-08-21softpipe: remove redundant comparison, make test easier to understandBrian Paul
2009-08-21softpipe: fix min/mag filter typoBrian Paul
2009-08-21softpipe: fix s/t/p typosBrian Paul
2009-08-21softpipe: rework texture sampling codeKeith Whitwell
Split into component pieces, stitch together at runtime using function pointers. Make it possible to utilize the existing fastpaths as image-level filters for generic mip-filtering routines. Remove special case for rectangle filtering, as it can now be handled by the 2d path. As most of the mesa demo texturing was already covered by fast paths, its harder to find examples of speedups, but tunnel gets a boost as mip-nearest filtering is now able to access the img_2d_linear_wrap_POT functions for sampling within a mipmap level.
2009-08-20nv50: use VTX_ATTR_nF for constant vtxeltsChristoph Bumiller
2009-08-20nv50: set vertex buffer limitsChristoph Bumiller
2009-08-20nv50: modify vbo format to hw translation, add BGRA swizzleChristoph Bumiller
2009-08-20softpipe: allow the existing sampler routines to be hooked up directlyKeith Whitwell
Let eg. sp_get_samples_rect be hooked directly in as the tgsi sampler routine. Add a field to determine whether this is a vertex or fragment sampling call, and massage parameters to match the tgsi call.
2009-08-20softpipe: fix xpot calculation typo in sp_get_samples_2d_nearest_clamp_POTKeith Whitwell
2009-08-20softpipe: slightly optimized tiling calculationKeith Whitwell
2009-08-20softpipe: fix glitch in texel lookups on fastpathsKeith Whitwell
Fixes two issues - firstly for mipmap levels with one or more dimensions smaller than tilesize, the code was sampling off the edge of the texture (but still within the tile). Secondly, in the linear_mipmap_linear case, both the default code and new fastpath were incorrect. This change fixes the fastpath and adds a comment to the default path, which still needs to be fixed. Basically the issue is that the coordinates in the smaller texture level are/were being computed by just dividing thecoordinates from the larger texture level by two, as in: x0[j] /= 2; y0[j] /= 2; x1[j] /= 2; y1[j] /= 2; The issues with this are signficant. Initially x1 is most often equal to x0+1, but after this, it will likely be equal to x0, so we will not actually be performing the linear blend within the smaller mipmap. The fastpath code avoided this (recalculated x1), but was still using the weighting factors from the larger mipmap level (xw, yw), which were incorrect. Change the fastpath code to do two full, independent linear samples of the two mipmap levels before blending. The default code needs to do the same thing.
2009-08-20softpipe: optimized path for simple mipmap samplingKeith Whitwell
linear-mip-linear-repeat-POT sampling faspath, provides a very nice speedup to apps that do this common type of texturing. Test case: demos/terrain, turn fog off, turn texturing on. Without patch: 12 fps With patch: 20 fps.
2009-08-19gallium: rename copy/fill_rect utility functionsBrian Paul
2009-08-18r300g: Force off ZTOP optimizations for now.Corbin Simpson
2009-08-18r300g: Utilize DONTBLOCK.Corbin Simpson
Also ALGYRHYTHMS.
2009-08-18r300g: Massively cleanup OQ.Corbin Simpson
Still broken, but compiles cleaner, behaves better, etc.
2009-08-18r300g: Add high_second_pipe cap for R3xx chipsets.Corbin Simpson
This name is totally subject to change if ever I need to separate R3xx for some other reason.
2009-08-18Revert "r300-gallium, radeon-gallium: Nuke gb_pipes from orbit."Corbin Simpson
This reverts commit 6a40d1e9d96f8e8c57bc3bbd6f567cacd4471f59. Turns out that we *do* need these for OQ after all. Go figure. Conflicts: src/gallium/winsys/drm/radeon/core/radeon_r300.h
2009-08-18Merge branch 'mesa_7_5_branch'Brian Paul
2009-08-18softpipe: fix typo in clear_tileKeith Whitwell
2009-08-18softpipe: split texture and surface tile cachesKeith Whitwell
These do similar jobs but with largely disjoint code. Will want to evolve them separately going forward.
2009-08-18softpipe: move flatshade-first check out of loopKeith Whitwell
2009-08-17nv50: remove a few cases of directly casting struct pipe_contextMaarten Maathuis