Mesa (master): gallium/util: Remove pipe_get_tile_z/put_tile_z.
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Feb 4 19:24:27 UTC 2020
Module: Mesa
Branch: master
Commit: 6cdf523f00398b98c73743f6eb4167409ff065e0
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6cdf523f00398b98c73743f6eb4167409ff065e0
Author: Eric Anholt <eric at anholt.net>
Date: Fri Nov 8 13:20:18 2019 -0800
gallium/util: Remove pipe_get_tile_z/put_tile_z.
The previous caller wasn't using it as tiled, just row-at-a-time, and
didn't want the clipping (since copytexsubimage comes in clipped). If
someone wanted these functions again in the future, they should be
rewritten on u_format_pack/unpack.
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2744>
---
src/gallium/auxiliary/util/u_tile.c | 251 ------------------------------------
src/gallium/auxiliary/util/u_tile.h | 13 --
2 files changed, 264 deletions(-)
diff --git a/src/gallium/auxiliary/util/u_tile.c b/src/gallium/auxiliary/util/u_tile.c
index 5a486af41ae..fa85c7fbadb 100644
--- a/src/gallium/auxiliary/util/u_tile.c
+++ b/src/gallium/auxiliary/util/u_tile.c
@@ -583,257 +583,6 @@ pipe_put_tile_ui_format(struct pipe_transfer *pt,
FREE(packed);
}
-/**
- * Get a block of Z values, converted to 32-bit range.
- */
-void
-pipe_get_tile_z(struct pipe_transfer *pt,
- const void *src,
- uint x, uint y, uint w, uint h,
- uint *z)
-{
- const uint dstStride = w;
- const ubyte *map = src;
- uint *pDest = z;
- uint i, j;
- enum pipe_format format = pt->resource->format;
-
- if (u_clip_tile(x, y, &w, &h, &pt->box))
- return;
-
- switch (format) {
- case PIPE_FORMAT_Z32_UNORM:
- {
- const uint *ptrc
- = (const uint *)(map + y * pt->stride + x*4);
- for (i = 0; i < h; i++) {
- memcpy(pDest, ptrc, 4 * w);
- pDest += dstStride;
- ptrc += pt->stride/4;
- }
- }
- break;
- case PIPE_FORMAT_Z24_UNORM_S8_UINT:
- case PIPE_FORMAT_Z24X8_UNORM:
- {
- const uint *ptrc
- = (const uint *)(map + y * pt->stride + x*4);
- for (i = 0; i < h; i++) {
- for (j = 0; j < w; j++) {
- /* convert 24-bit Z to 32-bit Z */
- pDest[j] = (ptrc[j] << 8) | ((ptrc[j] >> 16) & 0xff);
- }
- pDest += dstStride;
- ptrc += pt->stride/4;
- }
- }
- break;
- case PIPE_FORMAT_S8_UINT_Z24_UNORM:
- case PIPE_FORMAT_X8Z24_UNORM:
- {
- const uint *ptrc
- = (const uint *)(map + y * pt->stride + x*4);
- for (i = 0; i < h; i++) {
- for (j = 0; j < w; j++) {
- /* convert 24-bit Z to 32-bit Z */
- pDest[j] = (ptrc[j] & 0xffffff00) | ((ptrc[j] >> 24) & 0xff);
- }
- pDest += dstStride;
- ptrc += pt->stride/4;
- }
- }
- break;
- case PIPE_FORMAT_Z16_UNORM:
- {
- const ushort *ptrc
- = (const ushort *)(map + y * pt->stride + x*2);
- for (i = 0; i < h; i++) {
- for (j = 0; j < w; j++) {
- /* convert 16-bit Z to 32-bit Z */
- pDest[j] = (ptrc[j] << 16) | ptrc[j];
- }
- pDest += dstStride;
- ptrc += pt->stride/2;
- }
- }
- break;
- case PIPE_FORMAT_Z32_FLOAT:
- {
- const float *ptrc = (const float *)(map + y * pt->stride + x*4);
- for (i = 0; i < h; i++) {
- for (j = 0; j < w; j++) {
- /* convert float Z to 32-bit Z */
- if (ptrc[j] <= 0.0) {
- pDest[j] = 0;
- }
- else if (ptrc[j] >= 1.0) {
- pDest[j] = 0xffffffff;
- }
- else {
- double z = ptrc[j] * 0xffffffff;
- pDest[j] = (uint) z;
- }
- }
- pDest += dstStride;
- ptrc += pt->stride/4;
- }
- }
- break;
- case PIPE_FORMAT_Z32_FLOAT_S8X24_UINT:
- {
- const float *ptrc = (const float *)(map + y * pt->stride + x*8);
- for (i = 0; i < h; i++) {
- for (j = 0; j < w; j++) {
- /* convert float Z to 32-bit Z */
- if (ptrc[j] <= 0.0) {
- pDest[j*2] = 0;
- }
- else if (ptrc[j] >= 1.0) {
- pDest[j*2] = 0xffffffff;
- }
- else {
- double z = ptrc[j] * 0xffffffff;
- pDest[j*2] = (uint) z;
- }
- }
- pDest += dstStride;
- ptrc += pt->stride/4;
- }
- }
- break;
- default:
- assert(0);
- }
-}
-
-
-void
-pipe_put_tile_z(struct pipe_transfer *pt,
- void *dst,
- uint x, uint y, uint w, uint h,
- const uint *zSrc)
-{
- const uint srcStride = w;
- const uint *ptrc = zSrc;
- ubyte *map = dst;
- uint i, j;
- enum pipe_format format = pt->resource->format;
-
- if (u_clip_tile(x, y, &w, &h, &pt->box))
- return;
-
- switch (format) {
- case PIPE_FORMAT_Z32_UNORM:
- {
- uint *pDest = (uint *) (map + y * pt->stride + x*4);
- for (i = 0; i < h; i++) {
- memcpy(pDest, ptrc, 4 * w);
- pDest += pt->stride/4;
- ptrc += srcStride;
- }
- }
- break;
- case PIPE_FORMAT_Z24_UNORM_S8_UINT:
- {
- uint *pDest = (uint *) (map + y * pt->stride + x*4);
- /*assert((pt->usage & PIPE_TRANSFER_READ_WRITE) == PIPE_TRANSFER_READ_WRITE);*/
- for (i = 0; i < h; i++) {
- for (j = 0; j < w; j++) {
- /* convert 32-bit Z to 24-bit Z, preserve stencil */
- pDest[j] = (pDest[j] & 0xff000000) | ptrc[j] >> 8;
- }
- pDest += pt->stride/4;
- ptrc += srcStride;
- }
- }
- break;
- case PIPE_FORMAT_Z24X8_UNORM:
- {
- uint *pDest = (uint *) (map + y * pt->stride + x*4);
- for (i = 0; i < h; i++) {
- for (j = 0; j < w; j++) {
- /* convert 32-bit Z to 24-bit Z (0 stencil) */
- pDest[j] = ptrc[j] >> 8;
- }
- pDest += pt->stride/4;
- ptrc += srcStride;
- }
- }
- break;
- case PIPE_FORMAT_S8_UINT_Z24_UNORM:
- {
- uint *pDest = (uint *) (map + y * pt->stride + x*4);
- /*assert((pt->usage & PIPE_TRANSFER_READ_WRITE) == PIPE_TRANSFER_READ_WRITE);*/
- for (i = 0; i < h; i++) {
- for (j = 0; j < w; j++) {
- /* convert 32-bit Z to 24-bit Z, preserve stencil */
- pDest[j] = (pDest[j] & 0xff) | (ptrc[j] & 0xffffff00);
- }
- pDest += pt->stride/4;
- ptrc += srcStride;
- }
- }
- break;
- case PIPE_FORMAT_X8Z24_UNORM:
- {
- uint *pDest = (uint *) (map + y * pt->stride + x*4);
- for (i = 0; i < h; i++) {
- for (j = 0; j < w; j++) {
- /* convert 32-bit Z to 24-bit Z (0 stencil) */
- pDest[j] = ptrc[j] & 0xffffff00;
- }
- pDest += pt->stride/4;
- ptrc += srcStride;
- }
- }
- break;
- case PIPE_FORMAT_Z16_UNORM:
- {
- ushort *pDest = (ushort *) (map + y * pt->stride + x*2);
- for (i = 0; i < h; i++) {
- for (j = 0; j < w; j++) {
- /* convert 32-bit Z to 16-bit Z */
- pDest[j] = ptrc[j] >> 16;
- }
- pDest += pt->stride/2;
- ptrc += srcStride;
- }
- }
- break;
- case PIPE_FORMAT_Z32_FLOAT:
- {
- float *pDest = (float *) (map + y * pt->stride + x*4);
- for (i = 0; i < h; i++) {
- for (j = 0; j < w; j++) {
- /* convert 32-bit integer Z to float Z */
- const double scale = 1.0 / 0xffffffffU;
- pDest[j] = (float) (ptrc[j] * scale);
- }
- pDest += pt->stride/4;
- ptrc += srcStride;
- }
- }
- break;
- case PIPE_FORMAT_Z32_FLOAT_S8X24_UINT:
- {
- float *pDest = (float *) (map + y * pt->stride + x*8);
- for (i = 0; i < h; i++) {
- for (j = 0; j < w; j++) {
- /* convert 32-bit integer Z to float Z */
- const double scale = 1.0 / 0xffffffffU;
- pDest[j*2] = (float) (ptrc[j] * scale);
- }
- pDest += pt->stride/4;
- ptrc += srcStride;
- }
- }
- break;
- default:
- assert(0);
- }
-}
-
-
void
pipe_get_tile_ui_format(struct pipe_transfer *pt,
const void *src,
diff --git a/src/gallium/auxiliary/util/u_tile.h b/src/gallium/auxiliary/util/u_tile.h
index dc1f568a8e5..b8dc89687e2 100644
--- a/src/gallium/auxiliary/util/u_tile.h
+++ b/src/gallium/auxiliary/util/u_tile.h
@@ -99,19 +99,6 @@ pipe_put_tile_rgba_format(struct pipe_transfer *pt,
enum pipe_format format,
const float *p);
-
-void
-pipe_get_tile_z(struct pipe_transfer *pt,
- const void *src,
- uint x, uint y, uint w, uint h,
- uint *z);
-
-void
-pipe_put_tile_z(struct pipe_transfer *pt,
- void *dst,
- uint x, uint y, uint w, uint h,
- const uint *z);
-
void
pipe_tile_raw_to_rgba(enum pipe_format format,
const void *src,
More information about the mesa-commit
mailing list