Lines Matching refs:scan_inst
2854 foreach_inst_in_block_reverse_starting_from(fs_inst, scan_inst, inst) { in compute_to_mrf()
2855 if (regions_overlap(scan_inst->dst, scan_inst->size_written, in compute_to_mrf()
2866 if (scan_inst->is_partial_write()) in compute_to_mrf()
2873 if (!region_contained_in(scan_inst->dst, scan_inst->size_written, in compute_to_mrf()
2878 if (scan_inst->mlen) in compute_to_mrf()
2885 if (scan_inst->is_math()) { in compute_to_mrf()
2892 inst->src[0], scan_inst->dst, scan_inst->size_written); in compute_to_mrf()
2901 if (block->start() == scan_inst) in compute_to_mrf()
2908 for (int i = 0; i < scan_inst->sources; i++) { in compute_to_mrf()
2909 if (regions_overlap(scan_inst->src[i], scan_inst->size_read(i), in compute_to_mrf()
2917 if (regions_overlap(scan_inst->dst, scan_inst->size_written, in compute_to_mrf()
2925 if (scan_inst->mlen > 0 && scan_inst->base_mrf != -1 && in compute_to_mrf()
2926 regions_overlap(fs_reg(MRF, scan_inst->base_mrf), scan_inst->mlen * REG_SIZE, in compute_to_mrf()
2945 foreach_inst_in_block_reverse_starting_from(fs_inst, scan_inst, inst) { in compute_to_mrf()
2946 if (regions_overlap(scan_inst->dst, scan_inst->size_written, in compute_to_mrf()
2950 inst->src[0], scan_inst->dst, scan_inst->size_written); in compute_to_mrf()
2952 const unsigned rel_offset = reg_offset(scan_inst->dst) - in compute_to_mrf()
2960 scan_inst->dst.nr = inst->dst.nr + rel_offset / REG_SIZE * 4; in compute_to_mrf()
2965 if (scan_inst->size_written < 2 * REG_SIZE) in compute_to_mrf()
2966 scan_inst->dst.nr &= ~BRW_MRF_COMPR4; in compute_to_mrf()
2972 scan_inst->dst.nr = inst->dst.nr + rel_offset / REG_SIZE; in compute_to_mrf()
2975 scan_inst->dst.file = MRF; in compute_to_mrf()
2976 scan_inst->dst.offset = inst->dst.offset + rel_offset % REG_SIZE; in compute_to_mrf()
2977 scan_inst->saturate |= inst->saturate; in compute_to_mrf()
3269 foreach_inst_in_block_reverse_starting_from(fs_inst, scan_inst, inst) { in insert_gen4_pre_send_dependency_workarounds()
3273 if (block->start() == scan_inst && block->num != 0) { in insert_gen4_pre_send_dependency_workarounds()
3286 if (scan_inst->dst.file == VGRF) { in insert_gen4_pre_send_dependency_workarounds()
3287 for (unsigned i = 0; i < regs_written(scan_inst); i++) { in insert_gen4_pre_send_dependency_workarounds()
3288 int reg = scan_inst->dst.nr + i; in insert_gen4_pre_send_dependency_workarounds()
3295 if (scan_inst->exec_size == 16) in insert_gen4_pre_send_dependency_workarounds()
3302 clear_deps_for_inst_src(scan_inst, needs_dep, first_write_grf, write_len); in insert_gen4_pre_send_dependency_workarounds()
3335 foreach_inst_in_block_starting_from(fs_inst, scan_inst, inst) { in insert_gen4_post_send_dependency_workarounds()
3337 if (block->end() == scan_inst && block->num != cfg->num_blocks - 1) { in insert_gen4_post_send_dependency_workarounds()
3340 DEP_RESOLVE_MOV(fs_builder(this, block, scan_inst), in insert_gen4_post_send_dependency_workarounds()
3347 clear_deps_for_inst_src(scan_inst, needs_dep, first_write_grf, write_len); in insert_gen4_post_send_dependency_workarounds()
3352 if (scan_inst->dst.file == VGRF && in insert_gen4_post_send_dependency_workarounds()
3353 scan_inst->dst.nr >= first_write_grf && in insert_gen4_post_send_dependency_workarounds()
3354 scan_inst->dst.nr < first_write_grf + write_len && in insert_gen4_post_send_dependency_workarounds()
3355 needs_dep[scan_inst->dst.nr - first_write_grf]) { in insert_gen4_post_send_dependency_workarounds()
3356 DEP_RESOLVE_MOV(fs_builder(this, block, scan_inst), in insert_gen4_post_send_dependency_workarounds()
3357 scan_inst->dst.nr); in insert_gen4_post_send_dependency_workarounds()
3358 needs_dep[scan_inst->dst.nr - first_write_grf] = false; in insert_gen4_post_send_dependency_workarounds()