summaryrefslogtreecommitdiff
path: root/src/gallium/drivers
AgeCommit message (Collapse)Author
2010-05-05llvmpipe: update driver's provoking vertex codeBrian Paul
Note that the lp_setup_vbuf.c code is very, very similar to the corresponding code in softpipe. It could probably be shared.
2010-05-05gallium: rework provoking vertex codeBrian Paul
Builds on commit ddb0e18f6c5582d4d2cc59ffd16ad9c4639ed059 and fixes regressions in glean clipFlat test. We assume that Gallium drivers observe flatshade_first for all triangles and that all the assorted per-triangle calls in the 'draw' module also follow flatshade_first. Everything else builds on those rules. Gallium does not use follow flatshade_first for GL quads, quad strips and polygons; the "last" vertex is always the provoking vertex for those prims. So now there are separate QUAD_FIRST_PV and QUAD_LAST_PV macros in the draw primitive decomposition code instead of one QUAD macro.
2010-05-05llvmpipe: added a new assertion as a hint to CoverityBrian Paul
Looks like coverity found a false positive for an out of bounds array write.
2010-05-05nouveau: only advertise PIPE_FORMAT_DXT* if s3tc availableXavier Chantry
2010-05-04svga: Remove unnecessary header.Vinson Lee
2010-05-04llvmpipe: Remove unnecessary headers.Vinson Lee
2010-05-04r300g: Fix memory leak on error path.Vinson Lee
2010-05-04llvmpipe: predicate LLVMDumpModule() on DEBUG_JITBrian Paul
2010-05-04llvmpipe: fix broken compressed cube mapsBrian Paul
When the cube faces were stored in a compressed format, the img_stride values were wrong and didn't match the per-face size computed in the tex_image_face_size() function. This caused bad rendering or segfaults.
2010-05-04llvmpipe: do some null pointer checkingBrian Paul
2010-05-04llvmpipe: add some tests for malloc() returning NULL.Brian Paul
Start propogating NULL pointers from allocation functions and checks for NULL in the callers...
2010-05-04r300g: advertise S3TC only when it's available in GalliumMarek Olšák
2010-05-04gallivm: Proper implementation of TXL opcode.José Fonseca
2010-05-04gallivm: Implement TXD.José Fonseca
2010-05-03gallium: move surface utility functions into u_surface.cBrian Paul
This is a better place than in u_rect.c
2010-05-03gallium: move framebuffer utility functions into a new fileBrian Paul
2010-05-03r300g: use util_format_short_name and util_format_is_plainMarek Olšák
2010-05-03r300g: refuse to create a texture with size 0Marek Olšák
2010-05-03r300g: improve texture debug output, split into TEX and TEXALLOC flagsMarek Olšák
2010-05-03Reorder LLVM passes, running mem2reg earlier.Török Edwin
This gives a ~30% shader optimization time improvement on blender. Tested by comparing the dumped LLVM modules. Current ordering: time ~/llvm-git/obj/Release-Asserts/bin/opt l.bc -constprop -instcombine -mem2reg -gvn -simplifycfg real 0m1.126s user 0m1.108s sys 0m0.012s With this patch: time ~/llvm-git/obj/Release-Asserts/bin/opt l.bc -mem2reg -constprop -instcombine -gvn -simplifycfg real 0m0.885s user 0m0.880s sys 0m0.000s The overall improvement in blender is ~15%. Blender without the patch takes 1m13s: edwin 5934 87.6 11.5 729440 458296 pts/5 SLl+ 17:35 1:13 blender Blender with the patch takes 1m3s: edwin 5726 94.2 11.2 716424 446168 pts/5 SLl+ 17:32 1:03 blender It is still slow with the patch, but better (most of the optimization time is taken up by GVN, see LLVM PR7023). Signed-off-by: Török Edwin <edwintorok@gmail.com> Signed-off-by: José Fonseca <jfonseca@vmware.com>
2010-05-03svga: Silent warning.José Fonseca
2010-05-03gallium: Remove loop register file.José Fonseca
It was only used for D3D's REP/END/BGNFOR/ENDFOR. D3D's aL register is just like another address register now.
2010-05-03softpipe: invalidate cache view when swizzles are different.Dave Airlie
Current code only invalidated if the texture was different, however we store swizzled values in the cache, so we need to invalidate in that case also. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-05-03identity: Move sampler view create and destroy to id_objects.cJakob Bornecrantz
2010-05-03identity: s/texture/resource/Jakob Bornecrantz
2010-05-03identity: Whitespace & StyleJakob Bornecrantz
2010-05-03llvmpipe: add lp_test_* to .gitignoreXavier Chantry
Signed-off-by: Xavier Chantry <chantry.xavier@gmail.com> Signed-off-by: José Fonseca <jfonseca@vmware.com>
2010-05-03svga: Remove the screen private context.José Fonseca
All affected operations have already been moved to context. More cleanup work can be done, in particular with the buffer transfers.
2010-05-03svga: Remove empty file.José Fonseca
2010-05-03svga: Update flags documentation.José Fonseca
2010-05-03softpipe: Fix alpha blending for formats without alpha channel.José Fonseca
Don't use the dst alpha channel from the tile cache when it does not exist in the true format.
2010-05-03llvmpipe: Fix alpha blending for formats without alpha channel.José Fonseca
Don't use the dst alpha channel from the swizzled tile when it does not exist in the true format.
2010-05-02svga: Include svga_surface.h in svga_screen.c.Vinson Lee
Fixes svga_screen_init_surface_functions implicit declaration warning.
2010-05-02r300g: Remove unnecessary header.Vinson Lee
2010-05-02r300g: fix surface_copy for compressed formatsMarek Olšák
No accelerated blitting for these, it's too messy.
2010-05-02trace: Fix typo in method name.José Fonseca
2010-05-02r300g: always set the pitch of the first miplevel in the tiling flagsMarek Olšák
This further reduces the number of DRM calls and flushes.
2010-05-02Revert "r300g: disable point sprites (again)"Marek Olšák
This reverts commit 3e0f1719d411b34f77fd2a053ecf83b43bb836ca.
2010-05-02r300g: merge VS output mapping state (VAP) to rasterizer block state (RS)Marek Olšák
These two should be tied together because what's set in VAP or stuffed in GA should be rasterized in RS. Not doing so causes a hardlock. The reason for the merge is that if stuffed texture coordinates (e.g. point sprite texgen) happen to occupy the texcoord slot dedicated to fog or wpos, the two must be relocated to other free slots, which needs remapping the vertex shader outputs. The rasterizer code is now literally a sequence read-rasterize-write.
2010-05-02r300g: inline update_derived_shader_stateMarek Olšák
2010-05-02r300g: fix segfault when resizing a DRI2 framebufferMarek Olšák
Resetting tiling flags might happen after a texture is destroyed... Looking at the kernel sources, we don't actually need to reset the tiling flags.
2010-05-02i965g: s/sprintf/util_snprintf/Vinson Lee
2010-05-01llvmpipe: Remove unused variable.Vinson Lee
2010-04-30nv50: raise constant buffers size to maximumChristoph Bumiller
Removed the param heaps, haven't been using them for a long time now.
2010-04-30nv50: relax restriction on surface_copy format equality a bitChristoph Bumiller
2010-04-30nv50: don't segfault on OPCODE_END for empty programsChristoph Bumiller
2010-04-21svga: Fix index offsetJakob Bornecrantz
2010-04-20svga: Init surface functionsJakob Bornecrantz
2010-04-29softpipe & llvmpipe: Enable SM3 capJakob Bornecrantz
2010-04-29llvmpipe: fix texture/display target memory leakBrian Paul