diff options
author | Michel Dänzer <[email protected]> | 2013-01-22 17:08:24 +0100 |
---|---|---|
committer | Michel Dänzer <[email protected]> | 2013-01-24 08:46:48 +0100 |
commit | 35f0dc2cc71f49ff8de8ba7a0f93a6b6f725161b (patch) | |
tree | f55e1eafac01c2dd2df56325d69cec53f35362ab /src/gallium/drivers | |
parent | 68cebb9a8fff5f490b0edb584ee9474becc711db (diff) |
radeonsi: Fall back to dummy pixel shader instead of trying indirect addressing.
Indirect addressing isn't fully handled yet.
Fixes crashes with piglit tests using indirect addressing.
Signed-off-by: Michel Dänzer <[email protected]>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r-- | src/gallium/drivers/radeonsi/radeonsi_shader.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/radeonsi_shader.c b/src/gallium/drivers/radeonsi/radeonsi_shader.c index 52ecef9b547..f398e6ca066 100644 --- a/src/gallium/drivers/radeonsi/radeonsi_shader.c +++ b/src/gallium/drivers/radeonsi/radeonsi_shader.c @@ -913,6 +913,11 @@ int si_pipe_shader_create( bld_base = &si_shader_ctx.radeon_bld.soa.bld_base; tgsi_scan_shader(sel->tokens, &shader_info); + if (shader_info.indirect_files != 0) { + fprintf(stderr, "Indirect addressing not fully handled yet\n"); + return -ENOSYS; + } + shader->shader.uses_kill = shader_info.uses_kill; bld_base->info = &shader_info; bld_base->emit_fetch_funcs[TGSI_FILE_CONSTANT] = fetch_constant; |