summaryrefslogtreecommitdiff
path: root/gcc/melt-runtime.h
diff options
context:
space:
mode:
authorbstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4>2010-07-02 21:28:42 +0000
committerbstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4>2010-07-02 21:28:42 +0000
commit54f6fa51dfca79caa649118281217d9b5fb47bbf (patch)
tree9b74df0c252ee999a557a748936f295a9d274519 /gcc/melt-runtime.h
parenta0ac46e2be029318a5407265395dd49740cca46f (diff)
downloadgcc-54f6fa51dfca79caa649118281217d9b5fb47bbf.tar.gz
2010-07-02 Basile Starynkevitch <basile@starynkevitch.net>
* gcc/melt-runtime.h (melt_un_t): Recoded the special cases as u_special_file, u_special_rawfile, u_special_mpfr, u_special_ppl_coefficient, u_special_ppl_linear_expression, u_special_ppl_constraint, u_special_ppl_constraint_system, u_special_ppl_generator, u_special_ppl_generator_system, u_special_ppl_polyhedron. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@161750 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/melt-runtime.h')
-rw-r--r--gcc/melt-runtime.h30
1 files changed, 16 insertions, 14 deletions
diff --git a/gcc/melt-runtime.h b/gcc/melt-runtime.h
index 1f93e130959..713acd9c395 100644
--- a/gcc/melt-runtime.h
+++ b/gcc/melt-runtime.h
@@ -1117,18 +1117,21 @@ melt_un
struct meltmixbigint_st GTY ((tag ("OBMAG_MIXBIGINT"))) u_mixbigint;
struct meltreal_st GTY ((tag ("OBMAG_REAL"))) u_real;
struct meltpair_st GTY ((tag ("OBMAG_PAIR"))) u_pair;
- struct meltspecial_st
- GTY ((tag ("OBMAG_SPEC_FILE"),
- tag ("OBMAG_SPEC_RAWFILE"),
- tag ("OBMAG_SPEC_MPFR"),
- tag ("OBMAG_SPECPPL_COEFFICIENT"),
- tag ("OBMAG_SPECPPL_LINEAR_EXPRESSION"),
- tag ("OBMAG_SPECPPL_CONSTRAINT"),
- tag ("OBMAG_SPECPPL_CONSTRAINT_SYSTEM"),
- tag ("OBMAG_SPECPPL_GENERATOR"),
- tag ("OBMAG_SPECPPL_GENERATOR_SYSTEM"),
- tag ("OBMAG_SPECPPL_POLYHEDRON"))
- ) u_special;
+ /* The struct meltspecial_st share several GTY tag-s, but gengtype
+ need to have one case per tag! See
+ http://gcc.gnu.org/ml/gcc/2010-07/msg00061.html for more. */
+ struct meltspecial_st GTY ((tag ("OBMAG_SPEC_FILE"))) u_special_file;
+ struct meltspecial_st GTY ((tag ("OBMAG_SPEC_RAWFILE"))) u_special_rawfile;
+ struct meltspecial_st GTY ((tag ("OBMAG_SPEC_MPFR"))) u_special_mpfr;
+ struct meltspecial_st GTY ((tag ("OBMAG_SPECPPL_COEFFICIENT"))) u_special_ppl_coefficient;
+ struct meltspecial_st GTY ((tag ("OBMAG_SPECPPL_LINEAR_EXPRESSION"))) u_special_ppl_linear_expression;
+ struct meltspecial_st GTY ((tag ("OBMAG_SPECPPL_CONSTRAINT"))) u_special_ppl_constraint;
+ struct meltspecial_st GTY ((tag ("OBMAG_SPECPPL_CONSTRAINT_SYSTEM"))) u_special_ppl_constraint_system;
+ struct meltspecial_st GTY ((tag ("OBMAG_SPECPPL_GENERATOR"))) u_special_ppl_generator;
+ struct meltspecial_st GTY ((tag ("OBMAG_SPECPPL_GENERATOR_SYSTEM"))) u_special_ppl_generator_system;
+ struct meltspecial_st GTY ((tag ("OBMAG_SPECPPL_POLYHEDRON"))) u_special_ppl_polyhedron;
+ /* for simplicity and compatibility with previous code, we can just write u_special! */
+ struct meltspecial_st GTY ((skip)) u_special;
struct meltstring_st GTY ((tag ("OBMAG_STRING"))) u_string;
struct meltstrbuf_st GTY ((tag ("OBMAG_STRBUF"))) u_strbuf;
struct melttree_st GTY ((tag ("OBMAG_TREE"))) u_tree;
@@ -1147,8 +1150,7 @@ melt_un
struct meltmapgimples_st GTY ((tag ("OBMAG_MAPGIMPLES"))) u_mapgimples;
struct meltmapgimpleseqs_st GTY ((tag ("OBMAG_MAPGIMPLESEQS"))) u_mapgimpleseqs;
struct meltmapgimpleseqs_st GTY ((tag ("OBMAG_MAPGIMPLESEQNODES"))) u_mapgimpleseqnodes;
- struct meltmapbasicblocks_st GTY ((tag ("OBMAG_MAPBASICBLOCKS")))
- u_mapbasicblocks;
+ struct meltmapbasicblocks_st GTY ((tag ("OBMAG_MAPBASICBLOCKS"))) u_mapbasicblocks;
struct meltmapedges_st GTY ((tag ("OBMAG_MAPEDGES"))) u_mapedges;
struct meltmaploops_st GTY ((tag ("OBMAG_MAPLOOPS"))) u_maploops;
struct meltmapbitmaps_st GTY ((tag ("OBMAG_MAPBITMAPS"))) u_mapbitmaps;