aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDJ Delorie <dj@redhat.com>2003-03-21 01:03:01 -0500
committerDJ Delorie <dj@gcc.gnu.org>2003-03-21 01:03:01 -0500
commitf3cd0185705330987114d311f0c3d9a172c543fb (patch)
tree666ec43b8e664a1fd151aa90fb4a96b019039ba4
parent70e5e841b8b9310716018a98acfb8e918c3b4f13 (diff)
downloadgcc-f3cd0185705330987114d311f0c3d9a172c543fb.zip
gcc-f3cd0185705330987114d311f0c3d9a172c543fb.tar.gz
gcc-f3cd0185705330987114d311f0c3d9a172c543fb.tar.bz2
stormy16.c (xstormy16_expand_arith): Make sure we always emit at least one insn.
* config/stormy16/stormy16.c (xstormy16_expand_arith): Make sure we always emit at least one insn. From-SVN: r64644
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/stormy16/stormy16.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0931e8e..118ff21 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2003-03-21 DJ Delorie <dj@redhat.com>
+
+ * config/stormy16/stormy16.c (xstormy16_expand_arith): Make
+ sure we always emit at least one insn.
+
2003-03-21 Christopher Faylor <cgf@redhat.com>
* config.gcc (i[34567]86-*-cygwin*): Use new common makefile
diff --git a/gcc/config/stormy16/stormy16.c b/gcc/config/stormy16/stormy16.c
index 597c4dd..9ab984d 100644
--- a/gcc/config/stormy16/stormy16.c
+++ b/gcc/config/stormy16/stormy16.c
@@ -1971,6 +1971,11 @@ xstormy16_expand_arith (mode, code, dest, src0, src1, carry)
firstloop = 0;
emit (insn);
}
+
+ /* If we emit nothing, try_split() will think we failed. So emit
+ something that does nothing and can be optimized away. */
+ if (firstloop)
+ emit (gen_nop ());
}
/* Return 1 if OP is a shift operator. */