summaryrefslogtreecommitdiff
path: root/src/gallium
AgeCommit message (Collapse)Author
2010-04-02llvmpipe: limit max texture size to 2Kx2K for nowBrian Paul
MAXWIDTH/HEIGHT were 2048 but the max texture size was 4096. This caused a crash if a 4Kx4K texture was created and rendered to. See comment about max framebuffer size in lp_scene.h. Also added assertions to catch this inconsistancy in the future.
2010-04-02gallivm: Add fallthrough comment at end of case statement.Vinson Lee
The code is correct. Tell Coverity that the fallthrough case is intentional.
2010-04-02gallium/util: print \n after DXTn printfLuca Barbieri
2010-04-02softpipe: remove S3TC init, since it's done on-demand nowLuca Barbieri
2010-04-01gallium/util: remove extraneous semicolonBrian Paul
2010-04-01gallium: remove old comment about return valuesBrian Paul
2010-04-02gallium/util: revert util_format_init additionLuca Barbieri
Putting calls to util_format_init all over the codebase is infeasible. Instead, half float tables are pregenerated, and the s3tc library is loaded on demand. I believe this is a solution that combines performance, cleanliness, flexibility and portability.
2010-04-02gallium/util: add util_format_is_supported to check for pack/unpackLuca Barbieri
This improves the code by making it more readable, and removes special knowledge of S3TC and other formats from softpipe.
2010-04-02gallium/util: load s3tc on demandLuca Barbieri
This changes the S3TC function pointers to be initialized to stubs that load the S3TC library and then delegate to the real functions. If the S3TC library fails to load, the function pointers are replaced with a "nop" function. The code is also changed to attempt to load the library only one time.c Note that unlike checking for a flag, this method has no performance cost at all. The use of the "nop" functions also allows to avoid most checks, that are only preserved when the function does non-trivial work.
2010-04-02gallium/util: pregenerate half float tablesLuca Barbieri
This solution avoids the issue of how to run the initializers and also allows those pages (and the parts of them in processor caches) to be shared between multiple processes. The drawback is slightly higher library size.
2010-04-02st/egl: Add a missing break.Chia-I Wu
The swtich in egl_g3d_st_framebuffer_validate misses a break.
2010-04-01gallium/util: s/inline/INLINE/Vinson Lee
Fixes MSVC build.
2010-04-02nv50: call util_format_initLuca Barbieri
Needed to fetch static vertex attributes.
2010-04-02gallium/util: add util_format_init that inits s3tc and util_halfLuca Barbieri
Switch from auto-init to explicit init for util_half per Brian Paul's indication. NOTE: this is probably broken because not enough things call util_format_init. Will be fixed shortly
2010-04-02gallium/util: add one-time initialization helperLuca Barbieri
2010-04-02gallium/util: use #pragma section instead of #pragma data_segLuca Barbieri
They apparently both declare the section, but #pragma data_seg also puts all subsequent definitions in the section, which is undesirable. This should be the correct solution, and is actually used by the reference I cited (but I forgot to do it in my code). Untested, let me know if it doesn't work.
2010-04-02gallium/util: reindent u_half.c and u_half.h with Mesa coding styleLuca Barbieri
Sorry, forgout about that.
2010-04-02Revert "util: Init half-float tables on demand."Luca Barbieri
This reverts commit 950300eb255f0e3507bf2757d16c3b5bc8ff3471.
2010-04-01util: Init half-float tables on demand.Corbin Simpson
Gets rid of unnecessary delays on startup and compiler-specific hax.
2010-04-01llvmpipe: Support sampling from PIPE_FORMAT_R32_FLOAT.José Fonseca
2010-04-01util: Declare .CRT$XCU data segment.Michal Krol
2010-04-01scons: Remove `util/u_gctors.cpp'.Michal Krol
2010-04-01gallium/util: rewrite global constructor system for half floats (GCC/MSVC only!)Luca Barbieri
NOTE: this commit will cause Gallium to fail to build on any compiler except GCC, the Microsoft C compiler and compatible compilers that claim to be one of those. This commit removes the u_gctors.cpp mechanism, in favor of using compiler-specific syntax to add global constructors from C files. This solves the problem of u_gctors.o not being pulled from static libraries and avoids using C++. However, it needs compiler-specific support for every compiler. The Microsoft C compiler support has not been tested.
2010-04-01llvmpipe: Support sampling from signed and mixed siged formats.José Fonseca
2010-04-01st/python: Allow to sample only in the [0,1] range.José Fonseca
2010-04-01st/python: Always use softpipe as reference driver.José Fonseca
2010-04-01gallium/util: add copyright header to u_half.cLuca Barbieri
2010-04-01llvmpipe: More tweaks to the supported texture formats.José Fonseca
2010-04-01util: Declare util_half_init_tables only once.José Fonseca
2010-04-01util: Use u_math.h's union fi instead of redefining it.José Fonseca
2010-04-01util: Add support for other DXTn RGBA formats.José Fonseca
2010-04-01util: Get DXT1_RGB format working correctly.José Fonseca
2010-04-01util: Add test case for PIPE_FORMAT_DXT1_RGB.José Fonseca
2010-04-01llvmpipe: Fix build...José Fonseca
2010-04-01util: Allow to have block format test casesJosé Fonseca
2010-04-01util: Generate correct format conversions for half floats.Michal Krol
2010-04-01util: Use u_half to perform half <--> float conversions.Michal Krol
2010-04-01gallium: Integrate util_half with scons.Michal Krol
2010-04-01gallium/util: add fast half float conversion functionsLuca Barbieri
This adds a fast half float conversion facility to Gallium. Mesa already contains such a facility, but using a much worse algorithm. This one is an implementation of www.fox-toolkit.org/ftp/fasthalffloatconversion.pdf and uses a branch-less algorithm with some lookup tables small enough to fit in the L1 cache. Ideally, Mesa should start using these functions too, but I'm not sure how to arrange that with the current build system. A new "u_gctors.cpp" is added that defines a global C++ constructor allowing to initialize to conversion lookup tables at library init.
2010-04-01util: Add half float test cases.José Fonseca
2010-04-01llvmpipe: Fix (un)swizzling, broken due to use of VOID channels.José Fonseca
2010-03-31r300g: Remove unnecessary header.Vinson Lee
2010-04-01util/format: fix big endian compilation by not trying to byteswap single bytesLuca Barbieri
Conceivably, we could also have a dummy util_bswap8, but it seems better to not emit it in the first place.
2010-03-31gallivm: convert floats to doublesZack Rusin
printf can't handle floats, convert them to doubles so that we can actually print floats.
2010-04-01r300g: add RGBA16F colorbuffer supportMarek Olšák
Disabled by default due to unresolved IP issues.
2010-04-01r300g: add RGTC texture supportMarek Olšák
The CS checker already knows about this.
2010-04-01r300g: format handling cleanupMarek Olšák
2010-03-31softpipe: Use S3TC when avaiilable,José Fonseca
2010-03-31util: Hook into libtxc_dxtn.so (WIP).José Fonseca
2010-03-31llvmpipe: Don't call unused generate_clamp().José Fonseca