[Mesa-dev] [PATCH 0/5] GL_EXT_texture_shared_exponent

Marek Olšák maraeo at gmail.com
Tue Apr 26 03:57:56 PDT 2011


Hi,

this series implements GL_EXT_texture_shared_exponent.

The file rgb9e5.h has all its functions inline, because it's shared between classic and gallium. In that file, there are functions rgb9e5_to_float3 and float3_to_rgb9e5, which are used pretty much everywhere.

I usually do some hardware support and the driver of my choice was so far r300g. Because r500 hw can't do this extension, I am adding support to r600g instead.

There is swrast, softpipe, llvmpipe, and r600g support. There is no renderbuffer support, because r600 can't do it and the spec doesn't require it anyway. (I guess it wasn't meant to be used as a renderbuffer)

Please review.


Marek Olšák (5):
      mesa: set reasonable defaults in update_wrapper
      mesa: implement EXT_texture_shared_exponent
      st/mesa: support EXT_texture_shared_exponent
      util: implement R9G9B9E5 pack and unpack functions
      r600g: trivially implement EXT_texture_shared_exponent

 src/gallium/auxiliary/util/u_format_other.c |   87 +++++++++++++-
 src/gallium/drivers/r600/r600_texture.c     |    5 +
 src/mesa/main/extensions.c                  |    1 +
 src/mesa/main/fbobject.c                    |   11 ++
 src/mesa/main/formats.c                     |   16 +++-
 src/mesa/main/formats.h                     |    2 +
 src/mesa/main/image.c                       |   11 ++
 src/mesa/main/mipmap.c                      |   49 ++++++++
 src/mesa/main/pack.c                        |   82 ++++++++++++-
 src/mesa/main/rgb9e5.h                      |  173 +++++++++++++++++++++++++++
 src/mesa/main/texfetch.c                    |    8 ++
 src/mesa/main/texfetch_tmp.h                |   21 ++++
 src/mesa/main/texformat.c                   |   10 ++
 src/mesa/main/texparam.c                    |    8 +-
 src/mesa/main/texrender.c                   |    7 +-
 src/mesa/main/texstore.c                    |   57 +++++++++
 src/mesa/state_tracker/st_cb_drawpixels.c   |    4 +
 src/mesa/state_tracker/st_extensions.c      |    6 +
 src/mesa/state_tracker/st_format.c          |   13 ++
 19 files changed, 553 insertions(+), 18 deletions(-)
 create mode 100644 src/mesa/main/rgb9e5.h

Marek


More information about the mesa-dev mailing list