summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/util/u_format_pack.py
AgeCommit message (Collapse)Author
2010-03-31util: Make the accessors bidimensional again.José Fonseca
Otherwise there's no way to unpack blocks with height >1
2010-03-31util: First stab at half-float conversion.Michal Krol
2010-03-31util: Add callback to fetch a single pixel.José Fonseca
2010-03-31util: Use u_format_pack.py's code instead of u_format_access.py.José Fonseca
2010-03-31Merge branch 'gallium-new-formats'Roland Scheidegger
Conflicts: src/gallium/auxiliary/util/u_format.csv src/gallium/auxiliary/util/u_format_access.py src/gallium/auxiliary/util/u_format_pack.py
2010-03-31util: Put the format pack/unpack functions in the description table.José Fonseca
2010-03-31util: Make pack/unpack operate on spans.José Fonseca
2010-03-31util: Make util_format_xxx_pack_xxx take pointer as arguments.José Fonseca
2010-03-31util: Use VOID type for X channels in format descriptions.José Fonseca
2010-03-30gallium: make the python scripts for format parsing not fail on new formatsRoland Scheidegger
they won't generate any useful conversion code for some of the new formats but at least don't assert. Also needed some more hacks so they don't generate code for some of the new formats, as gcc was not impressed. Also declare unused channels as void, and change the scripts to not fail if the first channel happened to be unused. Needs serious fixing.
2010-03-09util: Use bitshift arithmetic for pack too.José Fonseca
2010-03-06util: Use bitshift arithmetic to unpack pixels.José Fonseca
All test cases pass now.
2010-03-06util: Several fixes to clamping and test.José Fonseca
All tests pass here except util_format_b5g5r5a1_unorm_unpack_4ub, due to apparently a gcc 4.4.3 bug.
2010-02-26util: Code generate functions to pack and unpack a single pixel.José Fonseca
Should work correctly for all pixel formats except SRGB formats. Generated code made much simpler by defining the pixel format as a C structure. For example this is the generated structure for PIPE_FORMAT_B6UG5SR5S_NORM: union util_format_b6ug5sr5s_norm { uint16_t value; struct { int r:5; int g:5; unsigned b:6; } chan; }; Not used everywhere yet because it seems compiled code is slower than bitshift arithmetic by some misterious reason. So we should generate bitshift arithmetic at least for the simple UNORM pixel formats.