| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
This wasn't serving any purpose. So delete it.
|
| |
|
|
|
|
|
|
| |
Previously the list of function call parameters was stored as a
circular list in ast_expression::subexpressions[1]. They are now
stored as a regular list in ast_expression::expressions.
|
| |
|
|
|
|
|
|
|
|
|
| |
Previously the same code was generated for a while loop and a do-while
loop. This pulls the code that generates the conditional break into a
separate method. This method is called either at the beginning or the
end depending on the loop type.
Reported-by: Kenneth Graunke <[email protected]>
|
|
|
|
|
|
|
|
| |
This causes the following tests to pass:
glslparsertest/shaders/dowhile.frag
glslparsertest/shaders/while.frag
glslparsertest/shaders/while1.frag
glslparsertest/shaders/while2.frag
|
|
|
|
|
| |
If there is a void parameter it must not have a name, and it must be
the only parameter.
|
| |
|
|
|
|
|
| |
It isn't a type (is was enum specifying the kind of node), it was
unused, and it was easily confused with actual type fields. Kill with fire.
|
|
|
|
|
|
|
| |
I haven't verified that these are all correct, but it's still a lot
better than not having anything.
Signed-off-by: Kenneth Graunke <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ast_function::hir consists of bits pulled out of
ast_function_definition::hir. In fact, the later uses the former to
do a lot of its processing. Several class private data fields were
added to ast_function to facilitate communicate between the two.
This causes the following tests to pass:
glslparsertest/shaders/CorrectModule.frag
This causes the following tests to fail. These shaders were
previously failing to compile, but they were all failing for the wrong
reasons.
glslparsertest/shaders/function9.frag
glslparsertest/shaders/function10.frag
|
|
|
|
| |
This make is easily accessible from other modules.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The following tests now pass:
glslparsertest/shaders/if1.frag
glslparsertest/shaders/if2.frag
The following tests that used to pass now fail. It appears that most
of these fail because ast_nequal and ast_equal are not converted to HIR.
shaders/glsl-unused-varying.frag
shaders/glsl-fs-sqrt-branch.frag
|
|
|
|
| |
Signed-off-by: Ian Romanick <[email protected]>
|
| |
|
|
|
|
|
|
| |
Add a constructor that uses an ast_struct_specifier and one that uses
a type name. This saves a (trivial) bit of code, but it also ensures
some of the class invariants (i.e., type_name != NULL) are met.
|
|
|
|
|
|
| |
For built-in types, type_name would be NULL. This ensures that
type_name is set even for the built-in types. This simplifies code in
a few places and centralizes the name setting code.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
The ast_expression_bin subclass is used for all binary expressions
such as addition, subtraction, and comparisons. Several other
subclasses are soon to follow.
|
|
|