[Mesa-dev] [PATCH] anv: Get rid of gen fall-through
Lionel Landwerlin
lionel.g.landwerlin at intel.com
Fri Oct 13 10:59:35 UTC 2017
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
On 13/10/17 06:57, Jason Ekstrand wrote:
> In the early days of the Vulkan driver, we thought it would be a good
> idea to just make genN just fall back to the genN-1 code if it didn't
> need to be any different for genN. While this seemed like a good idea,
> it ultimately ended up being far simpler to just recompile everything.
> We haven't been using the fall-through functionality for some time so
> we're better off just deleting it so it doesn't accidentally start
> causing problems.
> ---
> src/intel/vulkan/anv_entrypoints_gen.py | 34 ++++++++++++++++-----------------
> 1 file changed, 17 insertions(+), 17 deletions(-)
>
> diff --git a/src/intel/vulkan/anv_entrypoints_gen.py b/src/intel/vulkan/anv_entrypoints_gen.py
> index bf376a8..a4ecbf2 100644
> --- a/src/intel/vulkan/anv_entrypoints_gen.py
> +++ b/src/intel/vulkan/anv_entrypoints_gen.py
> @@ -160,31 +160,31 @@ anv_resolve_entrypoint(const struct gen_device_info *devinfo, uint32_t index)
> return anv_layer.entrypoints[index];
> }
>
> + const struct anv_dispatch_table *genX_table;
> switch (devinfo->gen) {
> case 10:
> - if (gen10_layer.entrypoints[index])
> - return gen10_layer.entrypoints[index];
> - /* fall through */
> + genX_table = &gen10_layer;
> + break;
> case 9:
> - if (gen9_layer.entrypoints[index])
> - return gen9_layer.entrypoints[index];
> - /* fall through */
> + genX_table = &gen9_layer;
> + break;
> case 8:
> - if (gen8_layer.entrypoints[index])
> - return gen8_layer.entrypoints[index];
> - /* fall through */
> + genX_table = &gen8_layer;
> + break;
> case 7:
> - if (devinfo->is_haswell && gen75_layer.entrypoints[index])
> - return gen75_layer.entrypoints[index];
> -
> - if (gen7_layer.entrypoints[index])
> - return gen7_layer.entrypoints[index];
> - /* fall through */
> - case 0:
> - return anv_layer.entrypoints[index];
> + if (devinfo->is_haswell)
> + genX_table = &gen75_layer;
> + else
> + genX_table = &gen7_layer;
> + break;
> default:
> unreachable("unsupported gen\\n");
> }
> +
> + if (genX_table->entrypoints[index])
> + return genX_table->entrypoints[index];
> + else
> + return anv_layer.entrypoints[index];
> }
>
> /* Hash table stats:
More information about the mesa-dev
mailing list