Lines Matching refs:mode

1 /* CPU mode switching
40 /* We want target macros for the mode switching code to be able to refer
47 and finding all the insns which require a specific mode. Each insn gets
54 mode are given a single entry, without a mode. (Each basic block
61 priority mode, till for each entity all modes are exhausted.
67 either single or double mode to be set.
68 MODE is the mode this insn must be executed in.
75 int mode;
106 new_seginfo (int mode, rtx insn, int bb, HARD_REG_SET regs_live)
110 ptr->mode = mode;
140 denotes that a mode set is to be done on that edge.
142 we are currently handling mode-switching for. */
231 insert the final mode switch before the return value copy
290 different mode than the exit block. */
294 int mode = MODE_NEEDED (e, return_copy);
296 if (mode != num_modes[e] && mode != MODE_EXIT (e))
302 thus we might need to put the final mode switch
361 require a different mode than MODE_EXIT, so if we might
384 /* Find all insns that need a particular mode setting, and insert the
385 necessary mode switches. Return true if we did work. */
450 /* Determine what the first use (if any) need for a mode of entity E is.
451 This will be the mode that is anticipatable for this block.
462 /* Pretend the mode is clobbered across abnormal edges. */
483 int mode = MODE_NEEDED (e, insn);
486 if (mode != no_mode && mode != last_mode)
488 last_mode = mode;
489 ptr = new_seginfo (mode, insn, bb->index, live_now);
509 /* Check for blocks without ANY mode requirements. */
518 int mode = MODE_ENTRY (e);
520 if (mode != no_mode)
531 blocks which compute no mode. This represents the mode on
533 info[bb->index].computing = mode;
536 info[pre_exit->index].seginfo->mode = MODE_EXIT (e);
559 if (info[bb->index].seginfo->mode == m)
568 placement mode switches to modes with priority I. */
577 /* Insert all mode sets that have been inserted by lcm. */
580 /* Wherever we have moved a mode setting upwards in the flow graph,
583 mode of the same entity. First set the aux field of each
590 int mode;
602 mode = current_mode[j];
609 EMIT_MODE_SET (entity_map[j], mode, live_at_edge);
628 /* Cancel the 'deleted' mode set. */
629 bb_info[j][bb->index].seginfo->mode = no_mode;
639 /* Now output the remaining mode sets in all the segments. */
650 if (ptr->mode != no_mode)
655 EMIT_MODE_SET (entity_map[j], ptr->mode, ptr->regs_live);
732 "mode-sw", /* name */