summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/util/u_half.h
AgeCommit message (Collapse)Author
2010-04-07util: Add copyright header to u_half.hJosé Fonseca
2010-04-07util: Remove the half typedef from p_compiler.h.José Fonseca
Unnecessary, and doesn't even guarantee size.
2010-04-06util: Make half float lookup tables constant.José Fonseca
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-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: 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-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-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-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.