History log of /external/mesa3d/src/gallium/auxiliary/util/u_format.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
34075d4133f83e6fec31a62ee4b1b3c565abda56 18-May-2012 James Benton <jbenton@vmware.com> util: Added util_format_is_array.

This function checks whether a format description is in a simple array format.

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
f0d1b5f41adf07a1aaeee93ef924b6624e12f9cb 06-Nov-2011 Dave Airlie <airlied@redhat.com> u_format: fix RGTC support in fits 8unorm.

Signed RGTC won't fit in a unorm, so don't allow them.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
866f9b18c68ede63c00917ec9c3dae3524ca8826 11-Sep-2011 Dave Airlie <airlied@redhat.com> gallium: rename ZS stencil type to UINT (v2)

these are never USCALED, always UINT in reality.

taken from some work by Christoph Bumiller

v2: fixup formatting of table + tabs

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
a441feb757b1be4845ba378f0207dcdc5cc1a407 19-Sep-2011 Dave Airlie <airlied@redhat.com> gallium: add initial pure integer support (v2)

This add support for unsigned/signed integer types via adding a 'pure' bit
in the format description table. It adds 4 new u_format get/put hooks,
for get/put uint and get/put sint so that accessors can get native access
to the integer bits. This is used to avoid precision loss via float converting
paths.

It doesn't add any float fetchers for these types at the moment, GL doesn't
require float fetching from these types and I expect we'll introduce a lot
of hidden bugs if we start allowing such conversions without an API mandating
it.

It adds all formats from EXT_texture_integer and EXT_texture_rg.

0 regressions on llvmpipe here with this.

(there is some more follow on code in my gallium-int-work branch, bringing
softpipe and mesa to a pretty integer clean state)

v2: fixup python generator to get signed->unsigned and unsigned->signed
fetches working.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
61285c6cfa9ce6086d62fa08bc9e3813f0b30d3d 08-Oct-2011 Dave Airlie <airlied@redhat.com> u_format: add inline helper to find first non void channel

This is used in a few places in drivers as well, also the integer support
can use it as well.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
f2a2ba9c6cdef99e1dc12209ac06d4e817368bfd 16-Aug-2010 José Fonseca <jfonseca@vmware.com> util: Handle conversion between depth stencil formats.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
ba6f1f2c29c148e33acc9d2b411c19c7c9a9d04f 15-Sep-2011 Brian Paul <brianp@vmware.com> util: add util_format_is_luminance/intensity/rgb(), etc

Reviewed-by: José Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
b5e39405831092d8cf7943318c92b750325eb31e 03-Aug-2011 Marek Olšák <maraeo@gmail.com> util: fix a typo in util_format_swizzle_4f

Reported by Gustaw Smolarczyk.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
be7407b75b12c70e1925c10117937ae2b9e6711f 02-Aug-2011 Marek Olšák <maraeo@gmail.com> gallium/util: add functions for manipulating swizzles

Some of those have been in drivers already.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
75fa5c99a86c1ae0f8a4fecc016a5f82da9ae80a 11-Apr-2011 Marek Olšák <maraeo@gmail.com> gallium: add and use generic function for querying patented format support (v2)

v2: Unsigned floats are allowed regardless of the configure switch.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
903a66abaf91d143a12d72348c0be463b73506e6 17-Sep-2010 José Fonseca <jfonseca@vmware.com> util: linearized sRGB values don't fit into 8bits

Fixes glean texture_srgb test.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
b8684b2458bc9bdcfd6b43dc7c2b8c2d485105fd 04-Sep-2010 José Fonseca <jfonseca@vmware.com> util: Helper function to determined whether two formats can be memcpy'ed.

These are the non-trivial conversions that this function recognizes,
which was produced by u_format_compatible_test.c:

