Commit 1427d6d2 by Richard Kenner

(insn_cuid): New function.

(INSN_CUID): Sometimes call it.

From-SVN: r11986
parent fc94a55b
...@@ -140,9 +140,8 @@ static int max_uid_cuid; ...@@ -140,9 +140,8 @@ static int max_uid_cuid;
/* Get the cuid of an insn. */ /* Get the cuid of an insn. */
#define INSN_CUID(INSN) (INSN_UID (INSN) > max_uid_cuid \ #define INSN_CUID(INSN) \
? (abort(), 0) \ (INSN_UID (INSN) > max_uid_cuid ? insn_cuid (INSN) : uid_cuid[INSN_UID (INSN)])
: uid_cuid[INSN_UID (INSN)])
/* Maximum register number, which is the size of the tables below. */ /* Maximum register number, which is the size of the tables below. */
...@@ -446,6 +445,7 @@ static int reg_bitfield_target_p PROTO((rtx, rtx)); ...@@ -446,6 +445,7 @@ static int reg_bitfield_target_p PROTO((rtx, rtx));
static void distribute_notes PROTO((rtx, rtx, rtx, rtx, rtx, rtx)); static void distribute_notes PROTO((rtx, rtx, rtx, rtx, rtx, rtx));
static void distribute_links PROTO((rtx)); static void distribute_links PROTO((rtx));
static void mark_used_regs_combine PROTO((rtx)); static void mark_used_regs_combine PROTO((rtx));
static int insn_cuid PROTO((rtx));
/* Main entry point for combiner. F is the first insn of the function. /* Main entry point for combiner. F is the first insn of the function.
NREGS is the first unused pseudo-reg number. */ NREGS is the first unused pseudo-reg number. */
...@@ -11191,6 +11191,22 @@ distribute_links (links) ...@@ -11191,6 +11191,22 @@ distribute_links (links)
} }
} }
/* Compute INSN_CUID for INSN, which is an insn made by combine. */
static int
insn_cuid (insn)
rtx insn;
{
while (insn != 0 && INSN_UID (insn) > max_uid_cuid
&& GET_CODE (insn) == INSN && GET_CODE (PATTERN (insn)) == USE)
insn = NEXT_INSN (insn);
if (INSN_UID (insn) > max_uid_cuid)
abort ();
return INSN_CUID (insn);
}
void void
dump_combine_stats (file) dump_combine_stats (file)
FILE *file; FILE *file;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment