gallium/util: revert util_format_init addition
Putting calls to util_format_init all over the codebase is infeasible. Instead, half float tables are pregenerated, and the s3tc library is loaded on demand. I believe this is a solution that combines performance, cleanliness, flexibility and portability.
This commit is contained in:
@@ -30,10 +30,8 @@
|
||||
#include <stdio.h>
|
||||
#include <float.h>
|
||||
|
||||
#include "util/u_half.h"
|
||||
#include "util/u_format.h"
|
||||
#include "util/u_format_tests.h"
|
||||
#include "util/u_format_s3tc.h"
|
||||
|
||||
|
||||
static boolean
|
||||
@@ -402,8 +400,6 @@ int main(int argc, char **argv)
|
||||
{
|
||||
boolean success;
|
||||
|
||||
util_format_init();
|
||||
|
||||
success = test_all();
|
||||
|
||||
return success ? 0 : 1;
|
||||
|
||||
@@ -117,11 +117,3 @@ util_format_write_4ub(enum pipe_format format, const uint8_t *src, unsigned src_
|
||||
|
||||
format_desc->pack_8unorm(dst_row, dst_stride, src_row, src_stride, w, h);
|
||||
}
|
||||
|
||||
boolean util_format_inited;
|
||||
|
||||
void
|
||||
util_format_do_init(void)
|
||||
{
|
||||
util_format_s3tc_init();
|
||||
}
|
||||
|
||||
@@ -552,8 +552,6 @@ util_format_write_4ub(enum pipe_format format,
|
||||
void *dst, unsigned dst_stride,
|
||||
unsigned x, unsigned y, unsigned w, unsigned h);
|
||||
|
||||
UTIL_INLINE_INIT(util_format);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} // extern "C" {
|
||||
#endif
|
||||
|
||||
@@ -71,8 +71,6 @@ nv50_create(struct pipe_screen *pscreen, void *priv)
|
||||
struct nv50_screen *screen = nv50_screen(pscreen);
|
||||
struct nv50_context *nv50;
|
||||
|
||||
util_format_init();
|
||||
|
||||
nv50 = CALLOC_STRUCT(nv50_context);
|
||||
if (!nv50)
|
||||
return NULL;
|
||||
|
||||
@@ -224,7 +224,7 @@ softpipe_create_screen(struct sw_winsys *winsys)
|
||||
screen->base.context_create = softpipe_create_context;
|
||||
screen->base.flush_frontbuffer = softpipe_flush_frontbuffer;
|
||||
|
||||
util_format_init();
|
||||
util_format_s3tc_init();
|
||||
|
||||
softpipe_init_screen_texture_funcs(&screen->base);
|
||||
softpipe_init_screen_buffer_funcs(&screen->base);
|
||||
|
||||
Reference in New Issue
Block a user