Rework how auto push_constant upgrading works a bit.

Ensure we traverse the entire tree and upgrade all references to the
given symbol so it can be upgraded to push_constant. Without this change
only one instance was upgraded, and others were left as uniform buffers.
This commit is contained in:
Malcolm Bechard 2023-06-16 20:19:35 -04:00 committed by arcady-lunarg
parent 8a6a311d22
commit 6defcb2478
2 changed files with 21 additions and 14 deletions

View file

@ -55,6 +55,7 @@ struct TVarEntryInfo {
long long id;
TIntermSymbol* symbol;
bool live;
bool upgradedToPushConstant;
int newBinding;
int newSet;
int newLocation;
@ -63,6 +64,7 @@ struct TVarEntryInfo {
EShLanguage stage;
void clearNewAssignments() {
upgradedToPushConstant = false;
newBinding = -1;
newSet = -1;
newLocation = -1;