/* Skip over "function" tag and function name (which are guaranteed to be
* present by the above PARTIAL_MATCH call).
*/
- exec_node *node = ((s_list *) expr)->subexpressions.head->next->next;
+ exec_node *node = ((s_list *) expr)->subexpressions.get_head_raw()->next->next;
for (/* nothing */; !node->is_tail_sentinel(); node = node->next) {
s_expression *s_sig = (s_expression *) node;
read_function_sig(f, s_sig, skip_body);
state->symbols->push_scope();
/* Skip over the "parameters" tag. */
- exec_node *node = paramlist->subexpressions.head->next;
+ exec_node *node = paramlist->subexpressions.get_head_raw()->next;
for (/* nothing */; !node->is_tail_sentinel(); node = node->next) {
ir_variable *var = read_declaration((s_expression *) node);
if (var == NULL)
var->data.sample = 1;
} else if (strcmp(qualifier->value(), "patch") == 0) {
var->data.patch = 1;
+ } else if (strcmp(qualifier->value(), "explicit_invariant") == 0) {
+ var->data.explicit_invariant = true;
} else if (strcmp(qualifier->value(), "invariant") == 0) {
- var->data.invariant = 1;
+ var->data.invariant = true;
} else if (strcmp(qualifier->value(), "uniform") == 0) {
var->data.mode = ir_var_uniform;
} else if (strcmp(qualifier->value(), "shader_storage") == 0) {
} else if (strcmp(qualifier->value(), "stream3") == 0) {
var->data.stream = 3;
} else if (strcmp(qualifier->value(), "smooth") == 0) {
- var->data.interpolation = INTERP_QUALIFIER_SMOOTH;
+ var->data.interpolation = INTERP_MODE_SMOOTH;
} else if (strcmp(qualifier->value(), "flat") == 0) {
- var->data.interpolation = INTERP_QUALIFIER_FLAT;
+ var->data.interpolation = INTERP_MODE_FLAT;
} else if (strcmp(qualifier->value(), "noperspective") == 0) {
- var->data.interpolation = INTERP_QUALIFIER_NOPERSPECTIVE;
+ var->data.interpolation = INTERP_MODE_NOPERSPECTIVE;
} else {
ir_read_error(expr, "unknown qualifier: %s", qualifier->value());
return NULL;
return NULL;
}
- if (type->base_type == GLSL_TYPE_FLOAT) {
+ if (type->is_float()) {
s_number *value = SX_AS_NUMBER(expr);
if (value == NULL) {
ir_read_error(values, "expected numbers");
}
if (s_shadow->subexpressions.is_empty()) {
- tex->shadow_comparitor = NULL;
+ tex->shadow_comparator = NULL;
} else {
- tex->shadow_comparitor = read_rvalue(s_shadow);
- if (tex->shadow_comparitor == NULL) {
- ir_read_error(NULL, "when reading shadow comparitor in (%s ..)",
+ tex->shadow_comparator = read_rvalue(s_shadow);
+ if (tex->shadow_comparator == NULL) {
+ ir_read_error(NULL, "when reading shadow comparator in (%s ..)",
tex->opcode_string());
return NULL;
}