aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDoug Evans <dje@gnu.org>1997-03-28 22:39:39 +0000
committerDoug Evans <dje@gnu.org>1997-03-28 22:39:39 +0000
commit740a5d9232bf2e89d7e459beed951c9406713c5f (patch)
tree33a7ffb75c6baff458d7b68f48dc33aae4324994 /gcc
parentf6e3c1bb7e1b29fbcf26b20c8fcc785d52662d9f (diff)
downloadgcc-740a5d9232bf2e89d7e459beed951c9406713c5f.zip
gcc-740a5d9232bf2e89d7e459beed951c9406713c5f.tar.gz
gcc-740a5d9232bf2e89d7e459beed951c9406713c5f.tar.bz2
sched.c (update_flow_info): Handle REG_EXEC_COUNT and REG_BR_PROB notes.
* sched.c (update_flow_info): Handle REG_EXEC_COUNT and REG_BR_PROB notes. From-SVN: r13822
Diffstat (limited to 'gcc')
-rw-r--r--gcc/sched.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/gcc/sched.c b/gcc/sched.c
index edd5f65..d7fe1ca 100644
--- a/gcc/sched.c
+++ b/gcc/sched.c
@@ -1,5 +1,5 @@
/* Instruction scheduling pass.
- Copyright (C) 1992, 93-95, 1996 Free Software Foundation, Inc.
+ Copyright (C) 1992, 93-96, 1997 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com)
Enhanced by, and currently maintained by, Jim Wilson (wilson@cygnus.com)
@@ -4565,6 +4565,12 @@ update_flow_info (notes, first, last, orig_insn)
XEXP (note, 0) = first;
break;
+ case REG_EXEC_COUNT:
+ /* Move a REG_EXEC_COUNT note to the first insn created. */
+ XEXP (note, 1) = REG_NOTES (first);
+ REG_NOTES (first) = note;
+ break;
+
case REG_RETVAL:
/* Move a REG_RETVAL note to the last insn created, and update
the corresponding REG_LIBCALL note. */
@@ -4578,6 +4584,7 @@ update_flow_info (notes, first, last, orig_insn)
break;
case REG_NONNEG:
+ case REG_BR_PROB:
/* This should be moved to whichever instruction is a JUMP_INSN. */
for (insn = last; ; insn = PREV_INSN (insn))