+ if (i == 4 && INSN_P (in_rtx))
+ {
+#ifndef GENERATOR_FILE
+ /* Pretty-print insn locators. Ignore scoping as it is mostly
+ redundant with line number information and do not print anything
+ when there is no location information available. */
+ if (INSN_LOCATOR (in_rtx) && insn_file (in_rtx))
+ fprintf(outfile, " %s:%i", insn_file (in_rtx), insn_line (in_rtx));
+#endif
+ }
+ else if (i == 6 && NOTE_P (in_rtx))
+ {
+ /* This field is only used for NOTE_INSN_DELETED_LABEL, and
+ other times often contains garbage from INSN->NOTE death. */
+ if (NOTE_LINE_NUMBER (in_rtx) == NOTE_INSN_DELETED_LABEL)
+ fprintf (outfile, " %d", XINT (in_rtx, i));
+ }
+ else
+ {
+ int value = XINT (in_rtx, i);
+ const char *name;
+
+#ifndef GENERATOR_FILE
+ if (REG_P (in_rtx) && value < FIRST_PSEUDO_REGISTER)
+ fprintf (outfile, " %d %s", REGNO (in_rtx),
+ reg_names[REGNO (in_rtx)]);
+ else if (REG_P (in_rtx)
+ && value <= LAST_VIRTUAL_REGISTER)
+ {
+ if (value == VIRTUAL_INCOMING_ARGS_REGNUM)
+ fprintf (outfile, " %d virtual-incoming-args", value);
+ else if (value == VIRTUAL_STACK_VARS_REGNUM)
+ fprintf (outfile, " %d virtual-stack-vars", value);
+ else if (value == VIRTUAL_STACK_DYNAMIC_REGNUM)
+ fprintf (outfile, " %d virtual-stack-dynamic", value);
+ else if (value == VIRTUAL_OUTGOING_ARGS_REGNUM)
+ fprintf (outfile, " %d virtual-outgoing-args", value);
+ else if (value == VIRTUAL_CFA_REGNUM)
+ fprintf (outfile, " %d virtual-cfa", value);
+ else
+ fprintf (outfile, " %d virtual-reg-%d", value,
+ value-FIRST_VIRTUAL_REGISTER);
+ }
+ else
+#endif
+ if (flag_dump_unnumbered
+ && (is_insn || NOTE_P (in_rtx)))
+ fputc ('#', outfile);
+ else
+ fprintf (outfile, " %d", value);