Home | History | Annotate | Download | only in glsl

Lines Matching defs:qual

2788                        const ast_type_qualifier *qual)
2790 if (!qual->flags.q.uniform && !qual->flags.q.buffer) {
2798 if (!process_qualifier_constant(state, loc, "binding", qual->binding,
2819 if (qual->flags.q.uniform &&
2837 if (qual->flags.q.buffer &&
2901 const struct ast_type_qualifier *qual,
2968 && qual->flags.q.varying) {
2972 if (qual->flags.q.centroid)
3048 interpret_interpolation_qualifier(const struct ast_type_qualifier *qual,
3055 if (qual->flags.q.flat)
3057 else if (qual->flags.q.noperspective)
3059 else if (qual->flags.q.smooth)
3077 qual, var_type, mode);
3084 apply_explicit_location(const struct ast_type_qualifier *qual,
3092 if (!process_qualifier_constant(state, loc, "location", qual->location,
3098 if (qual->flags.q.uniform) {
3222 if (qual->flags.q.explicit_index && qual->flags.q.subroutine) {
3229 if (qual->flags.q.explicit_index &&
3230 process_qualifier_constant(state, loc, "index", qual->index,
3253 apply_image_qualifier_to_variable(const struct ast_type_qualifier *qual,
3268 var->data.image_read_only |= qual->flags.q.read_only;
3269 var->data.image_write_only |= qual->flags.q.write_only;
3270 var->data.image_coherent |= qual->flags.q.coherent;
3271 var->data.image_volatile |= qual->flags.q._volatile;
3272 var->data.image_restrict |= qual->flags.q.restrict_flag;
3275 if (qual->flags.q.explicit_image_format) {
3281 if (qual->image_base_type != base_type->sampled_type) {
3286 var->data.image_format = qual->image_format;
3293 } else if (!qual->flags.q.write_only) {
3320 } else if (qual->flags.q.read_only ||
3321 qual->flags.q.write_only ||
3322 qual->flags.q.coherent ||
3323 qual->flags.q._volatile ||
3324 qual->flags.q.restrict_flag ||
3325 qual->flags.q.explicit_image_format) {
3346 const struct ast_type_qualifier *qual)
3352 return (state->fs_pixel_center_integer != qual->flags.q.pixel_center_integer
3353 || state->fs_origin_upper_left != qual->flags.q.origin_upper_left);
3379 apply_layout_qualifier_to_variable(const struct ast_type_qualifier *qual,
3406 if (is_conflicting_fragcoord_redeclaration(state, qual)) {
3408 get_layout_qualifier_string(qual->flags.q.origin_upper_left,
3409 qual->flags.q.pixel_center_integer);
3421 state->fs_origin_upper_left = qual->flags.q.origin_upper_left;
3422 state->fs_pixel_center_integer = qual->flags.q.pixel_center_integer;
3424 !qual->flags.q.origin_upper_left && !qual->flags.q.pixel_center_integer;
3431 var->data.pixel_center_integer = qual->flags.q.pixel_center_integer;
3432 var->data.origin_upper_left = qual->flags.q.origin_upper_left;
3433 if ((qual->flags.q.origin_upper_left || qual->flags.q.pixel_center_integer)
3435 const char *const qual_string = (qual->flags.q.origin_upper_left)
3444 if (qual->flags.q.explicit_location) {
3445 apply_explicit_location(qual, var, state, loc);
3447 if (qual->flags.q.explicit_component) {
3450 qual->component, &qual_component)) {
3475 } else if (qual->flags.q.explicit_index) {
3476 if (!qual->flags.q.subroutine_def)
3479 } else if (qual->flags.q.explicit_component) {
3484 if (qual->flags.q.explicit_binding) {
3485 apply_explicit_binding(state, loc, var, var->type, qual);
3489 qual->flags.q.out && qual->flags.q.stream) {
3491 if (process_qualifier_constant(state, loc, "stream", qual->stream,
3498 if (qual->flags.q.out && qual->flags.q.xfb_buffer) {
3501 qual->xfb_buffer, &qual_xfb_buffer) &&
3504 if (qual->flags.q.explicit_xfb_buffer)
3509 if (qual->flags.q.explicit_xfb_offset) {
3514 qual->offset, &qual_xfb_offset) &&
3522 if (qual->flags.q.explicit_xfb_stride) {
3525 qual->xfb_stride, &qual_xfb_stride)) {
3578 const bool uses_deprecated_qualifier = qual->flags.q.attribute
3579 || qual->flags.q.varying;
3580 if (qual->has_layout() && uses_deprecated_qualifier) {
3595 int depth_layout_count = qual->flags.q.depth_any
3596 + qual->flags.q.depth_greater
3597 + qual->flags.q.depth_less
3598 + qual->flags.q.depth_unchanged;
3618 if (qual->flags.q.depth_any)
3620 else if (qual->flags.q.depth_greater)
3622 else if (qual->flags.q.depth_less)
3624 else if (qual->flags.q.depth_unchanged)
3629 if (qual->flags.q.std140 ||
3630 qual->flags.q.std430 ||
3631 qual->flags.q.packed ||
3632 qual->flags.q.shared) {
3640 if (qual->flags.q.row_major || qual->flags.q.column_major) {
3653 if (qual->flags.q.early_fragment_tests) {
3658 if (qual->flags.q.inner_coverage) {
3663 if (qual->flags.q.post_depth_coverage) {
3670 apply_type_qualifier_to_variable(const struct ast_type_qualifier *qual,
3676 STATIC_ASSERT(sizeof(qual->flags.q) <= sizeof(qual->flags.i));
3678 if (qual->flags.q.invariant) {
3689 if (qual->flags.q.precise) {
3700 if (qual->flags.q.subroutine && !qual->flags.q.uniform) {
3706 if (qual->flags.q.constant || qual->flags.q.attribute
3707 || qual->flags.q.uniform
3708 || (qual->flags.q.varying && (state->stage == MESA_SHADER_FRAGMENT)))
3711 if (qual->flags.q.centroid)
3714 if (qual->flags.q.sample)
3720 select_gles_precision(qual->precision, var->type, state, loc);
3723 if (qual->flags.q.patch)
3726 if (qual->flags.q.attribute && state->stage != MESA_SHADER_VERTEX) {
3735 if (qual->flags.q.prim_type) {
3750 if (is_parameter && qual->flags.q.constant && qual->flags.q.out) {
3760 if (qual->flags.q.in && qual->flags.q.out)
3762 else if (qual->flags.q.in)
3764 else if (qual->flags.q.attribute
3765 || (qual->flags.q.varying && (state->stage == MESA_SHADER_FRAGMENT)))
3767 else if (qual->flags.q.out)
3769 else if (qual->flags.q.varying && (state->stage == MESA_SHADER_VERTEX))
3771 else if (qual->flags.q.uniform)
3773 else if (qual->flags.q.buffer)
3775 else if (qual->flags.q.shared_storage)
3779 qual->flags.q.in && qual->flags.q.out;
3862 interpret_interpolation_qualifier(qual, var->type,
3869 const bool uses_deprecated_qualifier = qual->flags.q.attribute
3870 || qual->flags.q.varying;
3890 if (qual->flags.q.sample && (!is_varying_var(var, state->stage) || uses_deprecated_qualifier)) {
3895 if (qual->flags.q.centroid && !is_varying_var(var, state->stage)) {
3901 if (qual->flags.q.shared_storage && state->stage != MESA_SHADER_COMPUTE) {
3907 apply_image_qualifier_to_variable(qual, var, state, loc);
6740 const struct ast_type_qualifier *const qual =
6778 if (qual->flags.q.explicit_binding) {
6788 !qual->flags.q.explicit_location) ||
6790 qual->flags.q.explicit_location))) {
6801 qual->flags.q.explicit_location;
6805 if (qual->flags.q.std140 ||
6806 qual->flags.q.std430 ||
6807 qual->flags.q.packed ||
6808 qual->flags.q.shared) {
6816 if (qual->flags.q.constant) {
6828 if (qual->flags.q.explicit_stream) {
6831 qual->stream, &qual_stream) &&
6842 if (qual->flags.q.explicit_xfb_buffer) {
6845 qual->xfb_buffer, &qual_xfb_buffer)) {
6861 if (qual->flags.q.explicit_xfb_stride) {
6864 qual->xfb_stride, &qual_xfb_stride)) {
6869 if (qual->flags.q.uniform && qual->has_interpolation()) {
6875 if ((qual->flags.q.uniform || !is_interface) &&
6876 qual->has_auxiliary_storage()) {
6882 if (qual->flags.q.row_major || qual->flags.q.column_major) {
6883 if (!qual->flags.q.uniform && !qual->flags.q.buffer) {
6891 if (qual->flags.q.read_only && qual->flags.q.write_only) {
6909 interpret_interpolation_qualifier(qual, field_type,
6911 fields[i].centroid = qual->flags.q.centroid ? 1 : 0;
6912 fields[i].sample = qual->flags.q.sample ? 1 : 0;
6913 fields[i].patch = qual->flags.q.patch ? 1 : 0;
6914 fields[i].precision = qual->precision;
6920 if (qual->flags.q.explicit_location) {
6923 qual->location, &qual_location)) {
6945 if (qual->flags.q.row_major ||
6961 if (qual->flags.q.explicit_offset) {
6964 qual->offset, &qual_offset)) {
6984 if (qual->flags.q.explicit_align || expl_align != 0) {
6990 } else if (qual->flags.q.explicit_align) {
6993 qual->align, &member_align)) {
7007 } else if (!qual->flags.q.explicit_offset) {
7021 if (qual->flags.q.explicit_xfb_offset) {
7024 qual->offset, &xfb_offset)) {
7052 if (qual->flags.q.row_major)
7054 else if (qual->flags.q.column_major)
7071 if (qual->flags.q.read_only) {
7074 } else if (qual->flags.q.write_only) {
7085 fields[i].image_coherent = qual->flags.q.coherent ||
7087 fields[i].image_volatile = qual->flags.q._volatile ||
7089 fields[i].image_restrict = qual->flags.q.restrict_flag ||