summaryrefslogtreecommitdiff
path: root/gcc/testsuite/treelang/a01gcci01.tree
diff options
context:
space:
mode:
authortimjosling <timjosling@138bc75d-0d04-0410-961f-82ee72b054a4>2002-05-05 04:24:18 +0000
committertimjosling <timjosling@138bc75d-0d04-0410-961f-82ee72b054a4>2002-05-05 04:24:18 +0000
commit093e265a685ad7f1ee80eef067107506ee6ba1ff (patch)
treef9f7f1ab980437234d5a7681a7427727d00adb41 /gcc/testsuite/treelang/a01gcci01.tree
parente674ed1be813e87aa63608a55b693b795bcc47b6 (diff)
downloadgcc-093e265a685ad7f1ee80eef067107506ee6ba1ff.tar.gz
Added new sample language treelang.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@53169 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/treelang/a01gcci01.tree')
-rw-r--r--gcc/testsuite/treelang/a01gcci01.tree39
1 files changed, 39 insertions, 0 deletions
diff --git a/gcc/testsuite/treelang/a01gcci01.tree b/gcc/testsuite/treelang/a01gcci01.tree
new file mode 100644
index 00000000000..e1e1ac1659f
--- /dev/null
+++ b/gcc/testsuite/treelang/a01gcci01.tree
@@ -0,0 +1,39 @@
+// -*- c -*- c mode in emacs
+
+external_definition int add(int arg1, int arg2);
+external_definition int subtract(int arg3, int arg4);
+external_definition int first_nonzero(int arg5, int arg6);
+external_definition int double_plus_one(int arg7);
+
+add
+{
+ return arg1 + arg2;
+}
+
+
+subtract
+{
+ return arg3 - arg4;
+}
+
+double_plus_one
+{
+ automatic int aaa;
+ aaa=add(arg7, arg7);
+ aaa=add(aaa, aaa);
+ aaa=subtract(subtract(aaa, arg7), arg7) + 1;
+ return aaa;
+}
+
+first_nonzero
+{
+ if (arg5)
+ {
+ return arg5;
+ }
+ else
+ {
+ }
+ return arg6;
+}
+