Mesa (master): vc4: Drop reloc_count tracking for debug asserts on non-debug builds.
Eric Anholt
anholt at kemper.freedesktop.org
Tue Jul 14 18:40:19 UTC 2015
Module: Mesa
Branch: master
Commit: 3df78928786134874eafa6f68186c8edbbdd3ae7
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3df78928786134874eafa6f68186c8edbbdd3ae7
Author: Eric Anholt <eric at anholt.net>
Date: Fri Jul 10 16:11:23 2015 -0700
vc4: Drop reloc_count tracking for debug asserts on non-debug builds.
Cuts another 88 bytes of compiled code.
---
src/gallium/drivers/vc4/vc4_cl.h | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/src/gallium/drivers/vc4/vc4_cl.h b/src/gallium/drivers/vc4/vc4_cl.h
index 95f1a53..bf4be0e 100644
--- a/src/gallium/drivers/vc4/vc4_cl.h
+++ b/src/gallium/drivers/vc4/vc4_cl.h
@@ -44,7 +44,9 @@ struct vc4_cl {
struct vc4_cl_out *next;
struct vc4_cl_out *reloc_next;
uint32_t size;
+#ifdef DEBUG
uint32_t reloc_count;
+#endif
};
void vc4_init_cl(struct vc4_context *vc4, struct vc4_cl *cl);
@@ -145,8 +147,10 @@ static inline void
cl_start_reloc(struct vc4_cl *cl, struct vc4_cl_out **out, uint32_t n)
{
assert(n == 1 || n == 2);
+#ifdef DEBUG
assert(cl->reloc_count == 0);
cl->reloc_count = n;
+#endif
cl_u8(out, VC4_PACKET_GEM_HANDLES);
cl->reloc_next = *out;
@@ -157,8 +161,10 @@ cl_start_reloc(struct vc4_cl *cl, struct vc4_cl_out **out, uint32_t n)
static inline struct vc4_cl_out *
cl_start_shader_reloc(struct vc4_cl *cl, uint32_t n)
{
+#ifdef DEBUG
assert(cl->reloc_count == 0);
cl->reloc_count = n;
+#endif
cl->reloc_next = cl->next;
/* Reserve the space where hindex will be written. */
@@ -174,7 +180,9 @@ cl_reloc(struct vc4_context *vc4, struct vc4_cl *cl, struct vc4_cl_out **cl_out,
*(uint32_t *)cl->reloc_next = vc4_gem_hindex(vc4, bo);
cl_advance(&cl->reloc_next, 4);
+#ifdef DEBUG
cl->reloc_count--;
+#endif
cl_u32(cl_out, offset);
}
@@ -187,7 +195,9 @@ cl_aligned_reloc(struct vc4_context *vc4, struct vc4_cl *cl,
*(uint32_t *)cl->reloc_next = vc4_gem_hindex(vc4, bo);
cl_advance(&cl->reloc_next, 4);
+#ifdef DEBUG
cl->reloc_count--;
+#endif
cl_aligned_u32(cl_out, offset);
}
More information about the mesa-commit
mailing list