diff options
author | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-02 21:28:42 +0000 |
---|---|---|
committer | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-02 21:28:42 +0000 |
commit | 54f6fa51dfca79caa649118281217d9b5fb47bbf (patch) | |
tree | 9b74df0c252ee999a557a748936f295a9d274519 /gcc/melt-runtime.h | |
parent | a0ac46e2be029318a5407265395dd49740cca46f (diff) | |
download | gcc-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.h | 30 |
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; |