Lines Matching refs:pcopy
730 /* If spilling an immed/const pcopy src, we need to actually materialize it
1120 * only used as part of the pcopy accounting. See below.
1141 is_last_pcopy_src(struct ir3_instruction *pcopy, unsigned src_n)
1143 struct ir3_register *src = pcopy->srcs[src_n];
1146 for (unsigned j = src_n + 1; j < pcopy->srcs_count; j++) {
1147 if (pcopy->srcs[j]->def == src->def)
1194 handle_pcopy(struct ra_spill_ctx *ctx, struct ir3_instruction *pcopy)
1196 foreach_dst (dst, pcopy) {
1201 foreach_src_n (src, i, pcopy) {
1203 struct ir3_register *dst = pcopy->dsts[i];
1216 if (is_last_pcopy_src(pcopy, i))
1220 limit(ctx, pcopy);
1231 limit(ctx, pcopy);
1232 reload_src(ctx, pcopy, src);
1234 if (is_last_pcopy_src(pcopy, i))
1235 remove_src(ctx, pcopy, src);
1242 limit(ctx, pcopy);
1250 d("done with pcopy srcs");
1252 foreach_src_n (src, i, pcopy) {
1253 struct ir3_register *dst = pcopy->dsts[i];
1265 limit(ctx, pcopy);
1280 limit(ctx, pcopy);
1281 reload_src(ctx, pcopy, src);
1282 remove_src(ctx, pcopy, src);
1289 pcopy->flags |= IR3_INSTR_UNUSED;
1972 /* Simple pass to remove now-dead phi nodes and pcopy instructions. We mark