Revert "i965/batch: avoid reverting batch buffer if saved state is an empty"
This reverts commit a9031bf9b5
.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108630
This commit is contained in:
parent
43a397c580
commit
5f312e95f8
|
@ -167,7 +167,7 @@ static void
|
||||||
brw_dispatch_compute_common(struct gl_context *ctx)
|
brw_dispatch_compute_common(struct gl_context *ctx)
|
||||||
{
|
{
|
||||||
struct brw_context *brw = brw_context(ctx);
|
struct brw_context *brw = brw_context(ctx);
|
||||||
bool fail_next;
|
bool fail_next = false;
|
||||||
|
|
||||||
if (!_mesa_check_conditional_render(ctx))
|
if (!_mesa_check_conditional_render(ctx))
|
||||||
return;
|
return;
|
||||||
|
@ -185,7 +185,6 @@ brw_dispatch_compute_common(struct gl_context *ctx)
|
||||||
intel_batchbuffer_require_space(brw, 600);
|
intel_batchbuffer_require_space(brw, 600);
|
||||||
brw_require_statebuffer_space(brw, 2500);
|
brw_require_statebuffer_space(brw, 2500);
|
||||||
intel_batchbuffer_save_state(brw);
|
intel_batchbuffer_save_state(brw);
|
||||||
fail_next = intel_batchbuffer_saved_state_is_empty(brw);
|
|
||||||
|
|
||||||
retry:
|
retry:
|
||||||
brw->batch.no_wrap = true;
|
brw->batch.no_wrap = true;
|
||||||
|
|
|
@ -885,7 +885,7 @@ brw_draw_single_prim(struct gl_context *ctx,
|
||||||
{
|
{
|
||||||
struct brw_context *brw = brw_context(ctx);
|
struct brw_context *brw = brw_context(ctx);
|
||||||
const struct gen_device_info *devinfo = &brw->screen->devinfo;
|
const struct gen_device_info *devinfo = &brw->screen->devinfo;
|
||||||
bool fail_next;
|
bool fail_next = false;
|
||||||
|
|
||||||
/* Flag BRW_NEW_DRAW_CALL on every draw. This allows us to have
|
/* Flag BRW_NEW_DRAW_CALL on every draw. This allows us to have
|
||||||
* atoms that happen on every draw call.
|
* atoms that happen on every draw call.
|
||||||
|
@ -898,7 +898,6 @@ brw_draw_single_prim(struct gl_context *ctx,
|
||||||
intel_batchbuffer_require_space(brw, 1500);
|
intel_batchbuffer_require_space(brw, 1500);
|
||||||
brw_require_statebuffer_space(brw, 2400);
|
brw_require_statebuffer_space(brw, 2400);
|
||||||
intel_batchbuffer_save_state(brw);
|
intel_batchbuffer_save_state(brw);
|
||||||
fail_next = intel_batchbuffer_saved_state_is_empty(brw);
|
|
||||||
|
|
||||||
if (brw->num_instances != prim->num_instances ||
|
if (brw->num_instances != prim->num_instances ||
|
||||||
brw->basevertex != prim->basevertex ||
|
brw->basevertex != prim->basevertex ||
|
||||||
|
|
|
@ -268,7 +268,7 @@ genX(blorp_exec)(struct blorp_batch *batch,
|
||||||
assert(batch->blorp->driver_ctx == batch->driver_batch);
|
assert(batch->blorp->driver_ctx == batch->driver_batch);
|
||||||
struct brw_context *brw = batch->driver_batch;
|
struct brw_context *brw = batch->driver_batch;
|
||||||
struct gl_context *ctx = &brw->ctx;
|
struct gl_context *ctx = &brw->ctx;
|
||||||
bool check_aperture_failed_once;
|
bool check_aperture_failed_once = false;
|
||||||
|
|
||||||
#if GEN_GEN >= 11
|
#if GEN_GEN >= 11
|
||||||
/* The PIPE_CONTROL command description says:
|
/* The PIPE_CONTROL command description says:
|
||||||
|
@ -309,7 +309,6 @@ retry:
|
||||||
intel_batchbuffer_require_space(brw, 1400);
|
intel_batchbuffer_require_space(brw, 1400);
|
||||||
brw_require_statebuffer_space(brw, 600);
|
brw_require_statebuffer_space(brw, 600);
|
||||||
intel_batchbuffer_save_state(brw);
|
intel_batchbuffer_save_state(brw);
|
||||||
check_aperture_failed_once = intel_batchbuffer_saved_state_is_empty(brw);
|
|
||||||
brw->batch.no_wrap = true;
|
brw->batch.no_wrap = true;
|
||||||
|
|
||||||
#if GEN_GEN == 6
|
#if GEN_GEN == 6
|
||||||
|
|
|
@ -301,13 +301,6 @@ intel_batchbuffer_save_state(struct brw_context *brw)
|
||||||
brw->batch.saved.exec_count = brw->batch.exec_count;
|
brw->batch.saved.exec_count = brw->batch.exec_count;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool
|
|
||||||
intel_batchbuffer_saved_state_is_empty(struct brw_context *brw)
|
|
||||||
{
|
|
||||||
struct intel_batchbuffer *batch = &brw->batch;
|
|
||||||
return (batch->saved.map_next == batch->batch.map);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
intel_batchbuffer_reset_to_saved(struct brw_context *brw)
|
intel_batchbuffer_reset_to_saved(struct brw_context *brw)
|
||||||
{
|
{
|
||||||
|
|
|
@ -24,7 +24,6 @@ struct intel_batchbuffer;
|
||||||
void intel_batchbuffer_init(struct brw_context *brw);
|
void intel_batchbuffer_init(struct brw_context *brw);
|
||||||
void intel_batchbuffer_free(struct intel_batchbuffer *batch);
|
void intel_batchbuffer_free(struct intel_batchbuffer *batch);
|
||||||
void intel_batchbuffer_save_state(struct brw_context *brw);
|
void intel_batchbuffer_save_state(struct brw_context *brw);
|
||||||
bool intel_batchbuffer_saved_state_is_empty(struct brw_context *brw);
|
|
||||||
void intel_batchbuffer_reset_to_saved(struct brw_context *brw);
|
void intel_batchbuffer_reset_to_saved(struct brw_context *brw);
|
||||||
void intel_batchbuffer_require_space(struct brw_context *brw, GLuint sz);
|
void intel_batchbuffer_require_space(struct brw_context *brw, GLuint sz);
|
||||||
int _intel_batchbuffer_flush_fence(struct brw_context *brw,
|
int _intel_batchbuffer_flush_fence(struct brw_context *brw,
|
||||||
|
|
Loading…
Reference in New Issue