diff options
author | Brian Paul <[email protected]> | 2012-03-17 16:30:03 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 2012-03-20 08:23:32 -0600 |
commit | 3f7509beffaf924a22227e70b499326393c5b885 (patch) | |
tree | 7f297d85a980d8ca60781c8b69e5551dfeb2c7d2 /src/mesa | |
parent | 0225a15b6907b51dbbc9602a1f0cb07ee809f496 (diff) |
mesa: make _mesa_reference_sampler_object() an inline function
To make the no-change case faster, as we do for the other object-reference
functions.
Reviewed-by: José Fonseca <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/main/samplerobj.c | 9 | ||||
-rw-r--r-- | src/mesa/main/samplerobj.h | 12 |
2 files changed, 15 insertions, 6 deletions
diff --git a/src/mesa/main/samplerobj.c b/src/mesa/main/samplerobj.c index 7cf0654ada2..5d1b2adbb08 100644 --- a/src/mesa/main/samplerobj.c +++ b/src/mesa/main/samplerobj.c @@ -55,12 +55,11 @@ _mesa_lookup_samplerobj(struct gl_context *ctx, GLuint name) * Handle reference counting. */ void -_mesa_reference_sampler_object(struct gl_context *ctx, - struct gl_sampler_object **ptr, - struct gl_sampler_object *samp) +_mesa_reference_sampler_object_(struct gl_context *ctx, + struct gl_sampler_object **ptr, + struct gl_sampler_object *samp) { - if (*ptr == samp) - return; + assert(*ptr != samp); /* The inline wrapper should prevent no-op calls */ if (*ptr) { /* Unreference the old sampler */ diff --git a/src/mesa/main/samplerobj.h b/src/mesa/main/samplerobj.h index fe7d5a7d3b6..c22d025dfdf 100644 --- a/src/mesa/main/samplerobj.h +++ b/src/mesa/main/samplerobj.h @@ -38,9 +38,19 @@ _mesa_get_samplerobj(struct gl_context *ctx, GLuint unit) } extern void +_mesa_reference_sampler_object_(struct gl_context *ctx, + struct gl_sampler_object **ptr, + struct gl_sampler_object *samp); + +static inline void _mesa_reference_sampler_object(struct gl_context *ctx, struct gl_sampler_object **ptr, - struct gl_sampler_object *samp); + struct gl_sampler_object *samp) +{ + if (*ptr != samp) + _mesa_reference_sampler_object_(ctx, ptr, samp); +} + extern void _mesa_init_sampler_object(struct gl_sampler_object *sampObj, GLuint name); |