summaryrefslogtreecommitdiffstats
path: root/src/glsl/ast_to_hir.cpp
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2010-07-06 18:31:32 -0700
committerEric Anholt <[email protected]>2010-07-06 18:49:24 -0700
commitd4d630b72c7b7f38074addda0f1b819608247d93 (patch)
tree13e460270af9a8607a33ce2115a7b1688624732b /src/glsl/ast_to_hir.cpp
parenta36334be02cb0a2b834667116bfeb680bf365857 (diff)
glsl2: Put the declaration in the instruction stream before its initializer.
This fixes a regression in the generated code from when I did the ir_validate.cpp-driven rework of assignments.
Diffstat (limited to 'src/glsl/ast_to_hir.cpp')
-rw-r--r--src/glsl/ast_to_hir.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp
index f5e93b02547..3de754fa818 100644
--- a/src/glsl/ast_to_hir.cpp
+++ b/src/glsl/ast_to_hir.cpp
@@ -1772,6 +1772,8 @@ ast_declarator_list::hir(exec_list *instructions,
}
}
+ instructions->push_tail(var);
+
if (decl->initializer != NULL) {
YYLTYPE initializer_loc = decl->initializer->get_location();
@@ -1918,8 +1920,6 @@ ast_declarator_list::hir(exec_list *instructions,
decl->identifier);
}
- instructions->push_tail(var);
-
/* Add the variable to the symbol table after processing the initializer.
* This differs from most C-like languages, but it follows the GLSL
* specification. From page 28 (page 34 of the PDF) of the GLSL 1.50