aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.h
diff options
context:
space:
mode:
authorBernd Schmidt <bernds@cygnus.co.uk>2000-06-25 17:27:28 +0000
committerBernd Schmidt <crux@gcc.gnu.org>2000-06-25 17:27:28 +0000
commit4061f623a6ab220259c77be5f97617a05aa67d51 (patch)
tree522edcaf344f0a935b66520b90ff7de25127be81 /gcc/tree.h
parentf1ff439a50500c09c7f8016ca00dfe0bfd1109a2 (diff)
downloadgcc-4061f623a6ab220259c77be5f97617a05aa67d51.zip
gcc-4061f623a6ab220259c77be5f97617a05aa67d51.tar.gz
gcc-4061f623a6ab220259c77be5f97617a05aa67d51.tar.bz2
Vector support: type node creation & debugging support
From-SVN: r34696
Diffstat (limited to 'gcc/tree.h')
-rw-r--r--gcc/tree.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/tree.h b/gcc/tree.h
index f683357..bb6602c 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -887,6 +887,11 @@ struct tree_block
#define TYPE_OBSTACK(NODE) (TYPE_CHECK (NODE)->type.obstack)
#define TYPE_LANG_SPECIFIC(NODE) (TYPE_CHECK (NODE)->type.lang_specific)
+/* For a VECTOR_TYPE node, this describes a different type which is emitted
+ in the debugging output. We use this to describe a vector as a
+ structure containing an array. */
+#define TYPE_DEBUG_REPRESENTATION_TYPE(NODE) (TYPE_CHECK (NODE)->type.values)
+
/* Indirect types present difficulties because they may be represented
as either POINTER_TYPE/REFERENCE_TYPE nodes (unbounded) or as
RECORD_TYPE nodes (bounded). Bounded and unbounded pointers might
@@ -1722,6 +1727,12 @@ enum tree_index
TI_PTRDIFF_TYPE,
TI_VA_LIST_TYPE,
+ TI_V4SF_TYPE,
+ TI_V4SI_TYPE,
+ TI_V8QI_TYPE,
+ TI_V4HI_TYPE,
+ TI_V2SI_TYPE,
+
TI_MAX
};
@@ -1768,6 +1779,12 @@ extern tree global_trees[TI_MAX];
#define ptrdiff_type_node global_trees[TI_PTRDIFF_TYPE]
#define va_list_type_node global_trees[TI_VA_LIST_TYPE]
+#define V4SF_type_node global_trees[TI_V4SF_TYPE]
+#define V4SI_type_node global_trees[TI_V4SI_TYPE]
+#define V8QI_type_node global_trees[TI_V8QI_TYPE]
+#define V4HI_type_node global_trees[TI_V4HI_TYPE]
+#define V2SI_type_node global_trees[TI_V2SI_TYPE]
+
/* An enumeration of the standard C integer types. These must be
ordered so that shorter types appear before longer ones. */
enum integer_type_kind