diff options
author | Michael Matz <matz@suse.de> | 2012-10-23 16:29:03 +0000 |
---|---|---|
committer | Michael Matz <matz@gcc.gnu.org> | 2012-10-23 16:29:03 +0000 |
commit | 4b671e64d4d84a4090ce484e638c6032ed5ba17a (patch) | |
tree | dfe78d2bb02f7a92114b50acf3f8662a56351922 /gcc/tree-ssa-operands.h | |
parent | 85fc19ad7e950cd015f02b0a4ae8c756727f1398 (diff) | |
download | gcc-4b671e64d4d84a4090ce484e638c6032ed5ba17a.zip gcc-4b671e64d4d84a4090ce484e638c6032ed5ba17a.tar.gz gcc-4b671e64d4d84a4090ce484e638c6032ed5ba17a.tar.bz2 |
tree-ssa-operands.h (struct def_optype_d, [...]): Remove.
* tree-ssa-operands.h (struct def_optype_d, def_optype_p): Remove.
(ssa_operands.free_defs): Remove.
(DEF_OP_PTR, DEF_OP): Remove.
(struct ssa_operand_iterator_d): Remove 'defs', add 'flags'
members, rename 'phi_stmt' to 'stmt', 'phi_i' to 'i' and 'num_phi'
to 'numops'.
* gimple.h (gimple_statement_with_ops.def_ops): Remove.
(gimple_def_ops, gimple_set_def_ops): Remove.
(gimple_vdef_op): Don't take const gimple, adjust.
(gimple_asm_input_op, gimple_asm_input_op_ptr,
gimple_asm_set_input_op, gimple_asm_output_op,
gimple_asm_output_op_ptr, gimple_asm_set_output_op): Adjust asserts,
and rewrite to move def operands to front.
(gimple_asm_clobber_op, gimple_asm_set_clobber_op,
gimple_asm_label_op, gimple_asm_set_label_op): Correct asserts.
* tree-ssa-operands.c (build_defs): Remove.
(init_ssa_operands): Don't initialize it.
(fini_ssa_operands): Don't free it.
(cleanup_build_arrays): Don't truncate it.
(finalize_ssa_stmt_operands): Don't assert on it.
(alloc_def, add_def_op, append_def): Remove.
(finalize_ssa_defs): Remove building of def_ops list.
(finalize_ssa_uses): Don't mark for SSA renaming here, ...
(add_stmt_operand): ... but here, don't call append_def.
(get_indirect_ref_operands): Remove recurse_on_base argument.
(get_expr_operands): Adjust call to get_indirect_ref_operands.
(verify_ssa_operands): Don't check def operands.
(free_stmt_operands): Don't free def operands.
* gimple.c (gimple_copy): Don't clear def operands.
* tree-flow-inline.h (op_iter_next_use): Adjust to explicitely
handle def operand.
(op_iter_next_tree, op_iter_next_def): Ditto.
(clear_and_done_ssa_iter): Clear new fields.
(op_iter_init): Adjust to setup new iterator structure.
(op_iter_init_phiuse): Adjust.
From-SVN: r192721
Diffstat (limited to 'gcc/tree-ssa-operands.h')
-rw-r--r-- | gcc/tree-ssa-operands.h | 22 |
1 files changed, 5 insertions, 17 deletions
diff --git a/gcc/tree-ssa-operands.h b/gcc/tree-ssa-operands.h index 76a8bd8..ccacd28 100644 --- a/gcc/tree-ssa-operands.h +++ b/gcc/tree-ssa-operands.h @@ -34,14 +34,6 @@ typedef ssa_use_operand_t *use_operand_p; #define NULL_USE_OPERAND_P ((use_operand_p)NULL) #define NULL_DEF_OPERAND_P ((def_operand_p)NULL) -/* This represents the DEF operands of a stmt. */ -struct def_optype_d -{ - struct def_optype_d *next; - tree *def_ptr; -}; -typedef struct def_optype_d *def_optype_p; - /* This represents the USE operands of a stmt. */ struct use_optype_d { @@ -68,7 +60,6 @@ struct GTY(()) ssa_operands { bool ops_active; - struct def_optype_d * GTY ((skip (""))) free_defs; struct use_optype_d * GTY ((skip (""))) free_uses; }; @@ -82,9 +73,6 @@ struct GTY(()) ssa_operands { #define USE_OP_PTR(OP) (&((OP)->use_ptr)) #define USE_OP(OP) (USE_FROM_PTR (USE_OP_PTR (OP))) -#define DEF_OP_PTR(OP) ((OP)->def_ptr) -#define DEF_OP(OP) (DEF_FROM_PTR (DEF_OP_PTR (OP))) - #define PHI_RESULT_PTR(PHI) gimple_phi_result_ptr (PHI) #define PHI_RESULT(PHI) DEF_FROM_PTR (PHI_RESULT_PTR (PHI)) #define SET_PHI_RESULT(PHI, V) SET_DEF (PHI_RESULT_PTR (PHI), (V)) @@ -133,13 +121,13 @@ enum ssa_op_iter_type { typedef struct ssa_operand_iterator_d { - bool done; enum ssa_op_iter_type iter_type; - def_optype_p defs; + bool done; + int flags; + unsigned i; + unsigned numops; use_optype_p uses; - int phi_i; - int num_phi; - gimple phi_stmt; + gimple stmt; } ssa_op_iter; /* These flags are used to determine which operands are returned during |