aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/util/u_half.h
Commit message (Collapse)AuthorAgeFilesLines
* util: Add copyright header to u_half.hJosé Fonseca2010-04-071-0/+27
|
* util: Remove the half typedef from p_compiler.h.José Fonseca2010-04-071-4/+4
| | | | Unnecessary, and doesn't even guarantee size.
* util: Make half float lookup tables constant.José Fonseca2010-04-061-5/+5
|
* gallium/util: pregenerate half float tablesLuca Barbieri2010-04-021-3/+0
| | | | | | | | 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.
* gallium/util: add util_format_init that inits s3tc and util_halfLuca Barbieri2010-04-021-1/+4
| | | | | | | | 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
* gallium/util: reindent u_half.c and u_half.h with Mesa coding styleLuca Barbieri2010-04-021-13/+11
| | | | Sorry, forgout about that.
* Revert "util: Init half-float tables on demand."Luca Barbieri2010-04-021-6/+1
| | | | This reverts commit 950300eb255f0e3507bf2757d16c3b5bc8ff3471.
* util: Init half-float tables on demand.Corbin Simpson2010-04-011-1/+6
| | | | Gets rid of unnecessary delays on startup and compiler-specific hax.
* gallium/util: rewrite global constructor system for half floats (GCC/MSVC only!)Luca Barbieri2010-04-011-5/+0
| | | | | | | | | | | | | | | | 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.
* util: Declare util_half_init_tables only once.José Fonseca2010-04-011-0/+14
|
* util: Use u_math.h's union fi instead of redefining it.José Fonseca2010-04-011-4/+5
|
* gallium/util: add fast half float conversion functionsLuca Barbieri2010-04-011-0/+55
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.