20040917-1.c: New test.
authorKenneth Zadeck <Kenneth.Zadeck@NaturalBridge.com>
Fri, 17 Sep 2004 21:49:39 +0000 (21:49 +0000)
committerDiego Novillo <dnovillo@gcc.gnu.org>
Fri, 17 Sep 2004 21:49:39 +0000 (17:49 -0400)
2004-09-17  Kenneth Zadeck  <Kenneth.Zadeck@NaturalBridge.com>

* gcc.c-torture/execute/20040917-1.c: New test.

From-SVN: r87674

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/20040917-1.c [new file with mode: 0644]

index 815bbbf7995266d2e07a91cc6a631105fad07ea3..c9d44bbc529fbaff305eaccf0709fef07259d712 100644 (file)
@@ -1,3 +1,7 @@
+2004-09-17  Kenneth Zadeck  <Kenneth.Zadeck@NaturalBridge.com>
+
+       * gcc.c-torture/execute/20040917-1.c: New test.
+
 2004-09-17  Diego Novillo  <dnovillo@redhat.com>
 
        PR tree-optimization/17319
diff --git a/gcc/testsuite/gcc.c-torture/execute/20040917-1.c b/gcc/testsuite/gcc.c-torture/execute/20040917-1.c
new file mode 100644 (file)
index 0000000..73bc6c6
--- /dev/null
@@ -0,0 +1,32 @@
+/* submitted by kenneth zadeck */
+
+static int test_var;
+
+/* the idea here is that not only is inlinable, inlinable but since it
+   is static, the cgraph node will not be marked as output.  The
+   current version of the code ignores these cgraph nodes.  */
+
+void not_inlinable()  __attribute__((noinline));
+
+static void  
+inlinable ()
+{
+  test_var = -10;
+}
+
+void 
+not_inlinable ()
+{
+  inlinable();
+}
+
+main ()
+{
+  test_var = 10;
+  /* Variable test_var should be considered call-clobbered by the call
+     to not_inlinable().  */
+  not_inlinable ();
+  if (test_var == 10)
+    abort ();
+  return 0;
+}