diff --git a/src/intel/compiler/brw/brw_from_nir.cpp b/src/intel/compiler/brw/brw_from_nir.cpp index b0b91b046be..1dac6aea037 100644 --- a/src/intel/compiler/brw/brw_from_nir.cpp +++ b/src/intel/compiler/brw/brw_from_nir.cpp @@ -2955,9 +2955,11 @@ brw_from_nir_emit_tes_intrinsic(nir_to_brw_state &ntb, break; case nir_intrinsic_load_attribute_payload_intel: + assert(instr->def.bit_size == 32); tes_prog_data->base.urb_read_length = MAX2(tes_prog_data->base.urb_read_length, - DIV_ROUND_UP(nir_src_as_uint(instr->src[0]) + 1, 8)); + DIV_ROUND_UP(nir_src_as_uint(instr->src[0]) + + 4 * instr->def.num_components, 32)); brw_from_nir_emit_intrinsic(ntb, bld, instr); break;