diff options
author | Marek Olšák <[email protected]> | 2015-07-26 21:08:18 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2015-07-31 16:49:17 +0200 |
commit | 3ca21320583a4c0ba9bee755935df5e1f1637fdf (patch) | |
tree | f8f1111d2097faa573ab831800da296a6b282640 /src/gallium/drivers/radeonsi/si_shader.c | |
parent | 2d3ae154ba36546485468b9552e6da905b42aaa4 (diff) |
radeonsi: fix broken st/nine from merging tessellation
st/nine uses GENERIC slots greater than 60.
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_shader.c')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_shader.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c index 4151e011d58..92382e85985 100644 --- a/src/gallium/drivers/radeonsi/si_shader.c +++ b/src/gallium/drivers/radeonsi/si_shader.c @@ -136,8 +136,13 @@ unsigned si_shader_io_get_unique_index(unsigned semantic_name, unsigned index) assert(index <= 1); return 2 + index; case TGSI_SEMANTIC_GENERIC: - assert(index <= 63-4); - return 4 + index; + if (index <= 63-4) + return 4 + index; + else + /* same explanation as in the default statement, + * the only user hitting this is st/nine. + */ + return 0; /* patch indices are completely separate and thus start from 0 */ case TGSI_SEMANTIC_TESSOUTER: |