diff options
author | steven <steven@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-05-15 20:02:11 +0000 |
---|---|---|
committer | steven <steven@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-05-15 20:02:11 +0000 |
commit | 115133dd5f44ff1bfd39b8186874f43b5c39e370 (patch) | |
tree | 5404e346547ef403d93fdcae7aeef40ed695df63 /gcc/vecir.h | |
parent | a3fd2b64243adef3b271c2d2ac0cdd8a176561dc (diff) | |
download | gcc-115133dd5f44ff1bfd39b8186874f43b5c39e370.tar.gz |
gcc/ChangeLog
* vecir.h: New file with VEC primitives for tree, gimple, and rtl.
* Makefile.in: Add it.
Fix all other Makefile dependencies for changes below.
* tree.h: Include it instead of defining VEC primitives here.
* gimple.h: Likewise.
* rtl.h: Likewise.
* tree-inline.h: Inlclude vecir.h instead of gimple.h.
* except.h: Include vecir.h, break dependence on tree.h.
* gimplify.c (append_to_statement_list_1, append_to_statement_list):
Move from here...
* tree-iterator.c: ...to here.
* tree-iterator.h: Fix file introduction comment. Add extern markers.
* c-lex.c: Include fixed-value.h instead of rtl.h. Do not include
tm_p.h.
* c-cppbuiltin.c: Explain why debug.h and tm_p.h are included.
* c-objc-common.h: Do not include tm.h, rtl.h, insn-config.h,
integrate.h, function.h, toplev.h, tree-inline.h, ggc.h,
tree-mudflap.h, and target.h.
* c-semantics.c: Do not include except.h, ggc.h, rtl.h, timevar.h,
predict.h, tree-inline.h, gimple.h, and langhooks.h.
* c-decl.c: Do not include expr.h, ggc.h, libfuncs.h, except.h.
Add FIXME for why gimple.h is still included (should be unnecessary
since GCC 4.5 gimplification unit-at-a-time).
* c-typeck.c: Do not include rtl.h, tm_p.h, ggc.h, and gimple.h.
* c-pragma.c: Add FIXME for why function.h needs to be included just
for cfun, at front-end level.
Add note that REGISTER_TARGET_PRAGMAS should probably be a target hook.
Do not include ggc.h, but include vecprim.h for VEC(char).
* c-opts.c: Do not include tm.h, tree-inline.h, and tm_p.h.
Explain why target.h is included.
* c-omp.h: Do not include tm.h, function.h, and bitmap.h.
Explain why gimple.h is included.
* c-ppoutput.c: Do not include tm.h.
* c-common.c: Do not include gimple.h. Explain why expr.h is included.
* c-parses.c: Explain why rtl.h is included, and that this (and only
this) is also why tm.h must be included.
Do not include except.h.
* c-lang.c: Do not include ggc.h.
cp/ChangeLog
* decl.c: Include tree-iterator.h, as fixup for tree-inline.h changes.
* Make-lang.in: Fix dependencies accordingly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159442 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/vecir.h')
-rw-r--r-- | gcc/vecir.h | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/gcc/vecir.h b/gcc/vecir.h new file mode 100644 index 00000000000..97e7b781840 --- /dev/null +++ b/gcc/vecir.h @@ -0,0 +1,52 @@ +/* VEC types for basic types of the intermediate representations. + Copyright (C) 2010 Free Software Foundation, Inc. + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 3, or (at your option) any later +version. + +GCC is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING3. If not see +<http://www.gnu.org/licenses/>. */ + +#ifndef GCC_VECIR_H +#define GCC_VECIR_H + +#ifndef GCC_CORETYPES_H +#error "vecir.h must be included after coretypes.h" +#endif + +/* A varray of trees. */ +DEF_VEC_P(tree); +DEF_VEC_ALLOC_P(tree,gc); +DEF_VEC_ALLOC_P(tree,heap); + +/* A varray of gimple statements. */ +DEF_VEC_P(gimple); +DEF_VEC_ALLOC_P(gimple,heap); +DEF_VEC_ALLOC_P(gimple,gc); + +/* A varray of pointers to gimple statements. */ +typedef gimple *gimple_p; +DEF_VEC_P(gimple_p); +DEF_VEC_ALLOC_P(gimple_p,heap); + +/* A varray gimple statement sequences. */ +DEF_VEC_P(gimple_seq); +DEF_VEC_ALLOC_P(gimple_seq,gc); +DEF_VEC_ALLOC_P(gimple_seq,heap); + +/* A varray of RTX objects. */ +DEF_VEC_P(rtx); +DEF_VEC_ALLOC_P(rtx,heap); +DEF_VEC_ALLOC_P(rtx,gc); + +#endif /* GCC_VECIR_H */ |