diff options
Diffstat (limited to 'gcc/testsuite')
-rw-r--r-- | gcc/testsuite/treelang/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/treelang/compile/extrafunc.tree | 24 | ||||
-rw-r--r-- | gcc/testsuite/treelang/compile/extravar.tree | 13 |
3 files changed, 41 insertions, 0 deletions
diff --git a/gcc/testsuite/treelang/ChangeLog b/gcc/testsuite/treelang/ChangeLog index 878f541..db4d022 100644 --- a/gcc/testsuite/treelang/ChangeLog +++ b/gcc/testsuite/treelang/ChangeLog @@ -1,5 +1,9 @@ 2005-02-26 James A. Morrison <phython@gcc.gnu.org> + * compile/extrafunc.tree, compile/extravar.tree: New tests. + +2005-02-26 James A. Morrison <phython@gcc.gnu.org> + * compile/unsigned.tree: New test. 2005-02-24 James A. Morrison <phython@gcc.gnu.org> diff --git a/gcc/testsuite/treelang/compile/extrafunc.tree b/gcc/testsuite/treelang/compile/extrafunc.tree new file mode 100644 index 0000000..6682a11 --- /dev/null +++ b/gcc/testsuite/treelang/compile/extrafunc.tree @@ -0,0 +1,24 @@ +// { dg-do compile } +// { dg-options "-O2 -fdump-tree-optimized -Wunused-function" } +// Check to see that unused functions get removed at -O2 and +// above. +static int foo (int bar); +static int baz (int aaa); +external_definition int ext (int bbb); + +foo +{ + return bar; +} + +baz // { dg-warning "defined but not used" } +{ + return foo (aaa); +} + +ext +{ + return foo (bbb); +} + +// { dg-final { scan-tree-dump-not "baz" "optimized" } } diff --git a/gcc/testsuite/treelang/compile/extravar.tree b/gcc/testsuite/treelang/compile/extravar.tree new file mode 100644 index 0000000..5c6b586 --- /dev/null +++ b/gcc/testsuite/treelang/compile/extravar.tree @@ -0,0 +1,13 @@ +// { dg-do compile } +// { dg-options "-fdump-tree-vars -O1 -Wunused-variable" } +external_definition int bar (int aaa, int ddd); + +static int foo = -3; // { dg-warning "defined but not used" } + +bar +{ + automatic int ccc; + + return aaa + ddd + +3; +} +// { dg-final { scan-tree-dump-not "ccc" "vars" } } |