diff options
author | Cooper Yuan <cooperyuan@gmail.com> | 2009-09-28 17:55:38 +0800 |
---|---|---|
committer | Cooper Yuan <cooperyuan@gmail.com> | 2009-09-28 17:55:38 +0800 |
commit | 99e1745af9a6a1fe1ebc65b17afb5f1a975348d2 (patch) | |
tree | a54c9eb914363adf73852790863467fc31af7b77 | |
parent | 70c44073ad3f333ed40c5c297a934a359c839e94 (diff) |
r300g: fix r300g cause GPU hang issue.
why there are two input position semantic tags is that ureg doesn't
set vs input semantic due to commit: 6d8dbd3d1ec888
so use vs input index instead of semantic name.
-rw-r--r-- | src/gallium/drivers/r300/r300_state_derived.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c index 5026afc830..02b7ab9107 100644 --- a/src/gallium/drivers/r300/r300_state_derived.c +++ b/src/gallium/drivers/r300/r300_state_derived.c @@ -50,12 +50,11 @@ static void r300_vs_tab_routes(struct r300_context* r300, assert(info->num_inputs <= 16); - if (!r300screen->caps->has_tcl) + if (!r300screen->caps->has_tcl || !r300->rs_state->enable_vte) { for (i = 0; i < info->num_inputs; i++) { - switch (info->input_semantic_name[i]) { + switch (r300->vs->code.inputs[i]) { case TGSI_SEMANTIC_POSITION: - assert(pos == FALSE); pos = TRUE; tab[i] = 0; break; |