<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - Unify the format conversion code"
href="https://bugs.freedesktop.org/show_bug.cgi?id=84566#c10">Comment # 10</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - Unify the format conversion code"
href="https://bugs.freedesktop.org/show_bug.cgi?id=84566">bug 84566</a>
from <span class="vcard"><a class="email" href="mailto:itoral@igalia.com" title="Iago Toral <itoral@igalia.com>"> <span class="fn">Iago Toral</span></a>
</span></b>
<pre>(In reply to Iago Toral from <a href="show_bug.cgi?id=84566#c9">comment #9</a>)
<span class="quote">> Jason, piglit tests hit cases where they attempt to convert GL format and
> data type combinations that do not match any of the existing mesa formats.
>
> For example GL_RGB + GL_UNSIGNED_BYTE_2_3_3_REV (BBGG GRRR). The Only mesa
> format of this kind is MESA_FORMAT_B2G3R3_UNORM (RRRG GGBB).
>
> This means that we don't have pack and unpack functions for these types,
> which we need to use a master conversion function. I think the natural thing
> to do would be to add new mesa_format types for these, together with their
> format_pack.c and format_unpack.c functions (which should be auto-generated
> too). I suppose it is okay to add new mesa_format enums, right?</span >
BTW, as an added bonus, with this approach we will speed up conversion for some
of these types too. For example, the way Mesa currently handles
GL_UNSIGNED_BYTE_2_3_3_REV to GL_RGBA UBYTE involves two conversions (2_3_3_REV
-> RGBA FLOAT -> RGBA_UBYTE), while we would be able to do that in one go via
the auto-generated unpack function.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>