Lines Matching defs:chain

370   struct insn_chain *chain, *next;
380 for (chain = reload_insn_chain; chain != 0; chain = next)
382 rtx insn = chain->insn;
385 next = chain->next;
387 gcc_assert (!chain->is_caller_save_insn);
410 regno += insert_restore (chain, 1, regno, MOVE_MAX_WORDS, save_mode);
422 &chain->live_throughout);
433 (&chain->live_throughout, FIRST_PSEUDO_REGISTER, regno, rsi)
470 regno += insert_save (chain, 1, regno, &hard_regs_to_save, save_mode);
480 if (chain->next == 0 || chain->next->block > chain->block)
490 regno += insert_restore (chain, JUMP_P (insn),
641 insert_restore (struct insn_chain *chain, int before_p, int regno,
696 new = insert_one_insn (chain, before_p, code, pat);
713 insert_save (struct insn_chain *chain, int before_p, int regno,
768 new = insert_one_insn (chain, before_p, code, pat);
784 insert_one_insn (struct insn_chain *chain, int before_p, int code, rtx pat)
786 rtx insn = chain->insn;
799 chain = chain->prev, insn = chain->insn;
807 new->prev = chain->prev;
813 chain->prev = new;
814 new->next = chain;
818 COPY_REG_SET (&new->live_throughout, &chain->live_throughout);
820 for (link = REG_NOTES (chain->insn); link; link = XEXP (link, 1))
839 if (chain->insn == BB_HEAD (BASIC_BLOCK (chain->block)))
840 BB_HEAD (BASIC_BLOCK (chain->block)) = new->insn;
844 new->next = chain->next;
847 chain->next = new;
848 new->prev = chain;
852 COPY_REG_SET (&new->live_throughout, &chain->live_throughout);
856 note_stores (PATTERN (chain->insn), add_stored_regs,
859 if (chain->insn == BB_END (BASIC_BLOCK (chain->block)))
860 BB_END (BASIC_BLOCK (chain->block)) = new->insn;
862 new->block = chain->block;