glsl: Use has_420pack().
These features would not have been enabled with #version 420 otherwise. Cc: "11.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
This commit is contained in:
parent
c200e606f7
commit
79da7220db
|
@ -1737,7 +1737,7 @@ ast_function_expression::handle_method(exec_list *instructions,
|
|||
result = new(ctx) ir_constant(op->type->array_size());
|
||||
}
|
||||
} else if (op->type->is_vector()) {
|
||||
if (state->ARB_shading_language_420pack_enable) {
|
||||
if (state->has_420pack()) {
|
||||
/* .length() returns int. */
|
||||
result = new(ctx) ir_constant((int) op->type->vector_elements);
|
||||
} else {
|
||||
|
@ -1746,7 +1746,7 @@ ast_function_expression::handle_method(exec_list *instructions,
|
|||
goto fail;
|
||||
}
|
||||
} else if (op->type->is_matrix()) {
|
||||
if (state->ARB_shading_language_420pack_enable) {
|
||||
if (state->has_420pack()) {
|
||||
/* .length() returns int. */
|
||||
result = new(ctx) ir_constant((int) op->type->matrix_columns);
|
||||
} else {
|
||||
|
@ -2075,7 +2075,7 @@ ast_aggregate_initializer::hir(exec_list *instructions,
|
|||
}
|
||||
const glsl_type *const constructor_type = this->constructor_type;
|
||||
|
||||
if (!state->ARB_shading_language_420pack_enable) {
|
||||
if (!state->has_420pack()) {
|
||||
_mesa_glsl_error(&loc, state, "C-style initialization requires the "
|
||||
"GL_ARB_shading_language_420pack extension");
|
||||
return ir_rvalue::error_value(ctx);
|
||||
|
|
|
@ -3738,7 +3738,7 @@ process_initializer(ir_variable *var, ast_declaration *decl,
|
|||
* expressions. Const-qualified global variables must still be
|
||||
* initialized with constant expressions.
|
||||
*/
|
||||
if (!state->ARB_shading_language_420pack_enable
|
||||
if (!state->has_420pack()
|
||||
|| state->current_function == NULL) {
|
||||
_mesa_glsl_error(& initializer_loc, state,
|
||||
"initializer of %s variable `%s' must be a "
|
||||
|
@ -5367,7 +5367,7 @@ ast_jump_statement::hir(exec_list *instructions,
|
|||
if (state->current_function->return_type != ret_type) {
|
||||
YYLTYPE loc = this->get_location();
|
||||
|
||||
if (state->ARB_shading_language_420pack_enable) {
|
||||
if (state->has_420pack()) {
|
||||
if (!apply_implicit_conversion(state->current_function->return_type,
|
||||
ret, state)) {
|
||||
_mesa_glsl_error(& loc, state,
|
||||
|
|
|
@ -57,8 +57,7 @@ _mesa_ast_field_selection_to_hir(const ast_expression *expr,
|
|||
expr->primary_expression.identifier);
|
||||
}
|
||||
} else if (op->type->is_vector() ||
|
||||
(state->ARB_shading_language_420pack_enable &&
|
||||
op->type->is_scalar())) {
|
||||
(state->has_420pack() && op->type->is_scalar())) {
|
||||
ir_swizzle *swiz = ir_swizzle::create(op,
|
||||
expr->primary_expression.identifier,
|
||||
op->type->vector_elements);
|
||||
|
|
Loading…
Reference in New Issue