shader: Add integer attribute get optimization pass
Works around an nvidia driver bug, where casting the integer attributes to float and back to an integer always returned 0.
This commit is contained in:
parent
fbb33df96f
commit
22a4d26479
9 changed files with 86 additions and 0 deletions
|
@ -389,6 +389,7 @@ void VisitUsages(Info& info, IR::Inst& inst) {
|
|||
info.uses_demote_to_helper_invocation = true;
|
||||
break;
|
||||
case IR::Opcode::GetAttribute:
|
||||
case IR::Opcode::GetAttributeU32:
|
||||
info.loads.mask[static_cast<size_t>(inst.Arg(0).Attribute())] = true;
|
||||
break;
|
||||
case IR::Opcode::SetAttribute:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue