Mesa (lp-surface-tiling): llvmpipe: added tile read/write counters
Brian Paul
brianp at kemper.freedesktop.org
Wed Apr 7 23:06:21 UTC 2010
Module: Mesa
Branch: lp-surface-tiling
Commit: 4a50ccfd470547c9be0704005818a87014e9c0e9
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4a50ccfd470547c9be0704005818a87014e9c0e9
Author: Brian Paul <brianp at vmware.com>
Date: Wed Apr 7 16:51:27 2010 -0600
llvmpipe: added tile read/write counters
---
src/gallium/drivers/llvmpipe/lp_tile_soa.h | 3 +++
src/gallium/drivers/llvmpipe/lp_tile_soa.py | 4 ++++
2 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/src/gallium/drivers/llvmpipe/lp_tile_soa.h b/src/gallium/drivers/llvmpipe/lp_tile_soa.h
index 063fecd..9d6a88a 100644
--- a/src/gallium/drivers/llvmpipe/lp_tile_soa.h
+++ b/src/gallium/drivers/llvmpipe/lp_tile_soa.h
@@ -51,6 +51,9 @@ tile_offset[TILE_VECTOR_HEIGHT][TILE_VECTOR_WIDTH];
#define TILE_Y_STRIDE (TILE_VECTOR_HEIGHT * TILE_SIZE * NUM_CHANNELS) //1024
+extern int tile_write_count, tile_read_count;
+
+
/**
* Return offset of the given pixel (and color channel) from the start
* of a tile, in bytes.
diff --git a/src/gallium/drivers/llvmpipe/lp_tile_soa.py b/src/gallium/drivers/llvmpipe/lp_tile_soa.py
index c1226e4..65810b6 100644
--- a/src/gallium/drivers/llvmpipe/lp_tile_soa.py
+++ b/src/gallium/drivers/llvmpipe/lp_tile_soa.py
@@ -300,6 +300,7 @@ def generate_read(formats, dst_channel, dst_native_type, dst_suffix):
print 'lp_tile_read_%s(enum pipe_format format, %s *dst, const void *src, unsigned src_stride, unsigned x, unsigned y, unsigned w, unsigned h)' % (dst_suffix, dst_native_type)
print '{'
print ' void (*func)(%s *dst, const uint8_t *src, unsigned src_stride, unsigned x0, unsigned y0, unsigned w, unsigned h);' % dst_native_type
+ print ' tile_read_count += 1;'
print ' switch(format) {'
for format in formats:
if is_format_supported(format):
@@ -327,6 +328,7 @@ def generate_write(formats, src_channel, src_native_type, src_suffix):
print '{'
print ' void (*func)(const %s *src, uint8_t *dst, unsigned dst_stride, unsigned x0, unsigned y0, unsigned w, unsigned h);' % src_native_type
+ print ' tile_write_count += 1;'
print ' switch(format) {'
for format in formats:
if is_format_supported(format):
@@ -358,6 +360,8 @@ def main():
print '#include "util/u_half.h"'
print '#include "lp_tile_soa.h"'
print
+ print 'int tile_write_count=0, tile_read_count=0;'
+ print
print 'const unsigned char'
print 'tile_offset[TILE_VECTOR_HEIGHT][TILE_VECTOR_WIDTH] = {'
print ' { 0, 1, 4, 5},'
More information about the mesa-commit
mailing list