Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | llvmpipe: Make lp_type a regular union. | José Fonseca | 2009-09-14 | 36 | -272/+270 |
| | | | | | Union not worth the hassle of violating C99 or adding a name to the structure. | ||||
* | llvmpipe: Compute derivatives. | José Fonseca | 2009-09-13 | 1 | -4/+87 |
| | |||||
* | llvmpipe: Remove dead references to pipe_winsys. | José Fonseca | 2009-09-13 | 1 | -4/+1 |
| | |||||
* | llvmpipe: Use const keyword for input array arguments. | José Fonseca | 2009-09-13 | 4 | -11/+12 |
| | |||||
* | llvmpipe: Delay storing into the dst register to prevent clobbering the src ↵ | José Fonseca | 2009-09-13 | 1 | -134/+103 |
| | | | | | | | registers. How I'm thankful for regular expressions -- just a couple of them were all that was needed to do this otherwise tiresome and bug prone change. | ||||
* | llvmpipe: Translate more TGSI opcodes. | José Fonseca | 2009-09-13 | 1 | -23/+116 |
| | | | | | Basically cover all low hanging fruit, and mark the still missing opcodes as "fixme" or deprecated. | ||||
* | llvmpipe: Add a few more common arithmetic functions. | José Fonseca | 2009-09-13 | 2 | -0/+111 |
| | | | | | We are relying on SSE4.1 for round/trunc/ceil/floor. We'll need to eventually find alternatives for the rest of the world. | ||||
* | llvmpipe: Rename function to free up lp_build_trunc to the usual arithmetic ↵ | José Fonseca | 2009-09-13 | 1 | -7/+7 |
| | | | | meaning. | ||||
* | llvmpipe: set dirty_render_cache in llvmpipe_clear() | José Fonseca | 2009-09-11 | 1 | -0/+1 |
| | | | | | | Based on Brian's softpipe change on commit 988db641195819c948249a1bb2d59f13577a482f. We don't use the tile cache for zsbuf though, only for color buffers. | ||||
* | llvmpipe: Update status in README and TODO/FIXME comments throughout the code. | José Fonseca | 2009-09-11 | 9 | -36/+36 |
| | |||||
* | llvmpipe: Fix alpha test. | José Fonseca | 2009-09-10 | 1 | -26/+13 |
| | |||||
* | llvmpipe: Mask out color channels not present in the color buffer. | José Fonseca | 2009-09-10 | 1 | -5/+23 |
| | |||||
* | llvmpipe: Fix sampling from depth textures. Respect texture compare func. | José Fonseca | 2009-09-10 | 2 | -49/+122 |
| | | | | Fixes Mesa shadowtex sample. | ||||
* | llvmpipe: Skip blending when mask is zero. | José Fonseca | 2009-09-10 | 2 | -13/+30 |
| | | | | This increases quake3 timedemo fps another 10%. | ||||
* | llvmpipe: Proper control flow builders. | José Fonseca | 2009-09-10 | 3 | -60/+426 |
| | | | | | | | | | | New control flow helper functions which keep track of all variables and generate the correct Phi functions. This re-enables skipping the fs execution of quads masked out by the rasterizer, early z testing, and kill opcode. This yields a performance improvement of around 20%. | ||||
* | llvmpipe: Copy the texture target into the sampler static state. | José Fonseca | 2009-09-10 | 1 | -0/+1 |
| | | | | Hunk forgotten in previous commit. | ||||
* | llvmpipe: Quick hack for 1D textures. | José Fonseca | 2009-09-09 | 2 | -0/+4 |
| | |||||
* | llvmpipe: Fix depth mask computation. | José Fonseca | 2009-09-09 | 1 | -4/+5 |
| | | | | Fixes depth test for 24bit depth formats. | ||||
* | llvmpipe: Include zsbuf's format in the fragment shader key. | José Fonseca | 2009-09-09 | 2 | -14/+17 |
| | |||||
* | llvmpipe: Debug function to check stack alignment. | José Fonseca | 2009-09-09 | 3 | -4/+28 |
| | | | | | Doing alignment check in locus is redundant, as gcc alignment assumptions will optimize away the check. | ||||
* | scons: Don't set LLVM_VERSION if one of the llvm-config calls fails. | Vinson Lee | 2009-09-07 | 1 | -1/+1 |
| | | | | | Ubuntu 8.10 has llvm-config version 2.2, which doesn't have nativecodegen. This triggers an exception. | ||||
* | llvmpipe: Silent debug statement. | José Fonseca | 2009-09-07 | 1 | -1/+1 |
| | |||||
* | llvmpipe: Better abs for floating points. | José Fonseca | 2009-09-07 | 1 | -6/+17 |
| | |||||
* | llvmpipe: Code generate the texture sampling inside the shader. | José Fonseca | 2009-09-07 | 11 | -6/+306 |
| | | | | | | | | | | Finally a substantial performance improvement: framerates of apps using texturing tripled, and furthermore, enabling/disabling texturing only affects around 15% of the framerate, which means the bottleneck is now somewhere else. Generated texture sampling code is not complete though -- we always sample from the base level -- so final figures will be different. | ||||
* | llvmpipe: Texture sampling code generation primitives. | José Fonseca | 2009-09-07 | 4 | -0/+478 |
| | | | | | Only supports single level 2d textures, with neareast and bilinear filtering for now. | ||||
* | llvmpipe: Convenience function to obtain the integer type with same bitdepth ↵ | José Fonseca | 2009-09-07 | 2 | -0/+15 |
| | | | | of an arbitrary type. | ||||
* | llvmpipe: Utility functions for linear and bilinear interpolation. | José Fonseca | 2009-09-07 | 2 | -0/+45 |
| | |||||
* | llvmpipe: Correct implementation of floor. | José Fonseca | 2009-09-07 | 2 | -0/+95 |
| | |||||
* | llvmpipe: Utility function to get the pointer to a structure member. | José Fonseca | 2009-09-07 | 2 | -4/+29 |
| | |||||
* | llvmpipe: SoA pixel unpacking specialization. | José Fonseca | 2009-09-07 | 6 | -39/+252 |
| | |||||
* | llvmpipe: Further abstract the texture sampling generation from TGSI ↵ | José Fonseca | 2009-09-07 | 5 | -125/+186 |
| | | | | translation. | ||||
* | tgsi: remove redundant CND0 opcode | Keith Whitwell | 2009-09-01 | 1 | -4/+0 |
| | | | | Can be implemented with CMP src2, src1, src0 | ||||
* | scons: Tool for LLVM. Gracefully disable llvmpipe if LLVM not found. | José Fonseca | 2009-09-01 | 1 | -3/+5 |
| | |||||
* | llvmpipe: Fallback to element-wise comparisons when no comparison intrinsic ↵ | José Fonseca | 2009-08-31 | 1 | -2/+45 |
| | | | | | | | | | | | | is available. Although selection of vector elements is valid LLVM IR, no machine target supports it yet. This is a last-resort option, but it allows llvmpipe to be used on any target supported by LLVM without modifications. Obviously better performance is attainable by emitting SIMD intrinsics where otherwise LLVM doesn't. | ||||
* | llvmpipe: In the abcense of a min/max intrinsic, use the comparison intrinsics. | José Fonseca | 2009-08-31 | 3 | -11/+7 |
| | |||||
* | llvmpipe: Actually commit lp_buffer.[ch]. | José Fonseca | 2009-08-31 | 2 | -0/+205 |
| | | | | Thanks Michel. | ||||
* | llvmpipe: Texture cache in 4 ubytes instead of 4 floats. | José Fonseca | 2009-08-30 | 3 | -19/+19 |
| | | | | | | | | | This is more a short term experiment than a long term commitment, as we'll need to support higher precision textures too, as this will all be be replaced by runtime generated code. With this change most Mesa demos fps increased around 10%. Not a huge improvement, but not a negligible one either. | ||||
* | llvmpipe: Use util_format_read_4f to read texture tiles. | José Fonseca | 2009-08-30 | 1 | -6/+17 |
| | |||||
* | llvmpipe: Texture cache is read-only. No need to flush. | José Fonseca | 2009-08-30 | 3 | -48/+0 |
| | |||||
* | llvmpipe: Eliminate internal pipe_buffer_map/unmap usage. | José Fonseca | 2009-08-30 | 1 | -9/+3 |
| | |||||
* | llvmpipe: List lp_buffer.c in the Makefile. | José Fonseca | 2009-08-29 | 1 | -0/+1 |
| | |||||
* | llvmpipe: Define an winsys for LLVM. Drop pipe_winsys | José Fonseca | 2009-08-29 | 7 | -79/+196 |
| | | | | | | | | lp_winsys will eventually be unified with softpipe's eventually, but we are free to move quicker since we don't have the myriad of users yet. Will provide a pipe_winsys adaptor from Keith's softpipe-private-winsys soon. | ||||
* | llvmpipe: Update for changes in master. | José Fonseca | 2009-08-29 | 3 | -12/+10 |
| | |||||
* | llvmpipe: Isolate sampling from TGSI translation. | José Fonseca | 2009-08-29 | 5 | -94/+145 |
| | |||||
* | llvmpipe: Better structure dereference naming. | José Fonseca | 2009-08-29 | 2 | -6/+11 |
| | |||||
* | llvmpipe: Fix shader variant key construction. | José Fonseca | 2009-08-29 | 1 | -2/+2 |
| | | | | Fixes the blank screen on non-64bit mode. | ||||
* | llvmpipe: Fix build. | José Fonseca | 2009-08-29 | 2 | -2/+2 |
| | |||||
* | llvmpipe: Merge all pixel format related files. | José Fonseca | 2009-08-29 | 6 | -255/+153 |
| | |||||
* | llvmpipe: Factor out and optimize the input interpolation. | José Fonseca | 2009-08-29 | 7 | -169/+521 |
| | | | | | | | Special attention is given to the interpolation of side by side quads. Multiplications are made only for the first quad. Interpolation of inputs for posterior quads are done exclusively with additions, and perspective divide if necessary. | ||||
* | llvmpipe: Pre-declare fetch_texel. | José Fonseca | 2009-08-29 | 5 | -28/+66 |
| |