diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 5c688632e9e61bc5b934be19139438ef449c4686..38b1d24b7ebe46bbd516f0d7a48570945d81ea88 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2004-08-23  Roger Sayle  <roger@eyesopen.com>
+
+	PR rtl-optimization/17078
+	* gcc.c-torture/execute/pr17078-1.c: New test case.
+
 2004-08-23  Mark Mitchell  <mark@codesourcery.com>
 
 	PR c/14492
diff --git a/gcc/testsuite/gcc.c-torture/execute/pr17078-1.c b/gcc/testsuite/gcc.c-torture/execute/pr17078-1.c
new file mode 100644
index 0000000000000000000000000000000000000000..9380bf48593ee2991723b6752284545c2bdd5eb0
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/pr17078-1.c
@@ -0,0 +1,25 @@
+extern void abort(void);
+
+void test(int *ptr)
+{
+  int i = 1;
+  goto useless;
+  if (0)
+    {
+      useless:
+      i = 0;
+    }
+  else
+    i = 1;
+  *ptr = i;
+}
+
+int main()
+{
+  int i = 1;
+  test(&i);
+  if (i)
+    abort ();
+  return 0;
+}
+