aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2005-12-02 17:11:53 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2005-12-02 17:11:53 +0000
commitd82dd39a26f2dbcf7aaa649327050659c1d95a15 (patch)
tree53e7b74cc8c48830a1fcafe6383bae53f37a37ce /gcc
parent6ddd4f6275a34fec5adbe4bc024adf025776dc35 (diff)
downloadgcc-d82dd39a26f2dbcf7aaa649327050659c1d95a15.zip
gcc-d82dd39a26f2dbcf7aaa649327050659c1d95a15.tar.gz
gcc-d82dd39a26f2dbcf7aaa649327050659c1d95a15.tar.bz2
tree.h (build): Remove prototype.
2005-12-02 Richard Guenther <rguenther@suse.de> * tree.h (build): Remove prototype. (build, _buildN1, _buildN2, _buildC1, _buildC2): Remove macros. * tree.c (build): Remove. (build0_stat): Update comment. From-SVN: r107909
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/tree.c59
-rw-r--r--gcc/tree.h13
3 files changed, 8 insertions, 71 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index aa94752..b5aab4d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
2005-12-02 Richard Guenther <rguenther@suse.de>
+ * tree.h (build): Remove prototype.
+ (build, _buildN1, _buildN2, _buildC1, _buildC2): Remove macros.
+ * tree.c (build): Remove.
+ (build0_stat): Update comment.
+
+2005-12-02 Richard Guenther <rguenther@suse.de>
+
* tree-ssa-loop-im.c (schedule_sm): Use buildN instead of build.
* tree-complex.c (update_complex_assignment, expand_complex_div_wide):
Likewise.
diff --git a/gcc/tree.c b/gcc/tree.c
index d5ce531..6a97e41 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -2691,9 +2691,7 @@ do { tree _node = (NODE); \
Constants, decls, types and misc nodes cannot be.
We define 5 non-variadic functions, from 0 to 4 arguments. This is
- enough for all extant tree codes. These functions can be called
- directly (preferably!), but can also be obtained via GCC preprocessor
- magic within the build macro. */
+ enough for all extant tree codes. */
tree
build0_stat (enum tree_code code, tree tt MEM_STAT_DECL)
@@ -2955,61 +2953,6 @@ build7_stat (enum tree_code code, tree tt, tree arg0, tree arg1,
return t;
}
-/* Backup definition for non-gcc build compilers. */
-
-tree
-(build) (enum tree_code code, tree tt, ...)
-{
- tree t, arg0, arg1, arg2, arg3, arg4, arg5, arg6;
- int length = TREE_CODE_LENGTH (code);
- va_list p;
-
- va_start (p, tt);
- switch (length)
- {
- case 0:
- t = build0 (code, tt);
- break;
- case 1:
- arg0 = va_arg (p, tree);
- t = build1 (code, tt, arg0);
- break;
- case 2:
- arg0 = va_arg (p, tree);
- arg1 = va_arg (p, tree);
- t = build2 (code, tt, arg0, arg1);
- break;
- case 3:
- arg0 = va_arg (p, tree);
- arg1 = va_arg (p, tree);
- arg2 = va_arg (p, tree);
- t = build3 (code, tt, arg0, arg1, arg2);
- break;
- case 4:
- arg0 = va_arg (p, tree);
- arg1 = va_arg (p, tree);
- arg2 = va_arg (p, tree);
- arg3 = va_arg (p, tree);
- t = build4 (code, tt, arg0, arg1, arg2, arg3);
- break;
- case 7:
- arg0 = va_arg (p, tree);
- arg1 = va_arg (p, tree);
- arg2 = va_arg (p, tree);
- arg3 = va_arg (p, tree);
- arg4 = va_arg (p, tree);
- arg5 = va_arg (p, tree);
- arg6 = va_arg (p, tree);
- t = build7 (code, tt, arg0, arg1, arg2, arg3, arg4, arg5, arg6);
- break;
- default:
- gcc_unreachable ();
- }
- va_end (p);
-
- return t;
-}
-
/* Similar except don't specify the TREE_TYPE
and leave the TREE_SIDE_EFFECTS as 0.
It is permissible for arguments to be null,
diff --git a/gcc/tree.h b/gcc/tree.h
index 2a1d6e2..6946dd4 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -3137,21 +3137,8 @@ extern tree maybe_get_identifier (const char *);
/* Construct various types of nodes. */
-extern tree build (enum tree_code, tree, ...);
extern tree build_nt (enum tree_code, ...);
-#if GCC_VERSION >= 3000 || __STDC_VERSION__ >= 199901L
-/* Use preprocessor trickery to map "build" to "buildN" where N is the
- expected number of arguments. This is used for both efficiency (no
- varargs), and checking (verifying number of passed arguments). */
-#define build(code, ...) \
- _buildN1(build, _buildC1(__VA_ARGS__))(code, __VA_ARGS__)
-#define _buildN1(BASE, X) _buildN2(BASE, X)
-#define _buildN2(BASE, X) BASE##X
-#define _buildC1(...) _buildC2(__VA_ARGS__,9,8,7,6,5,4,3,2,1,0,0)
-#define _buildC2(x,a1,a2,a3,a4,a5,a6,a7,a8,a9,c,...) c
-#endif
-
extern tree build0_stat (enum tree_code, tree MEM_STAT_DECL);
#define build0(c,t) build0_stat (c,t MEM_STAT_INFO)
extern tree build1_stat (enum tree_code, tree, tree MEM_STAT_DECL);