Lines Matching defs:spill_fill_data

2633 struct spill_fill_data
2646 static struct spill_fill_data spill_fill_data;
2653 spill_fill_data.init_after = get_last_insn ();
2654 spill_fill_data.init_reg[0] = init_reg;
2655 spill_fill_data.init_reg[1] = init_reg;
2656 spill_fill_data.prev_addr[0] = NULL;
2657 spill_fill_data.prev_addr[1] = NULL;
2658 spill_fill_data.prev_insn[0] = NULL;
2659 spill_fill_data.prev_insn[1] = NULL;
2660 spill_fill_data.prev_off[0] = cfa_off;
2661 spill_fill_data.prev_off[1] = cfa_off;
2662 spill_fill_data.next_iter = 0;
2663 spill_fill_data.save_gr_used_mask = current_frame_info.gr_used_mask;
2665 spill_fill_data.n_iter = 1 + (n_spills > 2);
2666 for (i = 0; i < spill_fill_data.n_iter; ++i)
2669 spill_fill_data.iter_reg[i] = gen_rtx_REG (DImode, regno);
2677 current_frame_info.gr_used_mask = spill_fill_data.save_gr_used_mask;
2683 int iter = spill_fill_data.next_iter;
2684 HOST_WIDE_INT disp = spill_fill_data.prev_off[iter] - cfa_off;
2688 if (spill_fill_data.prev_addr[iter])
2692 *spill_fill_data.prev_addr[iter]
2693 = gen_rtx_POST_MODIFY (DImode, spill_fill_data.iter_reg[iter],
2695 spill_fill_data.iter_reg[iter],
2697 REG_NOTES (spill_fill_data.prev_insn[iter])
2698 = gen_rtx_EXPR_LIST (REG_INC, spill_fill_data.iter_reg[iter],
2699 REG_NOTES (spill_fill_data.prev_insn[iter]));
2710 emit_insn (gen_adddi3 (spill_fill_data.iter_reg[iter],
2711 spill_fill_data.iter_reg[iter], disp_rtx));
2719 && spill_fill_data.init_reg[iter] == stack_pointer_rtx
2731 seq = gen_movdi (spill_fill_data.iter_reg[iter],
2732 spill_fill_data.init_reg[iter]);
2744 emit_insn (gen_adddi3 (spill_fill_data.iter_reg[iter],
2745 spill_fill_data.init_reg[iter],
2753 if (spill_fill_data.init_after)
2754 insn = emit_insn_after (seq, spill_fill_data.init_after);
2763 spill_fill_data.init_after = insn;
2776 mem = gen_rtx_MEM (GET_MODE (reg), spill_fill_data.iter_reg[iter]);
2783 spill_fill_data.prev_addr[iter] = &XEXP (mem, 0);
2784 spill_fill_data.prev_off[iter] = cfa_off;
2786 if (++iter >= spill_fill_data.n_iter)
2788 spill_fill_data.next_iter = iter;
2797 int iter = spill_fill_data.next_iter;
2802 spill_fill_data.prev_insn[iter] = insn;
2839 int iter = spill_fill_data.next_iter;
2844 spill_fill_data.prev_insn[iter] = insn;