aboutsummaryrefslogtreecommitdiff
path: root/gcc/final.c
diff options
context:
space:
mode:
authorBernd Schmidt <bernds@redhat.co.uk>2000-09-19 16:43:36 +0000
committerBernd Schmidt <crux@gcc.gnu.org>2000-09-19 16:43:36 +0000
commitafc6898e108fcbf573a93371a2ad99481a0a1867 (patch)
tree076e920c0ca81df26d7b924132f591649f9641d1 /gcc/final.c
parent3fbef42f148344c3a58ffdb279485039bb0afa36 (diff)
downloadgcc-afc6898e108fcbf573a93371a2ad99481a0a1867.zip
gcc-afc6898e108fcbf573a93371a2ad99481a0a1867.tar.gz
gcc-afc6898e108fcbf573a93371a2ad99481a0a1867.tar.bz2
Fix shorten_branches bugs
From-SVN: r36538
Diffstat (limited to 'gcc/final.c')
-rw-r--r--gcc/final.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/final.c b/gcc/final.c
index c22df2f..bfd4754 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -932,8 +932,9 @@ insn_current_reference_address (branch)
return insn_current_address;
dest = JUMP_LABEL (branch);
- /* BRANCH has no proper alignment chain set, so use SEQ. */
- if (INSN_SHUID (branch) < INSN_SHUID (dest))
+ /* BRANCH has no proper alignment chain set, so use SEQ.
+ BRANCH also has no INSN_SHUID. */
+ if (INSN_SHUID (seq) < INSN_SHUID (dest))
{
/* Forward branch. */
return (insn_last_address + insn_lengths[seq_uid]
@@ -1241,7 +1242,6 @@ shorten_branches (first)
int align = 1 << log;
int new_address = (insn_current_address + align - 1) & -align;
insn_lengths[uid] = new_address - insn_current_address;
- insn_current_address = new_address;
}
}