Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-04-08 | util: util_dl_close(library) before exiting util_format_s3tc_init. | Vinson Lee | |
2010-04-07 | util: Support fixed formats conversion. | José Fonseca | |
2010-04-07 | util: Add copyright header to u_half.h | José Fonseca | |
2010-04-07 | util: Remove the half typedef from p_compiler.h. | José Fonseca | |
Unnecessary, and doesn't even guarantee size. | |||
2010-04-07 | util: Use stubs for the dynamically loaded S3TC functions. | José Fonseca | |
Loosely based on Luca Barbieri's commit 52e9b990a192a9329006d5f7dd2ac222effea5a5. | |||
2010-04-07 | util: Remove u_tile.c YCbCr's. | José Fonseca | |
Superseded by u_format_yuv.c. Also PIPE_FORMAT_YUYV's interpretation was inconsistent: it was being interpreted as VYUY. | |||
2010-04-07 | util: Implement YUV and subsampled RGB format conversion. | José Fonseca | |
2010-04-06 | util: Respect destination stride in pipe_get_tile_swizzle(). | Michal Krol | |
2010-04-06 | util: Make half float lookup tables constant. | José Fonseca | |
2010-04-06 | util: Remove the hand written SRGB format support code. | José Fonseca | |
2010-04-06 | util: Support all SRGB formats. | José Fonseca | |
Based on code from Brian Paul and Michal Krol. | |||
2010-04-05 | util: added util_dl_error() | Brian Paul | |
2010-04-04 | Merge branch '7.8' | Ian Romanick | |
2010-04-03 | util: Use GCC atomic bultins on GCC 4.1 and higher only. | Vinson Lee | |
2010-04-03 | util: Revert unsolicited, untested, unreviewed, and broken changes to format ↵ | José Fonseca | |
support. Not all is bad, but I'm afraid I'll have to throw the baby with the water given they are all tied to together. | |||
2010-04-02 | gallium/util: print \n after DXTn printf | Luca Barbieri | |
2010-04-01 | gallium/util: remove extraneous semicolon | Brian Paul | |
2010-04-02 | gallium/util: revert util_format_init addition | Luca 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-02 | gallium/util: add util_format_is_supported to check for pack/unpack | Luca Barbieri | |
This improves the code by making it more readable, and removes special knowledge of S3TC and other formats from softpipe. | |||
2010-04-02 | gallium/util: load s3tc on demand | Luca 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-02 | gallium/util: pregenerate half float tables | Luca 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-01 | gallium/util: s/inline/INLINE/ | Vinson Lee | |
Fixes MSVC build. | |||
2010-04-02 | gallium/util: add util_format_init that inits s3tc and util_half | Luca 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-02 | gallium/util: add one-time initialization helper | Luca Barbieri | |
2010-04-02 | gallium/util: use #pragma section instead of #pragma data_seg | Luca 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-02 | gallium/util: reindent u_half.c and u_half.h with Mesa coding style | Luca Barbieri | |
Sorry, forgout about that. | |||
2010-04-02 | Revert "util: Init half-float tables on demand." | Luca Barbieri | |
This reverts commit 950300eb255f0e3507bf2757d16c3b5bc8ff3471. | |||
2010-04-01 | util: Init half-float tables on demand. | Corbin Simpson | |
Gets rid of unnecessary delays on startup and compiler-specific hax. | |||
2010-04-01 | util: Declare .CRT$XCU data segment. | Michal Krol | |
2010-04-01 | gallium/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-01 | gallium/util: add copyright header to u_half.c | Luca Barbieri | |
2010-04-01 | util: Declare util_half_init_tables only once. | José Fonseca | |
2010-04-01 | util: Use u_math.h's union fi instead of redefining it. | José Fonseca | |
2010-04-01 | util: Add support for other DXTn RGBA formats. | José Fonseca | |
2010-04-01 | util: Get DXT1_RGB format working correctly. | José Fonseca | |
2010-04-01 | util: Add test case for PIPE_FORMAT_DXT1_RGB. | José Fonseca | |
2010-04-01 | util: Allow to have block format test cases | José Fonseca | |
2010-04-01 | util: Generate correct format conversions for half floats. | Michal Krol | |
2010-04-01 | util: Use u_half to perform half <--> float conversions. | Michal Krol | |
2010-04-01 | gallium/util: add fast half float conversion functions | Luca 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-01 | util: Add half float test cases. | José Fonseca | |
2010-04-01 | util/format: fix big endian compilation by not trying to byteswap single bytes | Luca Barbieri | |
Conceivably, we could also have a dummy util_bswap8, but it seems better to not emit it in the first place. | |||
2010-03-31 | util: Hook into libtxc_dxtn.so (WIP). | José Fonseca | |
2010-03-31 | util: Make the accessors bidimensional again. | José Fonseca | |
Otherwise there's no way to unpack blocks with height >1 | |||
2010-03-31 | util: First stab at half-float conversion. | Michal Krol | |
2010-03-31 | util: Describe PIPE_FORMAT_NONE as PIPE_FORMAT_R8_USCALED. | José Fonseca | |
Avoids the need to special case PIPE_FORMAT_NONE so often. Conflicts: src/gallium/auxiliary/util/u_format_table.py | |||
2010-03-31 | util: Silence pointer to integer size mismatch errors. | José Fonseca | |
2010-03-31 | util: Add callback to fetch a single pixel. | José Fonseca | |
2010-03-31 | util: Remove the hand written u_tile.c functions for the ones that are code ↵ | José Fonseca | |
generated correctly. Not that the code generated are any better, but to quickly detect any regression in the code generated ones from now on. | |||
2010-03-31 | util: Use u_format_pack.py's code instead of u_format_access.py. | José Fonseca | |