nv50/ir: Fold IMM into MAD
[mesa.git] / src / gallium / drivers / nouveau / nouveau_fence.h
index 785fc8d2a0af7e248fa7458244db9b20ad54f1be..3984a9a942d213c9a5986f151750e1072d2f5c46 100644 (file)
@@ -6,9 +6,10 @@
 #include "util/u_double_list.h"
 
 #define NOUVEAU_FENCE_STATE_AVAILABLE 0
-#define NOUVEAU_FENCE_STATE_EMITTED   1
-#define NOUVEAU_FENCE_STATE_FLUSHED   2
-#define NOUVEAU_FENCE_STATE_SIGNALLED 3
+#define NOUVEAU_FENCE_STATE_EMITTING  1
+#define NOUVEAU_FENCE_STATE_EMITTED   2
+#define NOUVEAU_FENCE_STATE_FLUSHED   3
+#define NOUVEAU_FENCE_STATE_SIGNALLED 4
 
 struct nouveau_fence_work {
    struct list_head list;
@@ -39,12 +40,13 @@ boolean nouveau_fence_signalled(struct nouveau_fence *);
 static INLINE void
 nouveau_fence_ref(struct nouveau_fence *fence, struct nouveau_fence **ref)
 {
+   if (fence)
+      ++fence->ref;
+
    if (*ref) {
       if (--(*ref)->ref == 0)
          nouveau_fence_del(*ref);
    }
-   if (fence)
-      ++fence->ref;
 
    *ref = fence;
 }