diff options
author | Rob Clark <[email protected]> | 2020-07-11 13:27:36 -0700 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-07-14 23:26:15 +0000 |
commit | afadaaef399498ef72ceb15777d278986e6d8d2c (patch) | |
tree | f3ba0ccb25e4416dafc05446a4f860fc17e46585 /src/gallium | |
parent | b3ca55f5aaa61539badb3d8d21106916a7388bfc (diff) |
freedreno/a6xx: bail instead of crash for compile fails
Signed-off-by: Rob Clark <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5907>
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/freedreno/a6xx/fd6_draw.c | 6 |
1 files changed, 6 insertions, 0 deletions
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); } |