Lines Matching defs:spill_fill_data

2660 struct spill_fill_data
2673 static struct spill_fill_data spill_fill_data;
2680 spill_fill_data.init_after = get_last_insn ();
2681 spill_fill_data.init_reg[0] = init_reg;
2682 spill_fill_data.init_reg[1] = init_reg;
2683 spill_fill_data.prev_addr[0] = NULL;
2684 spill_fill_data.prev_addr[1] = NULL;
2685 spill_fill_data.prev_insn[0] = NULL;
2686 spill_fill_data.prev_insn[1] = NULL;
2687 spill_fill_data.prev_off[0] = cfa_off;
2688 spill_fill_data.prev_off[1] = cfa_off;
2689 spill_fill_data.next_iter = 0;
2690 spill_fill_data.save_gr_used_mask = current_frame_info.gr_used_mask;
2692 spill_fill_data.n_iter = 1 + (n_spills > 2);
2693 for (i = 0; i < spill_fill_data.n_iter; ++i)
2696 spill_fill_data.iter_reg[i] = gen_rtx_REG (DImode, regno);
2704 current_frame_info.gr_used_mask = spill_fill_data.save_gr_used_mask;
2710 int iter = spill_fill_data.next_iter;
2711 HOST_WIDE_INT disp = spill_fill_data.prev_off[iter] - cfa_off;
2715 if (spill_fill_data.prev_addr[iter])
2719 *spill_fill_data.prev_addr[iter]
2720 = gen_rtx_POST_MODIFY (DImode, spill_fill_data.iter_reg[iter],
2722 spill_fill_data.iter_reg[iter],
2724 REG_NOTES (spill_fill_data.prev_insn[iter])
2725 = gen_rtx_EXPR_LIST (REG_INC, spill_fill_data.iter_reg[iter],
2726 REG_NOTES (spill_fill_data.prev_insn[iter]));
2737 emit_insn (gen_adddi3 (spill_fill_data.iter_reg[iter],
2738 spill_fill_data.iter_reg[iter], disp_rtx));
2746 && spill_fill_data.init_reg[iter] == stack_pointer_rtx
2758 seq = gen_movdi (spill_fill_data.iter_reg[iter],
2759 spill_fill_data.init_reg[iter]);
2771 emit_insn (gen_adddi3 (spill_fill_data.iter_reg[iter],
2772 spill_fill_data.init_reg[iter],
2780 if (spill_fill_data.init_after)
2781 insn = emit_insn_after (seq, spill_fill_data.init_after);
2790 spill_fill_data.init_after = insn;
2803 mem = gen_rtx_MEM (GET_MODE (reg), spill_fill_data.iter_reg[iter]);
2810 spill_fill_data.prev_addr[iter] = &XEXP (mem, 0);
2811 spill_fill_data.prev_off[iter] = cfa_off;
2813 if (++iter >= spill_fill_data.n_iter)
2815 spill_fill_data.next_iter = iter;
2824 int iter = spill_fill_data.next_iter;
2829 spill_fill_data.prev_insn[iter] = insn;
2866 int iter = spill_fill_data.next_iter;
2871 spill_fill_data.prev_insn[iter] = insn;