aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.c
diff options
context:
space:
mode:
authorNathan Froyd <froydnj@codesourcery.com>2010-05-19 00:43:27 +0000
committerNathan Froyd <froydnj@gcc.gnu.org>2010-05-19 00:43:27 +0000
commit39b27b3a47310b99510dd1124a75c5b7f65bb82a (patch)
treec3444f53e82b54b8e92703c7b2c87e709e8b1952 /gcc/tree.c
parent0a9f28e7fd6862562d6cef7009f0cce180902da0 (diff)
downloadgcc-39b27b3a47310b99510dd1124a75c5b7f65bb82a.zip
gcc-39b27b3a47310b99510dd1124a75c5b7f65bb82a.tar.gz
gcc-39b27b3a47310b99510dd1124a75c5b7f65bb82a.tar.bz2
Revert:
2010-05-18 Nathan Froyd <froydnj@codesourcery.com> * tree.h (build_call_list): Remove. * tree.c (build_call_list): Remove. From-SVN: r159554
Diffstat (limited to 'gcc/tree.c')
-rw-r--r--gcc/tree.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/tree.c b/gcc/tree.c
index 9374bfa..76be316 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -9486,6 +9486,27 @@ build_vl_exp_stat (enum tree_code code, int len MEM_STAT_DECL)
return t;
}
+
+/* Build a CALL_EXPR of class tcc_vl_exp with the indicated RETURN_TYPE
+ and FN and a null static chain slot. ARGLIST is a TREE_LIST of the
+ arguments. */
+
+tree
+build_call_list (tree return_type, tree fn, tree arglist)
+{
+ tree t;
+ int i;
+
+ t = build_vl_exp (CALL_EXPR, list_length (arglist) + 3);
+ TREE_TYPE (t) = return_type;
+ CALL_EXPR_FN (t) = fn;
+ CALL_EXPR_STATIC_CHAIN (t) = NULL_TREE;
+ for (i = 0; arglist; arglist = TREE_CHAIN (arglist), i++)
+ CALL_EXPR_ARG (t, i) = TREE_VALUE (arglist);
+ process_call_operands (t);
+ return t;
+}
+
/* Build a CALL_EXPR of class tcc_vl_exp with the indicated RETURN_TYPE and
FN and a null static chain slot. NARGS is the number of call arguments
which are specified as "..." arguments. */