aboutsummaryrefslogtreecommitdiff
path: root/gcc/final.c
diff options
context:
space:
mode:
authorVladimir Makarov <vmakarov@tofu.to.cygnus.com>1999-03-22 07:56:09 +0000
committerVladimir Makarov <vmakarov@gcc.gnu.org>1999-03-22 07:56:09 +0000
commit04b6000c8295a88c4e6a53f6226ad92657e588fb (patch)
tree2224bcc4032e992fb0d566a198b4ea8e539c70ae /gcc/final.c
parent4b9f933c7c0a006110f999f43867a880390fa2e0 (diff)
downloadgcc-04b6000c8295a88c4e6a53f6226ad92657e588fb.zip
gcc-04b6000c8295a88c4e6a53f6226ad92657e588fb.tar.gz
gcc-04b6000c8295a88c4e6a53f6226ad92657e588fb.tar.bz2
h8300.md (adjust_length): New attribute.
Mon Mar 22 10:44:33 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com> * config/h8300/h8300.md (adjust_length): New attribute. (modhi3+1, andsi3+1, iorsi3+1, extzv+1, extzv+2): Change insn default value of attribute "adjust_length" onto "no". * config/h8300/h8300.c (h8300_adjust_insn_length): Use 0 if the shift is negative. * final.c (shorten_branches): Check insn length after its adjusting. From-SVN: r25895
Diffstat (limited to 'gcc/final.c')
-rw-r--r--gcc/final.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/final.c b/gcc/final.c
index e82d5e9..3cd2e0c 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -1318,6 +1318,8 @@ shorten_branches (first)
/* If needed, do any adjustment. */
#ifdef ADJUST_INSN_LENGTH
ADJUST_INSN_LENGTH (insn, insn_lengths[uid]);
+ if (insn_lengths[uid] < 0)
+ fatal_insn ("Negative insn length", insn);
#endif
}