glsl2: Extend ir_constant to store constant arrays, and generate them.
Since GLSL permits arrays of structures, we need to store each element as an ir_constant*, not just ir_constant_data. Fixes parser tests const-array-01.frag, const-array-03.frag, const-array-04.frag, const-array-05.frag, though 03 and 04 generate the wrong code.
This commit is contained in:
parent
13a19745d4
commit
74e1802f5d
4 changed files with 40 additions and 5 deletions
|
|
@ -358,9 +358,8 @@ process_array_constructor(exec_list *instructions,
|
|||
ir->replace_with(result);
|
||||
}
|
||||
|
||||
if (all_parameters_are_constant) {
|
||||
/* FINISHME: Add support for generating constant arrays. */
|
||||
}
|
||||
if (all_parameters_are_constant)
|
||||
return new(ctx) ir_constant(constructor_type, &actual_parameters);
|
||||
|
||||
ir_variable *var = new(ctx) ir_variable(constructor_type, "array_ctor",
|
||||
ir_var_temporary);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue