ok, looking of the oprofile output of libgl, r200_dri and qw-client-glx, I decided to hunt for the function

texsubimage2d_bgr888_to_rgba8888 which is at the top of the list at 22.6% of the time.

 

I have tracked down the function to a define, but from there I don't know where it comes from

from ./src/mesa/main/texutil.c

#define CONVERT_RGBA8888( name )     \
static GLboolean       \
convert_##name##_rgba8888( const struct convert_info *convert )  \

 

this function sets

   else if ( convert->format == GL_RGB &&    \
      convert->type == GL_UNSIGNED_BYTE )   \
   {         \
      tab = name##_tab_bgr888_to_rgba8888;    \
   }         \

 

and the end of the function does

return tab[index]( convert );

 

but I cannot find for the life of me where  the value/array/what ever tab gets set to is comming from, a grep for bgr888_to_rgba8888 only reveils

 

[EMAIL PROTECTED] ~/Mesa
$ grep -r bgr888_to_rgba8888 .
./src/mesa/main/texutil.c:#define TAG(x) x##_bgr888_to_rgba8888
./src/mesa/main/texutil.c:      tab = name##_tab_bgr888_to_rgba8888;    \

 

can anyone help in locating this function please so I can atleast try to find out if this function is slow per call or just called alot (as oprofile doesn't give you that information)

 

Thanks in advance

Chris Ison

Reply via email to