libFirm
|
The Sync operation unifies several partial memory blocks. More...
Functions | |
void | add_Sync_pred (ir_node *node, ir_node *pred) |
Adds pred to predecessor list of Sync node node . More... | |
void | remove_Sync_n (ir_node *n, int i) |
Removes predecessor i from Sync n . More... | |
ir_node * | new_rd_Sync (dbg_info *dbgi, ir_node *block, int arity, ir_node *const *in) |
Construct a Sync node. More... | |
ir_node * | new_r_Sync (ir_node *block, int arity, ir_node *const *in) |
Construct a Sync node. More... | |
ir_node * | new_d_Sync (dbg_info *dbgi, int arity, ir_node *const *in) |
Construct a Sync node. More... | |
ir_node * | new_Sync (int arity, ir_node *const *in) |
Construct a Sync node. More... | |
int | is_Sync (const ir_node *node) |
Test if node is a Sync. More... | |
int | get_Sync_n_preds (ir_node const *node) |
Get the number of Sync preds. More... | |
ir_node * | get_Sync_pred (ir_node const *node, int pos) |
Get the Sync pred with index pos . More... | |
void | set_Sync_pred (ir_node *node, int pos, ir_node *pred) |
Set the Sync pred with index pos . More... | |
ir_node ** | get_Sync_pred_arr (ir_node *node) |
Get an array of all Sync preds. More... | |
ir_op * | get_op_Sync (void) |
Returns opcode for Sync nodes. More... | |
Variables | |
ir_op * | op_Sync |
Sync opcode. More... | |
The Sync operation unifies several partial memory blocks.
These blocks have to be pairwise disjunct or the values in common locations have to be identical. This operation allows to specify all operations that eventually need several partial memory blocks as input with a single entrance by unifying the memories with a preceding Sync operation.
Adds pred
to predecessor list of Sync node node
.
ir_op* get_op_Sync | ( | void | ) |
int get_Sync_n_preds | ( | ir_node const * | node | ) |
Get the number of Sync preds.
Definition at line 2782 of file gen_irnode.c.
Get the Sync pred with index pos
.
Definition at line 2787 of file gen_irnode.c.
Get an array of all Sync preds.
Definition at line 2797 of file gen_irnode.c.
int is_Sync | ( | const ir_node * | node | ) |
Test if node is a Sync.
Definition at line 3509 of file gen_irnode.c.
Construct a Sync node.
dbgi | A pointer to debug information. |
arity | size of additional inputs array |
in | additional inputs |
Definition at line 2770 of file gen_irnode.c.
References current_ir_graph, get_cur_block(), IR_GRAPH_CONSTRAINT_CONSTRUCTION, irg_is_constrained(), and new_rd_Sync().
Referenced by new_Sync().
Construct a Sync node.
block | The IR block the node belongs to. |
arity | size of additional inputs array |
in | additional inputs |
Definition at line 2765 of file gen_irnode.c.
References new_rd_Sync().
Construct a Sync node.
dbgi | A pointer to debug information. |
block | The IR block the node belongs to. |
arity | size of additional inputs array |
in | additional inputs |
Definition at line 2751 of file gen_irnode.c.
References get_irn_irg(), mode_M, new_ir_node(), op_Sync, optimize_node(), and verify_new_node().
Referenced by new_d_Sync(), and new_r_Sync().
Construct a Sync node.
arity | size of additional inputs array |
in | additional inputs |
Definition at line 2777 of file gen_irnode.c.
References new_d_Sync().
void remove_Sync_n | ( | ir_node * | n, |
int | i | ||
) |
Removes predecessor i
from Sync n
.
Set the Sync pred with index pos
.
Definition at line 2792 of file gen_irnode.c.
ir_op* op_Sync |
Sync opcode.
Definition at line 4153 of file nodes.h.
Referenced by get_op_Sync(), and new_rd_Sync().