From 1c0e5ba9f14ec297cbd5055ea402989b2cc71b8d Mon Sep 17 00:00:00 2001 From: Marek Olšák Date: Mon, 14 Jun 2010 01:20:14 +0200 Subject: r300g: drop begin_cs/end_cs I have had a look at the libdrm sources and they just contain more or less the same checking we do in macros, and begin_cs may realloc the CS buffer if we overflow it, which never happens with r300g. So these are pretty much useless. There is a small but measurable performance increase by dropping the two functions. --- src/gallium/drivers/r300/r300_cs.h | 4 ---- src/gallium/drivers/r300/r300_winsys.h | 13 ------------- 2 files changed, 17 deletions(-) (limited to 'src/gallium/drivers') diff --git a/src/gallium/drivers/r300/r300_cs.h b/src/gallium/drivers/r300/r300_cs.h index 0baa20f08d..030fad3772 100644 --- a/src/gallium/drivers/r300/r300_cs.h +++ b/src/gallium/drivers/r300/r300_cs.h @@ -52,15 +52,12 @@ #define BEGIN_CS(size) do { \ assert(r300_check_cs(cs_context_copy, (size))); \ - cs_winsys->begin_cs(cs_winsys, (size), \ - __FILE__, __FUNCTION__, __LINE__); \ CS_DEBUG(cs_count = size;) \ } while (0) #define END_CS do { \ CS_DEBUG(if (cs_count != 0) \ debug_printf("r300: Warning: cs_count off by %d\n", cs_count);) \ - cs_winsys->end_cs(cs_winsys, __FILE__, __FUNCTION__, __LINE__); \ CS_DEBUG(cs_count = 0;) \ } while (0) @@ -143,7 +140,6 @@ * Command buffer emission. */ -/* It's recommended not to call begin_cs/end_cs before/after this macro. */ #define WRITE_CS_TABLE(values, count) do { \ CS_DEBUG(assert(cs_count == 0);) \ cs_winsys->write_cs_table(cs_winsys, values, count); \ diff --git a/src/gallium/drivers/r300/r300_winsys.h b/src/gallium/drivers/r300/r300_winsys.h index 6ef1c996a2..2d43153b34 100644 --- a/src/gallium/drivers/r300/r300_winsys.h +++ b/src/gallium/drivers/r300/r300_winsys.h @@ -105,13 +105,6 @@ struct r300_winsys_screen { /* Return the number of free dwords in CS. */ unsigned (*get_cs_free_dwords)(struct r300_winsys_screen *winsys); - /* Start a command emit. */ - void (*begin_cs)(struct r300_winsys_screen* winsys, - int size, - const char* file, - const char* function, - int line); - /* Write a dword to the command buffer. */ void (*write_cs_dword)(struct r300_winsys_screen* winsys, uint32_t dword); @@ -126,12 +119,6 @@ struct r300_winsys_screen { enum r300_buffer_domain wd, uint32_t flags); - /* Finish a command emit. */ - void (*end_cs)(struct r300_winsys_screen* winsys, - const char* file, - const char* function, - int line); - /* Flush the CS. */ void (*flush_cs)(struct r300_winsys_screen* winsys); -- cgit v1.2.3