summaryrefslogtreecommitdiff
path: root/gcc/tree.c
diff options
context:
space:
mode:
authorfroydnj <froydnj@138bc75d-0d04-0410-961f-82ee72b054a4>2010-05-19 00:43:27 +0000
committerfroydnj <froydnj@138bc75d-0d04-0410-961f-82ee72b054a4>2010-05-19 00:43:27 +0000
commit578fcce9dee02ac2ac2a7f76634d8befccc51ef3 (patch)
treec3444f53e82b54b8e92703c7b2c87e709e8b1952 /gcc/tree.c
parentd899db2ae3929fdf21bb8756565abcbed356b1f2 (diff)
downloadgcc-578fcce9dee02ac2ac2a7f76634d8befccc51ef3.tar.gz
Revert:
2010-05-18 Nathan Froyd <froydnj@codesourcery.com> * tree.h (build_call_list): Remove. * tree.c (build_call_list): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159554 138bc75d-0d04-0410-961f-82ee72b054a4
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 9374bfa215d..76be316eef9 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. */