b8g8r8a8_unorm -> b8g8r8x8_unorm
a8r8g8b8_unorm -> x8r8g8b8_unorm
b5g5r5a1_unorm -> b5g5r5x1_unorm
b4g4r4a4_unorm -> b4g4r4x4_unorm
l8_unorm -> r8_unorm
i8_unorm -> l8_unorm
i8_unorm -> a8_unorm
i8_unorm -> r8_unorm
l16_unorm -> r16_unorm
z24_unorm_s8_uscaled -> z24x8_unorm
s8_uscaled_z24_unorm -> x8z24_unorm
r8g8b8a8_unorm -> r8g8b8x8_unorm
a8b8g8r8_srgb -> x8b8g8r8_srgb
b8g8r8a8_srgb -> b8g8r8x8_srgb
a8r8g8b8_srgb -> x8r8g8b8_srgb
a8b8g8r8_unorm -> x8b8g8r8_unorm
r10g10b10a2_uscaled -> r10g10b10x2_uscaled
r10sg10sb10sa2u_norm -> r10g10b10x2_snorm

State trackers and pipe drivers should be updated to take advantage of
this knowledge, e.g., in surface_copy.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
9b69545c42ce2722c21419f04794914abc455889 02-Jul-2010 José Fonseca <jfonseca@vmware.com> util: Expose util_format_fits_8unorm().
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
ac7c8f7dd3649507f6a5dc4d5222124dd954cbfd 30-May-2010 Keith Whitwell <keithw@vmware.com> util: allocate larger tmp_row in util_format_translate

The tmp_row storage allocation took into account the format's y block
size by allocating y_step rows of data. However, the x block size was
not being taken into account when deciding how wide those rows need to
be.

Now make sure that tmp_row is at least x_step by y_step in size.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
f9a0d1e2346222848da6557b5c9bec3a475667ac 09-Apr-2010 José Fonseca <jfonseca@vmware.com> util: Add missing break statement.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
d3808b1b1f34dbb826b99102786d94e1baf9d667 09-Apr-2010 José Fonseca <jfonseca@vmware.com> util: Add dedicated depth-stencil packing/unpacking functions.

Depth-stencil manually written given that each one is very close to
be a special case.

u_format_zs.c's still untested.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
89ceb2f3c761d7287f5e2dca84d43dc16f400da0 08-Apr-2010 José Fonseca <jfonseca@vmware.com> util: (Almost) universal format translation function.

Untested.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
47e61426586bb9f9f40950e9c4372e4f12bb9ed6 03-Apr-2010 José Fonseca <jfonseca@vmware.com> util: Revert unsolicited, untested, unreviewed, and broken changes to format 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.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
2a090ae80a597f498f113fe58a772ddf3dca12e0 02-Apr-2010 Luca Barbieri <luca@luca-barbieri.com> gallium/util: revert util_format_init addition

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.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
c476305cdeb1ca9d755983e2058cb44f5b9109f0 02-Apr-2010 Luca Barbieri <luca@luca-barbieri.com> gallium/util: pregenerate half float tables

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.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
aee5bb5b8ad80d4aed849519a80b1d696991e866 02-Apr-2010 Luca Barbieri <luca@luca-barbieri.com> gallium/util: add util_format_init that inits s3tc and util_half

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
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
018aae950df449a18d7d69de54d51af587be94c6 31-Mar-2010 José Fonseca <jfonseca@vmware.com> util: Make the accessors bidimensional again.

Otherwise there's no way to unpack blocks with height >1
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
c5d4a44f449a8203a8b1da9b18806a718d80f131 31-Mar-2010 José Fonseca <jfonseca@vmware.com> util: Use u_format_pack.py's code instead of u_format_access.py.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
3c45c4bc44310c1af4f0c06d29eb0a9d39a38837 24-Feb-2010 José Fonseca <jfonseca@vmware.com> util: Cope with the fact that formats in u_format.csv are not ordered.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
ddbd2d08b7c5b5653981db8fec58d5c3244049cd 08-Dec-2009 Michal Krol <michal@vmware.com> util/format: Take advantage of sequential nature of pipe_format enum.

Make sure the format descriptor table can be indexed directly.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c
15422b2d99be074e1d6ac064b6f791245975da83 27-Jul-2009 José Fonseca <jfonseca@vmware.com> util: Pixel format database.

There are some inconsistencies in pipe_format, but above all, there
simply aren't enough bits in an enum to conveniently store all
information about a pixel format we need to be able to dynamically
generate pixel packing/unpacking code.
/external/mesa3d/src/gallium/auxiliary/util/u_format.c