diff options
author | Eric Anholt <[email protected]> | 2017-01-05 15:23:32 -0800 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2017-01-05 17:19:54 -0800 |
commit | 3a3a0d2d6cf37ff9d6e7f8ec9a6a78b24a353e08 (patch) | |
tree | e30ac8fb9f89768d373ee388762e94c6e27eef6d /src/gallium/drivers/vc4/vc4_tiling.h | |
parent | 6cf9ff8a6ce1a74260238d7f1fc6ab86c7eaea58 (diff) |
vc4: Move the utile_width/height functions to header inlines.
I want these inlined in the callers, particularly with the tiling
changes coming up, but we're not building with lto so some caller
would suffer.
Diffstat (limited to 'src/gallium/drivers/vc4/vc4_tiling.h')
-rw-r--r-- | src/gallium/drivers/vc4/vc4_tiling.h | 38 |
1 files changed, 36 insertions, 2 deletions
diff --git a/src/gallium/drivers/vc4/vc4_tiling.h b/src/gallium/drivers/vc4/vc4_tiling.h index 7c98c02a4b5..1da6ca63258 100644 --- a/src/gallium/drivers/vc4/vc4_tiling.h +++ b/src/gallium/drivers/vc4/vc4_tiling.h @@ -24,8 +24,42 @@ #ifndef VC4_TILING_H #define VC4_TILING_H -uint32_t vc4_utile_width(int cpp) ATTRIBUTE_CONST; -uint32_t vc4_utile_height(int cpp) ATTRIBUTE_CONST; + +/** Return the width in pixels of a 64-byte microtile. */ +static inline uint32_t +vc4_utile_width(int cpp) +{ + switch (cpp) { + case 1: + case 2: + return 8; + case 4: + return 4; + case 8: + return 2; + default: + fprintf(stderr, "unknown cpp: %d\n", cpp); + abort(); + } +} + +/** Return the height in pixels of a 64-byte microtile. */ +static inline uint32_t +vc4_utile_height(int cpp) +{ + switch (cpp) { + case 1: + return 8; + case 2: + case 4: + case 8: + return 4; + default: + fprintf(stderr, "unknown cpp: %d\n", cpp); + abort(); + } +} + bool vc4_size_is_lt(uint32_t width, uint32_t height, int cpp) ATTRIBUTE_CONST; void vc4_load_tiled_image(void *dst, uint32_t dst_stride, void *src, uint32_t src_stride, |