summaryrefslogtreecommitdiff
path: root/src/gallium
AgeCommit message (Collapse)Author
2010-05-17gallium/util: adapt util code to interface changesRoland Scheidegger
The util blit functions change their interface (apart from some rename) too (in particular util_blit_pixels now also takes a pipe_resource as the src blit argument instead of a surface, as it might just call resource_copy_region). Maybe the blit util code might need a bit more cleanup, it still doesn't feel very clean. In particular it seems that util_blit_pixels_tex should probably disappear, and I think it would be great if the code called by drivers for blitting (u_blitter.c, which isn't really touched by this change) could somehow be merged with the u_blit code.
2010-05-17gallium: clean up resource_copy_region functionRoland Scheidegger
Previously, surface_copy was said to allow overlapping blits, and it was "optional". However, some state trackers actually assumed it is always present, and quite some code (like in u_blit) assumed overlapping isn't allowed. Hence, resource_copy_region (and in the same spirit, resource_fill_region) is now mandatory, but overlapping blits are no longer allowed. A driver can plug in the cpu fallback util_resource_copy_region if it does not want to provide its own implementation, though this is not optimal.
2010-05-17gallium: another interface change for multisamplingRoland Scheidegger
due to popular request, use nr_samples parameter in is_format_supported() instead of new is_msaa_supported() query. This makes it easily possible to query if a format with a given sample count is also supported not only as render target, but for sampler views (note that texture sampling from multisampled resources isn't supported yet). It is not quite how dx10 format msaa queries work, but we might need to revisit format queries completely in the future anyway.
2010-05-04Merge commit 'origin/master' into gallium-msaaRoland Scheidegger
2010-05-04gallivm: Proper implementation of TXL opcode.José Fonseca
2010-05-04gallivm: Fix several glitches introduced in the prev commit.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-04gallivm: Increase the TGSI translation limits and centralize them in a header.José Fonseca
2010-05-04gallicm: Newton-Raphson step to improve precision.José Fonseca
Disabled as it doesn't make VS/PSPrecision DCT happy, and it would unnecessarily slow some cases where it is not needed.
2010-05-03cso: use framebuffer utility functionsBrian Paul
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-03util: add util_format_short_nameMarek Olšák
2010-05-03util: add 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-03gallivm: Display message instead of crashing when sampler generator was not ↵José Fonseca
supplied for tgsi translation.
2010-05-03translate: Make translate_generic truly generic.José Fonseca
PIPE_FORMAT_R10G10B10X2_USCALED, half floats, were not supported, so just rely on u_format for (almost) universal format support.
2010-05-03draw: Remove draw_pt_fetch_prepare call from llvm middle end.José Fonseca
Unneeded since we code generate the vertex fecthes.
2010-05-03tgsi: Parse and dump predicates.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-03gallivm: Replace predicate assertion failure with warning message.José Fonseca
2010-05-03draw: Disable rtasm compilation when using LLVM.José Fonseca
Saves time and trouble.
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-02gallivm: fix nested break and continue statementsZack Rusin
we were resetting the mask on each new break/continue statement within the same scope. we always need to and the current execution mask with the current break/continue mask to get the correct result (the masks are always ~1 initially)
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-03gallium/util: print \n after DXTn printfLuca Barbieri
Re-add commit 2d65a7caf97684aa654088c76a74b632fbd685fa Signed-off-by: Xavier Chantry <chantry.xavier@gmail.com> Signed-off-by: José Fonseca <jfonseca@vmware.com>
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-02Update dri state tracker to use new API aware context createXavier Chantry
2010-05-02r300g: do not validate buffers in check_csMarek Olšák
It's already done in r300_emit_buffer_validate. This also fixes Total Annihilation 3D on debug builds at least.
2010-05-02r300g: fix surface_copy for compressed formatsMarek Olšák
No accelerated blitting for these, it's too messy.
2010-05-02retrace: Add sampler_view_destroyJosé Fonseca
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.