diff options
author | Rob Clark <[email protected]> | 2020-05-18 14:14:51 -0700 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-05-29 19:35:08 +0000 |
commit | 11470fcde266aa8b864b6a114fc923b2b8e5907a (patch) | |
tree | 8c71a7e9c05e556db2bb41eb7f7b25463184eb20 /src/gallium/drivers/freedreno | |
parent | f6f7bc2979926faff3abecfb52533e7043fc05a5 (diff) |
freedreno/a6xx: fix vsc assert
Fixes a debug build assert seeing with an android app. Not quite sure
which path was passing us draw_info w/ instance_count==0. But we should
just treat non-instanced draws as having a single instance.
Signed-off-by: Rob Clark <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5091>
Diffstat (limited to 'src/gallium/drivers/freedreno')
-rw-r--r-- | src/gallium/drivers/freedreno/a6xx/fd6_vsc.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_vsc.c b/src/gallium/drivers/freedreno/a6xx/fd6_vsc.c index daf97fe48ac..43b8c2753a9 100644 --- a/src/gallium/drivers/freedreno/a6xx/fd6_vsc.c +++ b/src/gallium/drivers/freedreno/a6xx/fd6_vsc.c @@ -114,12 +114,11 @@ draw_stream_size_bits(const struct pipe_draw_info *info, unsigned num_bins, unsigned prim_strm_bits) { unsigned ndwords = prim_strm_bits / dword; - assert(info->instance_count > 0); return (bitfield_size_bits(num_bins) /* bitfield of bins */ + 1 /* last-instance-bit */ + number_size_bits(ndwords) /* size of corresponding prim strm */ + 1 /* checksum */ - ) * info->instance_count; + ) * MAX2(1, info->instance_count); } void |