isl: Fix the bs assertion in isl_tiling_get_info
authorJason Ekstrand <jason.ekstrand@intel.com>
Wed, 13 Jul 2016 22:59:33 +0000 (15:59 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Fri, 15 Jul 2016 22:53:47 +0000 (15:53 -0700)
Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Chad Versace <chad.versace@intel.com>
src/intel/isl/isl.c

index 75b811897883e7bed99b12b4c1a38b3053cb37f0..435cffd8a65011da658b3e4030e89492b90b0898 100644 (file)
@@ -113,21 +113,23 @@ isl_tiling_get_info(const struct isl_device *dev,
    const uint32_t bs = format_bpb / 8;
    struct isl_extent2d logical_el, phys_B;
 
-   assert(bs > 0);
-   assert(tiling == ISL_TILING_LINEAR || isl_is_pow2(bs));
+   assert(tiling == ISL_TILING_LINEAR || isl_is_pow2(format_bpb));
 
    switch (tiling) {
    case ISL_TILING_LINEAR:
+      assert(bs > 0);
       logical_el = isl_extent2d(1, 1);
       phys_B = isl_extent2d(bs, 1);
       break;
 
    case ISL_TILING_X:
+      assert(bs > 0);
       logical_el = isl_extent2d(512 / bs, 8);
       phys_B = isl_extent2d(512, 8);
       break;
 
    case ISL_TILING_Y0:
+      assert(bs > 0);
       logical_el = isl_extent2d(128 / bs, 32);
       phys_B = isl_extent2d(128, 32);
       break;
@@ -159,6 +161,7 @@ isl_tiling_get_info(const struct isl_device *dev,
 
       bool is_Ys = tiling == ISL_TILING_Ys;
 
+      assert(bs > 0);
       unsigned width = 1 << (6 + (ffs(bs) / 2) + (2 * is_Ys));
       unsigned height = 1 << (6 - (ffs(bs) / 2) + (2 * is_Ys));