formats: Use a hash table for _mesa_format_from_array_format
authorJason Ekstrand <jason.ekstrand@intel.com>
Mon, 12 Jan 2015 22:43:34 +0000 (14:43 -0800)
committerJason Ekstrand <jason.ekstrand@intel.com>
Thu, 22 Jan 2015 18:35:43 +0000 (10:35 -0800)
commite24d17e08cb19bbecadb22ed43b25eeec26cde27
treeca18a9a1129abe5f59169837d4ebc82e7cff7767
parent333226522cd9ae541147b52e20f577aa19c50426
formats: Use a hash table for _mesa_format_from_array_format

Going through the for loop every time has noticable overhead.  This fixes
things up so we only do that once ever and then just do a hash table lookup
which should be much cheaper.

v2 Jason Ekstrand <jason.ekstrand@intel.com>:
 - Use once_flag and call_once from c11/threads.h instead of pthreads

Reviewed-by: Neil Roberts <neil@linux.intel.com>
src/mesa/main/formats.c