From: Rob Clark Date: Sat, 11 Jul 2020 20:27:36 +0000 (-0700) Subject: freedreno/a6xx: bail instead of crash for compile fails X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=afadaaef399498ef72ceb15777d278986e6d8d2c;p=mesa.git freedreno/a6xx: bail instead of crash for compile fails Signed-off-by: Rob Clark Part-of: --- diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_draw.c b/src/gallium/drivers/freedreno/a6xx/fd6_draw.c index dd9c75051c9..810bdf0ca79 100644 --- a/src/gallium/drivers/freedreno/a6xx/fd6_draw.c +++ b/src/gallium/drivers/freedreno/a6xx/fd6_draw.c @@ -178,10 +178,16 @@ fd6_draw_vbo(struct fd_context *ctx, const struct pipe_draw_info *info, .primitive_restart = info->primitive_restart && info->index_size, }; + if (!(ctx->prog.vs && ctx->prog.fs)) + return false; + if (info->mode == PIPE_PRIM_PATCHES) { emit.key.hs = ctx->prog.hs; emit.key.ds = ctx->prog.ds; + if (!(ctx->prog.hs && ctx->prog.ds)) + return false; + shader_info *ds_info = &emit.key.ds->nir->info; emit.key.key.tessellation = ir3_tess_mode(ds_info->tess.primitive_mode); }