st/mesa: use st_access_flags_to_transfer_flags() helper in more places
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
This commit is contained in:
parent
1852a2e1a2
commit
77bc74e674
|
@ -47,6 +47,7 @@
|
|||
#include "pipe/p_screen.h"
|
||||
#include "st_atom.h"
|
||||
#include "st_context.h"
|
||||
#include "st_cb_bufferobjects.h"
|
||||
#include "st_cb_fbo.h"
|
||||
#include "st_cb_flush.h"
|
||||
#include "st_cb_texture.h"
|
||||
|
@ -780,7 +781,6 @@ st_MapRenderbuffer(struct gl_context *ctx,
|
|||
struct st_renderbuffer *strb = st_renderbuffer(rb);
|
||||
struct pipe_context *pipe = st->pipe;
|
||||
const GLboolean invert = rb->Name == 0;
|
||||
unsigned usage;
|
||||
GLuint y2;
|
||||
GLubyte *map;
|
||||
|
||||
|
@ -800,13 +800,13 @@ st_MapRenderbuffer(struct gl_context *ctx,
|
|||
return;
|
||||
}
|
||||
|
||||
usage = 0x0;
|
||||
if (mode & GL_MAP_READ_BIT)
|
||||
usage |= PIPE_TRANSFER_READ;
|
||||
if (mode & GL_MAP_WRITE_BIT)
|
||||
usage |= PIPE_TRANSFER_WRITE;
|
||||
if (mode & GL_MAP_INVALIDATE_RANGE_BIT)
|
||||
usage |= PIPE_TRANSFER_DISCARD_RANGE;
|
||||
/* Check for unexpected flags */
|
||||
assert((mode & ~(GL_MAP_READ_BIT |
|
||||
GL_MAP_WRITE_BIT |
|
||||
GL_MAP_INVALIDATE_RANGE_BIT)) == 0);
|
||||
|
||||
const enum pipe_transfer_usage transfer_flags =
|
||||
st_access_flags_to_transfer_flags(mode, false);
|
||||
|
||||
/* Note: y=0=bottom of buffer while y2=0=top of buffer.
|
||||
* 'invert' will be true for window-system buffers and false for
|
||||
|
@ -821,7 +821,7 @@ st_MapRenderbuffer(struct gl_context *ctx,
|
|||
strb->texture,
|
||||
strb->surface->u.tex.level,
|
||||
strb->surface->u.tex.first_layer,
|
||||
usage, x, y2, w, h, &strb->transfer);
|
||||
transfer_flags, x, y2, w, h, &strb->transfer);
|
||||
if (map) {
|
||||
if (invert) {
|
||||
*rowStrideOut = -(int) strb->transfer->stride;
|
||||
|
|
|
@ -254,19 +254,18 @@ st_MapTextureImage(struct gl_context *ctx,
|
|||
{
|
||||
struct st_context *st = st_context(ctx);
|
||||
struct st_texture_image *stImage = st_texture_image(texImage);
|
||||
unsigned pipeMode;
|
||||
GLubyte *map;
|
||||
struct pipe_transfer *transfer;
|
||||
|
||||
pipeMode = 0x0;
|
||||
if (mode & GL_MAP_READ_BIT)
|
||||
pipeMode |= PIPE_TRANSFER_READ;
|
||||
if (mode & GL_MAP_WRITE_BIT)
|
||||
pipeMode |= PIPE_TRANSFER_WRITE;
|
||||
if (mode & GL_MAP_INVALIDATE_RANGE_BIT)
|
||||
pipeMode |= PIPE_TRANSFER_DISCARD_RANGE;
|
||||
/* Check for unexpected flags */
|
||||
assert((mode & ~(GL_MAP_READ_BIT |
|
||||
GL_MAP_WRITE_BIT |
|
||||
GL_MAP_INVALIDATE_RANGE_BIT)) == 0);
|
||||
|
||||
map = st_texture_image_map(st, stImage, pipeMode, x, y, slice, w, h, 1,
|
||||
const enum pipe_transfer_usage transfer_flags =
|
||||
st_access_flags_to_transfer_flags(mode, false);
|
||||
|
||||
map = st_texture_image_map(st, stImage, transfer_flags, x, y, slice, w, h, 1,
|
||||
&transfer);
|
||||
if (map) {
|
||||
if (st_etc_fallback(st, texImage)) {
|
||||
|
|
Loading…
Reference in New Issue