+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>
* doc/arm-neon-intrinsics.texi: Regenerated.
union GTY ((desc ("gimple_statement_structure (&%h)"))) gimple_statement_d {
struct gimple_statement_base GTY ((tag ("GSS_BASE"))) gsbase;
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_omp GTY ((tag ("GSS_OMP"))) omp;
struct gimple_statement_bind GTY ((tag ("GSS_BIND"))) gimple_bind;
return NULL_USE_OPERAND_P;
ops = g->gsops.opbase.use_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 NULL_USE_OPERAND_P;
}
return NULL_DEF_OPERAND_P;
ops = g->gsops.opbase.def_ops;
if (ops
- && DEF_OP_PTR (ops) == &g->gsmem.membase.vdef)
+ && DEF_OP_PTR (ops) == &g->gsmembase.vdef)
return DEF_OP_PTR (ops);
return NULL_DEF_OPERAND_P;
}
{
if (!gimple_has_mem_ops (g))
return NULL_TREE;
- return g->gsmem.membase.vuse;
+ return g->gsmembase.vuse;
}
/* Return the single VDEF operand of the statement G. */
{
if (!gimple_has_mem_ops (g))
return NULL_TREE;
- return g->gsmem.membase.vdef;
+ return g->gsmembase.vdef;
}
/* Return the single VUSE operand of the statement G. */
{
if (!gimple_has_mem_ops (g))
return NULL;
- return &g->gsmem.membase.vuse;
+ return &g->gsmembase.vuse;
}
/* Return the single VDEF operand of the statement G. */
{
if (!gimple_has_mem_ops (g))
return NULL;
- return &g->gsmem.membase.vdef;
+ return &g->gsmembase.vdef;
}
/* Set the single VUSE operand of the statement G. */
gimple_set_vuse (gimple g, tree vuse)
{
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. */
gimple_set_vdef (gimple g, tree vdef)
{
gcc_assert (gimple_has_mem_ops (g));
- g->gsmem.membase.vdef = vdef;
+ g->gsmembase.vdef = vdef;
}
DEFGSSTRUCT(GSS_BASE, gimple_statement_base, false)
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_ASM, gimple_statement_asm, true)
DEFGSSTRUCT(GSS_BIND, gimple_statement_bind, false)