projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
radeonsi: add an si_set_rw_shader_buffer convenience function
[mesa.git]
/
src
/
gallium
/
drivers
/
llvmpipe
/
lp_scene.h
diff --git
a/src/gallium/drivers/llvmpipe/lp_scene.h
b/src/gallium/drivers/llvmpipe/lp_scene.h
index 94b1779f04c701d709730c7ef43a93f41ca20fe9..b4ed8817ea7136ef718c82fe3740f4ce23d0b4b5 100644
(file)
--- a/
src/gallium/drivers/llvmpipe/lp_scene.h
+++ b/
src/gallium/drivers/llvmpipe/lp_scene.h
@@
-63,7
+63,7
@@
struct lp_rast_state;
#define LP_SCENE_MAX_SIZE (9*1024*1024)
/* The maximum amount of texture storage referenced by a scene is
#define LP_SCENE_MAX_SIZE (9*1024*1024)
/* The maximum amount of texture storage referenced by a scene is
- * clamped
ot
this size:
+ * clamped
to
this size:
*/
#define LP_SCENE_MAX_RESOURCE_SIZE (64*1024*1024)
*/
#define LP_SCENE_MAX_RESOURCE_SIZE (64*1024*1024)
@@
-142,6
+142,7
@@
struct lp_scene {
uint8_t *map;
unsigned stride;
unsigned layer_stride;
uint8_t *map;
unsigned stride;
unsigned layer_stride;
+ unsigned format_bytes;
} zsbuf, cbufs[PIPE_MAX_COLOR_BUFS];
/* The amount of layers in the fb (minimum of all attachments) */
} zsbuf, cbufs[PIPE_MAX_COLOR_BUFS];
/* The amount of layers in the fb (minimum of all attachments) */
@@
-165,8
+166,6
@@
struct lp_scene {
unsigned resource_reference_size;
boolean alloc_failed;
unsigned resource_reference_size;
boolean alloc_failed;
- boolean has_depthstencil_clear;
- boolean discard;
/**
* Number of active tiles in each dimension.
* This basically the framebuffer size divided by tile size
/**
* Number of active tiles in each dimension.
* This basically the framebuffer size divided by tile size
@@
-174,7
+173,7
@@
struct lp_scene {
unsigned tiles_x, tiles_y;
int curr_x, curr_y; /**< for iterating over bins */
unsigned tiles_x, tiles_y;
int curr_x, curr_y; /**< for iterating over bins */
-
pipe_mutex
mutex;
+
mtx_t
mutex;
struct cmd_bin tile[TILES_X][TILES_Y];
struct data_block_list data;
struct cmd_bin tile[TILES_X][TILES_Y];
struct data_block_list data;
@@
-207,7
+206,7
@@
boolean lp_scene_is_resource_referenced(const struct lp_scene *scene,
* Allocate space for a command/data in the bin's data buffer.
* Grow the block list if needed.
*/
* Allocate space for a command/data in the bin's data buffer.
* Grow the block list if needed.
*/
-static
INLINE
void *
+static
inline
void *
lp_scene_alloc( struct lp_scene *scene, unsigned size)
{
struct data_block_list *list = &scene->data;
lp_scene_alloc( struct lp_scene *scene, unsigned size)
{
struct data_block_list *list = &scene->data;
@@
-240,7
+239,7
@@
lp_scene_alloc( struct lp_scene *scene, unsigned size)
/**
* As above, but with specific alignment.
*/
/**
* As above, but with specific alignment.
*/
-static
INLINE
void *
+static
inline
void *
lp_scene_alloc_aligned( struct lp_scene *scene, unsigned size,
unsigned alignment )
{
lp_scene_alloc_aligned( struct lp_scene *scene, unsigned size,
unsigned alignment )
{
@@
-272,7
+271,7
@@
lp_scene_alloc_aligned( struct lp_scene *scene, unsigned size,
/* Put back data if we decide not to use it, eg. culled triangles.
*/
/* Put back data if we decide not to use it, eg. culled triangles.
*/
-static
INLINE
void
+static
inline
void
lp_scene_putback_data( struct lp_scene *scene, unsigned size)
{
struct data_block_list *list = &scene->data;
lp_scene_putback_data( struct lp_scene *scene, unsigned size)
{
struct data_block_list *list = &scene->data;
@@
-282,7
+281,7
@@
lp_scene_putback_data( struct lp_scene *scene, unsigned size)
/** Return pointer to a particular tile's bin. */
/** Return pointer to a particular tile's bin. */
-static
INLINE
struct cmd_bin *
+static
inline
struct cmd_bin *
lp_scene_get_bin(struct lp_scene *scene, unsigned x, unsigned y)
{
return &scene->tile[x][y];
lp_scene_get_bin(struct lp_scene *scene, unsigned x, unsigned y)
{
return &scene->tile[x][y];
@@
-296,7
+295,7
@@
lp_scene_bin_reset(struct lp_scene *scene, unsigned x, unsigned y);
/* Add a command to bin[x][y].
*/
/* Add a command to bin[x][y].
*/
-static
INLINE
boolean
+static
inline
boolean
lp_scene_bin_command( struct lp_scene *scene,
unsigned x, unsigned y,
unsigned cmd,
lp_scene_bin_command( struct lp_scene *scene,
unsigned x, unsigned y,
unsigned cmd,
@@
-328,7
+327,7
@@
lp_scene_bin_command( struct lp_scene *scene,
}
}
-static
INLINE
boolean
+static
inline
boolean
lp_scene_bin_cmd_with_state( struct lp_scene *scene,
unsigned x, unsigned y,
const struct lp_rast_state *state,
lp_scene_bin_cmd_with_state( struct lp_scene *scene,
unsigned x, unsigned y,
const struct lp_rast_state *state,
@@
-354,7
+353,7
@@
lp_scene_bin_cmd_with_state( struct lp_scene *scene,
/* Add a command to all active bins.
*/
/* Add a command to all active bins.
*/
-static
INLINE
boolean
+static
inline
boolean
lp_scene_bin_everywhere( struct lp_scene *scene,
unsigned cmd,
const union lp_rast_cmd_arg arg )
lp_scene_bin_everywhere( struct lp_scene *scene,
unsigned cmd,
const union lp_rast_cmd_arg arg )
@@
-371,7
+370,7
@@
lp_scene_bin_everywhere( struct lp_scene *scene,
}
}
-static
INLINE
unsigned
+static
inline
unsigned
lp_scene_get_num_bins( const struct lp_scene *scene )
{
return scene->tiles_x * scene->tiles_y;
lp_scene_get_num_bins( const struct lp_scene *scene )
{
return scene->tiles_x * scene->tiles_y;
@@
-389,12
+388,11
@@
lp_scene_bin_iter_next( struct lp_scene *scene, int *x, int *y );
/* Begin/end binning of a scene
*/
void
/* Begin/end binning of a scene
*/
void
-lp_scene_begin_binning( struct lp_scene *scene,
- struct pipe_framebuffer_state *fb,
- boolean discard );
+lp_scene_begin_binning(struct lp_scene *scene,
+ struct pipe_framebuffer_state *fb);
void
void
-lp_scene_end_binning(
struct lp_scene *scene
);
+lp_scene_end_binning(
struct lp_scene *scene
);
/* Begin/end rasterization of a scene
/* Begin/end rasterization of a scene
@@
-403,7
+401,7
@@
void
lp_scene_begin_rasterization(struct lp_scene *scene);
void
lp_scene_begin_rasterization(struct lp_scene *scene);
void
-lp_scene_end_rasterization(struct lp_scene *scene
);
+lp_scene_end_rasterization(struct lp_scene *scene);