Lines Matching defs:variable
36 * bitfield corresponding to this variable.
131 * variable is used!
163 /* This one is invalid, make it a global variable instead */
1184 /* Create a variable if not exist. */
1265 /* Clone instructions start from deref load to variable deref. */
1338 /* Skip if the variable will be eliminated */
1519 * variable. If part of the current slot is taken up by a compact
1520 * variable, we need to go to the next one.
1624 unreachable("Unsupported variable in get_linked_variable_location.");
1628 get_linked_variable_io_mask(nir_variable *variable, gl_shader_stage stage)
1630 const struct glsl_type *type = variable->type;
1632 if (nir_is_arrayed_io(variable, stage)) {
1638 if (variable->data.compact) {
1639 unsigned component_count = variable->data.location_frac + glsl_get_length(type);
1656 nir_foreach_shader_out_variable(variable, producer) {
1657 uint64_t mask = get_linked_variable_io_mask(variable, producer->info.stage);
1658 uint64_t loc = get_linked_variable_location(variable->data.location, variable->data.patch);
1660 if (variable->data.patch)
1669 nir_foreach_shader_in_variable(variable, consumer) {
1670 uint64_t mask = get_linked_variable_io_mask(variable, consumer->info.stage);
1671 uint64_t loc = get_linked_variable_location(variable->data.location, variable->data.patch);
1673 if (variable->data.patch)
1682 nir_foreach_shader_out_variable(variable, producer) {
1683 uint64_t loc = get_linked_variable_location(variable->data.location, variable->data.patch);
1685 if (variable->data.patch)
1686 variable->data.driver_location = util_bitcount64(patch_io_mask & u_bit_consecutive64(0, loc));
1688 variable->data.driver_location = util_bitcount64(io_mask & u_bit_consecutive64(0, loc));
1691 nir_foreach_shader_in_variable(variable, consumer) {
1692 uint64_t loc = get_linked_variable_location(variable->data.location, variable->data.patch);
1694 if (variable->data.patch)
1695 variable->data.driver_location = util_bitcount64(patch_io_mask & u_bit_consecutive64(0, loc));
1697 variable->data.driver_location = util_bitcount64(io_mask & u_bit_consecutive64(0, loc));