Lines Matching refs:rclass

122 small_register_class_p (reg_class_t rclass)
124 return (reg_class_size [(int) rclass] == 1
125 || (reg_class_size [(int) rclass] >= 1
126 && targetm.class_likely_spilled_p (rclass)));
320 enum reg_class rclass = NO_REGS;
360 rclass = (enum reg_class) targetm.secondary_reload (in_p, x, reload_class,
365 if (rclass == NO_REGS && icode == CODE_FOR_nothing)
368 if (rclass != NO_REGS)
369 t_reload = push_secondary_reload (in_p, x, opnum, optional, rclass,
391 gcc_assert (rclass == NO_REGS);
401 rclass = scratch_class;
419 gcc_assert (!in_p || rclass != reload_class || icode != CODE_FOR_nothing
425 && (reg_class_subset_p (rclass, rld[s_reload].rclass)
426 || reg_class_subset_p (rld[s_reload].rclass, rclass))
433 && (small_register_class_p (rclass)
443 if (reg_class_subset_p (rclass, rld[s_reload].rclass))
444 rld[s_reload].rclass = rclass;
464 && targetm.secondary_memory_needed (mode, rclass, reload_class))
475 rld[s_reload].rclass = rclass;
498 && targetm.secondary_memory_needed (mode, reload_class, rclass))
510 secondary_reload_class (bool in_p, reg_class_t rclass, machine_mode mode,
518 rclass
519 = (enum reg_class) targetm.secondary_reload (in_p, x, rclass, mode, &sri);
524 if (icode == CODE_FOR_nothing || rclass != NO_REGS)
525 return rclass;
541 enum reg_class rclass;
549 rclass = reg_class_for_constraint (lookup_constraint (scratch_constraint));
550 gcc_assert (rclass != NO_REGS);
551 return rclass;
645 int rclass;
652 for (rclass = 1; rclass < N_REG_CLASSES; rclass++)
657 if (TEST_HARD_REG_BIT (reg_class_contents[rclass], regno))
662 if (TEST_HARD_REG_BIT (reg_class_contents[rclass], regno + n)
670 cost = register_move_cost (outer, (enum reg_class) rclass, dest_class);
672 if ((reg_class_size[rclass] > best_size
676 best_class = (enum reg_class) rclass;
677 best_size = reg_class_size[rclass];
678 best_cost = register_move_cost (outer, (enum reg_class) rclass,
699 int rclass;
705 for (rclass = 1; rclass < N_REG_CLASSES; rclass++)
711 if (in_hard_reg_set_p (reg_class_contents[rclass], mode, regno)
716 cost = register_move_cost (outer, (enum reg_class) rclass, dest_class);
722 best_class = (enum reg_class) rclass;
724 best_cost = register_move_cost (outer, (enum reg_class) rclass,
747 find_reusable_reload (rtx *p_in, rtx out, enum reg_class rclass,
768 if ((reg_class_subset_p (rclass, rld[i].rclass)
769 || reg_class_subset_p (rld[i].rclass, rclass))
772 || TEST_HARD_REG_BIT (reg_class_contents[(int) rclass],
779 && (small_register_class_p (rclass)
790 if ((reg_class_subset_p (rclass, rld[i].rclass)
791 || reg_class_subset_p (rld[i].rclass, rclass))
795 || TEST_HARD_REG_BIT (reg_class_contents[(int) rclass],
805 && (small_register_class_p (rclass)
969 enum reg_class rclass, machine_mode inmode,
1073 inmode, rclass)
1074 && contains_allocatable_reg_of_mode[rclass][GET_MODE (SUBREG_REG (in))]
1101 || (secondary_reload_class (1, rclass, inmode, in) != NO_REGS
1102 && (secondary_reload_class (1, rclass, GET_MODE (SUBREG_REG (in)),
1155 rclass);
1176 outmode, rclass)
1177 && contains_allocatable_reg_of_mode[rclass][GET_MODE (SUBREG_REG (out))]
1198 || (secondary_reload_class (0, rclass, outmode, out) != NO_REGS
1199 && (secondary_reload_class (0, rclass, GET_MODE (SUBREG_REG (out)),
1271 reg_class_t preferred_class = rclass;
1274 preferred_class = targetm.preferred_reload_class (in, rclass);
1284 rclass = (enum reg_class) preferred_class;
1293 rclass = LIMIT_RELOAD_CLASS (inmode, rclass);
1295 rclass = LIMIT_RELOAD_CLASS (GET_MODE (SUBREG_REG (in)), rclass);
1298 rclass = LIMIT_RELOAD_CLASS (outmode, rclass);
1300 rclass = LIMIT_RELOAD_CLASS (GET_MODE (SUBREG_REG (out)), rclass);
1324 && in_hard_reg_set_p (reg_class_contents[(int) rclass], mode, i))
1349 gcc_assert (rclass != NO_REGS
1352 i = find_reusable_reload (&in, out, rclass, type, opnum, dont_share);
1362 = push_secondary_reload (1, in, opnum, optional, rclass, inmode, type,
1366 = push_secondary_reload (0, out, opnum, optional, rclass, outmode,
1380 && targetm.secondary_memory_needed (inmode, subreg_in_class, rclass))
1386 rld[i].rclass = rclass;
1410 (outmode, rclass, REGNO_REG_CLASS (reg_or_subregno (out)))))
1489 if (reg_class_subset_p (rclass, rld[i].rclass))
1490 rld[i].rclass = rclass;
1560 rld[i].rclass, i,
1638 || ! TEST_HARD_REG_BIT (reg_class_contents[(int) rclass],
1809 && (ira_reg_class_max_nregs [(int)rld[i].rclass][(int) rld[i].inmode]
1810 == ira_reg_class_max_nregs [(int) rld[output_reload].rclass]
1821 ? (rld[i].rclass == rld[output_reload].rclass)
1822 : (reg_class_subset_p (rld[i].rclass,
1823 rld[output_reload].rclass)
1824 || reg_class_subset_p (rld[output_reload].rclass,
1825 rld[i].rclass)))
1843 && (reg_class_size[(int) rld[i].rclass]
1874 if (reg_class_subset_p (rld[output_reload].rclass,
1875 rld[i].rclass))
1876 rld[i].rclass = rld[output_reload].rclass;
1910 && TEST_HARD_REG_BIT (reg_class_contents[(int) rld[output_reload].rclass],
1918 (reg_class_contents[(int) rld[secondary_out].rclass], regno))
1921 (reg_class_contents[(int) rld[secondary_out].rclass],
1960 reg_class_t rclass, int for_real, int earlyclobber)
2003 reg_class_t preferred_class = targetm.preferred_reload_class (in, rclass);
2005 rclass = (enum reg_class) preferred_class;
2041 if (! TEST_HARD_REG_BIT (reg_class_contents[(int) rclass],
2110 if (! TEST_HARD_REG_BIT (reg_class_contents[(int) rclass],
4290 = find_equiv_reg (rld[i].in, insn, rld[i].rclass, -1,
4603 && rld[i].rclass == rld[j].rclass
4629 rld[i].nregs = ira_reg_class_max_nregs [rld[i].rclass][rld[i].mode];
4646 && TEST_HARD_REG_BIT (reg_class_contents[rld[i].rclass], regno)
4653 if (! TEST_HARD_REG_BIT (reg_class_contents[rld[i].rclass], regno + nri))
6078 enum reg_class rclass = context_reg_class;
6079 if (ira_reg_class_max_nregs [rclass][GET_MODE (SUBREG_REG (x))]
6080 > reg_class_size[(int) rclass])
6095 push_reload (tem, NULL_RTX, loc, (rtx*) 0, rclass,
6103 push_reload (x, NULL_RTX, loc, (rtx*) 0, rclass,
6152 find_reloads_address_part (rtx x, rtx *loc, enum reg_class rclass,
6158 || targetm.preferred_reload_class (x, rclass) == NO_REGS))
6168 || targetm.preferred_reload_class (XEXP (x, 1), rclass)
6179 push_reload (x, NULL_RTX, loc, (rtx*) 0, rclass,
6742 find_equiv_reg (rtx goal, rtx_insn *insn, enum reg_class rclass, int other,
6899 else if (!in_hard_reg_set_p (reg_class_contents[(int) rclass],
7369 fprintf (f, "%s, ", reg_class_names[(int) rld[r].rclass]);