Lines Matching refs:from_interval

1708     Interval* from_interval = interval_at_block_end(from_block, r);
1711 if (from_interval != to_interval && (from_interval->assigned_reg() != to_interval->assigned_reg() || from_interval->assigned_regHi() != to_interval->assigned_regHi())) {
1713 move_resolver.add_mapping(from_interval, to_interval);
1900 // but from_interval is more complicated because of phi functions
1921 Interval* from_interval = interval_at_op_id(from_value->operand()->vreg_number(), throwing_op_id);
1922 move_resolver.add_mapping(from_interval, to_interval);
1926 // no phi function, so use reg_num also for from_interval
1928 Interval* from_interval = interval_at_op_id(reg_num, throwing_op_id);
1929 if (from_interval != to_interval) {
1932 if (!from_interval->always_in_memory() || from_interval->canonical_spill_slot() != to_interval->assigned_reg()) {
1933 move_resolver.add_mapping(from_interval, to_interval);
3834 void MoveResolver::insert_move(Interval* from_interval, Interval* to_interval) {
3835 assert(from_interval->reg_num() != to_interval->reg_num(), "from and to interval equal");
3836 assert(from_interval->type() == to_interval->type(), "move between different types");
3840 LIR_Opr from_opr = LIR_OprFact::virtual_register(from_interval->reg_num(), from_interval->type());
3851 TRACE_LINEAR_SCAN(4, tty->print_cr("MoveResolver: inserted move from register %d (%d, %d) to %d (%d, %d)", from_interval->reg_num(), from_interval->assigned_reg(), from_interval->assigned_regHi(), to_interval->reg_num(), to_interval->assigned_reg(), to_interval->assigned_regHi()));
3875 Interval* from_interval = _mapping_from.at(i);
3876 if (from_interval != NULL) {
3877 block_registers(from_interval);
3886 Interval* from_interval = _mapping_from.at(i);
3889 if (save_to_process_move(from_interval, to_interval)) {
3891 if (from_interval != NULL) {
3892 insert_move(from_interval, to_interval);
3893 unblock_registers(from_interval);
3902 } else if (from_interval != NULL && from_interval->assigned_reg() < LinearScan::nof_regs) {
3915 Interval* from_interval = _mapping_from.at(spill_candidate);
3917 spill_interval->set_type(from_interval->type());
3924 // use spill slot assigned to from_interval. Otherwise moves from
3926 int spill_slot = from_interval->canonical_spill_slot();
3929 from_interval->set_canonical_spill_slot(spill_slot);
3937 insert_move(from_interval, spill_interval);
3939 unblock_registers(from_interval);
3979 void MoveResolver::add_mapping(Interval* from_interval, Interval* to_interval) {
3980 TRACE_LINEAR_SCAN(4, tty->print_cr("MoveResolver: adding mapping from %d (%d, %d) to %d (%d, %d)", from_interval->reg_num(), from_interval->assigned_reg(), from_interval->assigned_regHi(), to_interval->reg_num(), to_interval->assigned_reg(), to_interval->assigned_regHi()));
3982 _mapping_from.append(from_interval);