On our way to OpenGL 3.0, it would be nice to clean out some of the optional deprecated features that Mesa supports. The ARB_imaging subset is the highest on my list -- it significantly clutters up the pixel path, and has always been optional even though the specification text got rolled into OpenGL 1.2. ATI's proprietary driver never supported the imaging subset, and what I've read of NVIDIA's implementation online, its presence is a user trap. Keeping an implementation of it is not helping our users from a performance or portability perspective.
I've pushed a branch to my repo removing most of SGI_color_matrix, SGI_color_table, EXT_histogram, and EXT_convolution. Here's the diffstat: drivers/common/driverfuncs.c | 2 drivers/common/meta.c | 82 -- drivers/dri/i965/brw_state_upload.c | 1 drivers/dri/intel/intel_extensions.c | 2 drivers/dri/intel/intel_tex_image.c | 20 drivers/dri/radeon/radeon_texture.c | 16 drivers/dri/savage/savagetex.c | 3 drivers/dri/unichrome/via_tex.c | 22 main/attrib.c | 29 main/blend.c | 6 main/colortab.c | 204 ----- main/colortab.h | 7 main/context.c | 8 main/convolve.c | 1307 ---------------------------------- main/convolve.h | 70 - main/dd.h | 9 main/debug.c | 3 main/dlist.c | 2 main/enable.c | 89 -- main/extensions.c | 17 main/get.c | 76 - main/histogram.c | 971 ------------------------- main/histogram.h | 2 main/image.c | 141 --- main/image.h | 5 main/matrix.c | 6 main/mfeatures.h | 1 main/mtypes.h | 125 --- main/pixel.c | 170 ---- main/querymatrix.c | 4 main/texcompress_fxt1.c | 3 main/texcompress_s3tc.c | 5 main/teximage.c | 62 - main/texstore.c | 210 ----- program/prog_statevars.c | 29 program/prog_statevars.h | 3 state_tracker/st_atom_pixeltransfer.c | 130 --- state_tracker/st_cb_readpixels.c | 3 state_tracker/st_cb_texture.c | 6 state_tracker/st_extensions.c | 1 swrast/s_copypix.c | 107 -- swrast/s_drawpix.c | 92 -- swrast/s_readpix.c | 59 - 43 files changed, 96 insertions(+), 4014 deletions(-) That's 2.7% of mesa/main/, and driver size dropped correspondingly. Note that we don't get to completely drop histogram.c and convolve.c, as we're supposed to have the entrypoints and just emit INVALID_OPERATION for the missing extensions even if the ARB_imaging subset isn't present. If we don't have any strong justification for keeping this code, I'd like to merge this to master.
pgpJvdzyuOzOg.pgp
Description: PGP signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev