From: Jason Ekstrand Date: Fri, 10 Jun 2016 01:48:07 +0000 (-0700) Subject: isl/state: Add assertions for buffer surface restrictions X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4061fde66e9feefa051a02fe258d69fe817e6a8c;p=mesa.git isl/state: Add assertions for buffer surface restrictions Acked-by: Chad Versace Cc: "12.0" --- diff --git a/src/intel/isl/isl_surface_state.c b/src/intel/isl/isl_surface_state.c index 15b2fa9cadc..ca5061225f4 100644 --- a/src/intel/isl/isl_surface_state.c +++ b/src/intel/isl/isl_surface_state.c @@ -435,6 +435,17 @@ isl_genX(buffer_fill_state_s)(void *state, { uint32_t num_elements = info->size / info->stride; + if (GEN_GEN >= 7) { + if (info->format == ISL_FORMAT_RAW) { + assert(num_elements <= (1ull << 31)); + assert((num_elements & 3) == 0); + } else { + assert(num_elements <= (1ull << 27)); + } + } else { + assert(num_elements <= (1ull << 27)); + } + struct GENX(RENDER_SURFACE_STATE) surface_state = { .SurfaceType = SURFTYPE_BUFFER, .SurfaceArray = false,