Home | History | Annotate | Download | only in i965

Lines Matching refs:MRF

693  * written and then MOVed into an MRF and making the original write of
694 * the GRF write directly to the MRF instead.
712 inst->dst.file != MRF || inst->src[0].file != GRF ||
717 int mrf = inst->dst.reg;
719 /* Can't compute-to-MRF this GRF if someone else was going to
725 /* We need to check interference with the MRF between this
738 /* We don't handle compute-to-MRF across a swizzle. We would
754 * rewrite everything writing to the GRF into the MRF instead.
764 * a compute-to-MRF.
767 /* SEND instructions can't have MRF as a destination. */
773 * GRF, so no compute-to-MRF for them.
796 * values that end up in MRFs are shortly before the MRF
806 /* You can't read from an MRF, so if someone else reads our
807 * MRF's source GRF that we wanted to rewrite, that stops us.
820 /* If somebody else writes our MRF here, we can't
821 * compute-to-MRF before that.
823 if (scan_inst->dst.file == MRF && mrf == scan_inst->dst.reg)
829 * scan_inst->mlen - 1. Don't go pushing our MRF write up
832 if (mrf >= scan_inst->base_mrf &&
833 mrf < scan_inst->base_mrf + scan_inst->mlen) {
841 * compute-to-MRF, and a scan_inst pointing to the earliest
850 scan_inst->dst.file = MRF;
851 scan_inst->dst.reg = mrf;