From: Rob Clark <robcl...@freedesktop.org> It's no extra overhead to do a _self_link() and it eliminates a class of potential problems.
Signed-off-by: Rob Clark <robcl...@freedesktop.org> Dared-by: Jason Ekstrand <ja...@jlekstrand.net> --- src/compiler/glsl/list.h | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/compiler/glsl/list.h b/src/compiler/glsl/list.h index a1c4d82..77e1f67 100644 --- a/src/compiler/glsl/list.h +++ b/src/compiler/glsl/list.h @@ -165,19 +165,18 @@ exec_node_get_prev(struct exec_node *n) } static inline void -exec_node_remove(struct exec_node *n) +exec_node_self_link(struct exec_node *n) { - n->next->prev = n->prev; - n->prev->next = n->next; - n->next = NULL; - n->prev = NULL; + n->next = n; + n->prev = n; } static inline void -exec_node_self_link(struct exec_node *n) +exec_node_remove(struct exec_node *n) { - n->next = n; - n->prev = n; + n->next->prev = n->prev; + n->prev->next = n->next; + exec_node_self_link(n); } static inline void -- 2.5.5 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev