Commit bb4efb4d by Richard Guenther Committed by Richard Biener

gimple.h (union gimple_statement_d): Add gsmembase member.

2009-11-18  Richard Guenther  <rguenther@suse.de>

	* gimple.h (union gimple_statement_d): Add gsmembase member.
	(gimple_vuse_op): Use gsmembase for access.
	(gimple_vdef_op): Likewise.
	(gimple_vuse): Likewise.
	(gimple_vdef): Likewise.
	(gimple_vuse_ptr): Likewise.
	(gimple_vdef_ptr): Likewise.
	(gimple_set_vuse): Likewise.
	(gimple_set_vdef): Likewise.
	* gsstruct.def (GSS_WITH_MEM_OPS_BASE): Add.

From-SVN: r154306
parent 76425f89
2009-11-18 Richard Guenther <rguenther@suse.de>
* gimple.h (union gimple_statement_d): Add gsmembase member.
(gimple_vuse_op): Use gsmembase for access.
(gimple_vdef_op): Likewise.
(gimple_vuse): Likewise.
(gimple_vdef): Likewise.
(gimple_vuse_ptr): Likewise.
(gimple_vdef_ptr): Likewise.
(gimple_set_vuse): Likewise.
(gimple_set_vdef): Likewise.
* gsstruct.def (GSS_WITH_MEM_OPS_BASE): Add.
2009-11-18 Daniel Jacobowitz <dan@codesourcery.com> 2009-11-18 Daniel Jacobowitz <dan@codesourcery.com>
* doc/arm-neon-intrinsics.texi: Regenerated. * doc/arm-neon-intrinsics.texi: Regenerated.
...@@ -737,6 +737,7 @@ enum gimple_statement_structure_enum { ...@@ -737,6 +737,7 @@ enum gimple_statement_structure_enum {
union GTY ((desc ("gimple_statement_structure (&%h)"))) gimple_statement_d { union GTY ((desc ("gimple_statement_structure (&%h)"))) gimple_statement_d {
struct gimple_statement_base GTY ((tag ("GSS_BASE"))) gsbase; struct gimple_statement_base GTY ((tag ("GSS_BASE"))) gsbase;
struct gimple_statement_with_ops GTY ((tag ("GSS_WITH_OPS"))) gsops; struct gimple_statement_with_ops GTY ((tag ("GSS_WITH_OPS"))) gsops;
struct gimple_statement_with_memory_ops_base GTY ((tag ("GSS_WITH_MEM_OPS_BASE"))) gsmembase;
struct gimple_statement_with_memory_ops GTY ((tag ("GSS_WITH_MEM_OPS"))) gsmem; struct gimple_statement_with_memory_ops GTY ((tag ("GSS_WITH_MEM_OPS"))) gsmem;
struct gimple_statement_omp GTY ((tag ("GSS_OMP"))) omp; struct gimple_statement_omp GTY ((tag ("GSS_OMP"))) omp;
struct gimple_statement_bind GTY ((tag ("GSS_BIND"))) gimple_bind; struct gimple_statement_bind GTY ((tag ("GSS_BIND"))) gimple_bind;
...@@ -1330,7 +1331,7 @@ gimple_vuse_op (const_gimple g) ...@@ -1330,7 +1331,7 @@ gimple_vuse_op (const_gimple g)
return NULL_USE_OPERAND_P; return NULL_USE_OPERAND_P;
ops = g->gsops.opbase.use_ops; ops = g->gsops.opbase.use_ops;
if (ops if (ops
&& USE_OP_PTR (ops)->use == &g->gsmem.membase.vuse) && USE_OP_PTR (ops)->use == &g->gsmembase.vuse)
return USE_OP_PTR (ops); return USE_OP_PTR (ops);
return NULL_USE_OPERAND_P; return NULL_USE_OPERAND_P;
} }
...@@ -1345,7 +1346,7 @@ gimple_vdef_op (const_gimple g) ...@@ -1345,7 +1346,7 @@ gimple_vdef_op (const_gimple g)
return NULL_DEF_OPERAND_P; return NULL_DEF_OPERAND_P;
ops = g->gsops.opbase.def_ops; ops = g->gsops.opbase.def_ops;
if (ops if (ops
&& DEF_OP_PTR (ops) == &g->gsmem.membase.vdef) && DEF_OP_PTR (ops) == &g->gsmembase.vdef)
return DEF_OP_PTR (ops); return DEF_OP_PTR (ops);
return NULL_DEF_OPERAND_P; return NULL_DEF_OPERAND_P;
} }
...@@ -1358,7 +1359,7 @@ gimple_vuse (const_gimple g) ...@@ -1358,7 +1359,7 @@ gimple_vuse (const_gimple g)
{ {
if (!gimple_has_mem_ops (g)) if (!gimple_has_mem_ops (g))
return NULL_TREE; return NULL_TREE;
return g->gsmem.membase.vuse; return g->gsmembase.vuse;
} }
/* Return the single VDEF operand of the statement G. */ /* Return the single VDEF operand of the statement G. */
...@@ -1368,7 +1369,7 @@ gimple_vdef (const_gimple g) ...@@ -1368,7 +1369,7 @@ gimple_vdef (const_gimple g)
{ {
if (!gimple_has_mem_ops (g)) if (!gimple_has_mem_ops (g))
return NULL_TREE; return NULL_TREE;
return g->gsmem.membase.vdef; return g->gsmembase.vdef;
} }
/* Return the single VUSE operand of the statement G. */ /* Return the single VUSE operand of the statement G. */
...@@ -1378,7 +1379,7 @@ gimple_vuse_ptr (gimple g) ...@@ -1378,7 +1379,7 @@ gimple_vuse_ptr (gimple g)
{ {
if (!gimple_has_mem_ops (g)) if (!gimple_has_mem_ops (g))
return NULL; return NULL;
return &g->gsmem.membase.vuse; return &g->gsmembase.vuse;
} }
/* Return the single VDEF operand of the statement G. */ /* Return the single VDEF operand of the statement G. */
...@@ -1388,7 +1389,7 @@ gimple_vdef_ptr (gimple g) ...@@ -1388,7 +1389,7 @@ gimple_vdef_ptr (gimple g)
{ {
if (!gimple_has_mem_ops (g)) if (!gimple_has_mem_ops (g))
return NULL; return NULL;
return &g->gsmem.membase.vdef; return &g->gsmembase.vdef;
} }
/* Set the single VUSE operand of the statement G. */ /* Set the single VUSE operand of the statement G. */
...@@ -1397,7 +1398,7 @@ static inline void ...@@ -1397,7 +1398,7 @@ static inline void
gimple_set_vuse (gimple g, tree vuse) gimple_set_vuse (gimple g, tree vuse)
{ {
gcc_assert (gimple_has_mem_ops (g)); gcc_assert (gimple_has_mem_ops (g));
g->gsmem.membase.vuse = vuse; g->gsmembase.vuse = vuse;
} }
/* Set the single VDEF operand of the statement G. */ /* Set the single VDEF operand of the statement G. */
...@@ -1406,7 +1407,7 @@ static inline void ...@@ -1406,7 +1407,7 @@ static inline void
gimple_set_vdef (gimple g, tree vdef) gimple_set_vdef (gimple g, tree vdef)
{ {
gcc_assert (gimple_has_mem_ops (g)); gcc_assert (gimple_has_mem_ops (g));
g->gsmem.membase.vdef = vdef; g->gsmembase.vdef = vdef;
} }
......
...@@ -27,6 +27,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -27,6 +27,7 @@ along with GCC; see the file COPYING3. If not see
DEFGSSTRUCT(GSS_BASE, gimple_statement_base, false) DEFGSSTRUCT(GSS_BASE, gimple_statement_base, false)
DEFGSSTRUCT(GSS_WITH_OPS, gimple_statement_with_ops, true) DEFGSSTRUCT(GSS_WITH_OPS, gimple_statement_with_ops, true)
DEFGSSTRUCT(GSS_WITH_MEM_OPS_BASE, gimple_statement_with_memory_ops_base, false)
DEFGSSTRUCT(GSS_WITH_MEM_OPS, gimple_statement_with_memory_ops, true) DEFGSSTRUCT(GSS_WITH_MEM_OPS, gimple_statement_with_memory_ops, true)
DEFGSSTRUCT(GSS_ASM, gimple_statement_asm, true) DEFGSSTRUCT(GSS_ASM, gimple_statement_asm, true)
DEFGSSTRUCT(GSS_BIND, gimple_statement_bind, false) DEFGSSTRUCT(GSS_BIND, gimple_statement_bind, false)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment