libFirm
|
Stores a value into memory (heap or stack). More...
Enumerations | |
enum | n_Store { n_Store_mem, n_Store_ptr, n_Store_value, n_Store_max = n_Store_value } |
Input numbers for Store node. More... | |
enum | pn_Store { pn_Store_M, pn_Store_X_regular, pn_Store_X_except, pn_Store_max = pn_Store_X_except } |
Projection numbers for result of Store node (use for Proj nodes) More... | |
Functions | |
ir_node * | new_rd_Store (dbg_info *dbgi, ir_node *block, ir_node *irn_mem, ir_node *irn_ptr, ir_node *irn_value, ir_type *type, ir_cons_flags flags) |
Construct a Store node. More... | |
ir_node * | new_r_Store (ir_node *block, ir_node *irn_mem, ir_node *irn_ptr, ir_node *irn_value, ir_type *type, ir_cons_flags flags) |
Construct a Store node. More... | |
ir_node * | new_d_Store (dbg_info *dbgi, ir_node *irn_mem, ir_node *irn_ptr, ir_node *irn_value, ir_type *type, ir_cons_flags flags) |
Construct a Store node. More... | |
ir_node * | new_Store (ir_node *irn_mem, ir_node *irn_ptr, ir_node *irn_value, ir_type *type, ir_cons_flags flags) |
Construct a Store node. More... | |
int | is_Store (const ir_node *node) |
Test if node is a Store. More... | |
ir_node * | get_Store_mem (const ir_node *node) |
Returns mem input of a Store node. More... | |
void | set_Store_mem (ir_node *node, ir_node *mem) |
Sets mem input of a Store node. More... | |
ir_node * | get_Store_ptr (const ir_node *node) |
Returns ptr input of a Store node. More... | |
void | set_Store_ptr (ir_node *node, ir_node *ptr) |
Sets ptr input of a Store node. More... | |
ir_node * | get_Store_value (const ir_node *node) |
Returns value input of a Store node. More... | |
void | set_Store_value (ir_node *node, ir_node *value) |
Sets value input of a Store node. More... | |
ir_type * | get_Store_type (const ir_node *node) |
Returns type attribute of a Store node. More... | |
void | set_Store_type (ir_node *node, ir_type *type) |
Sets type attribute of a Store node. More... | |
ir_volatility | get_Store_volatility (const ir_node *node) |
Returns volatility attribute of a Store node. More... | |
void | set_Store_volatility (ir_node *node, ir_volatility volatility) |
Sets volatility attribute of a Store node. More... | |
ir_align | get_Store_unaligned (const ir_node *node) |
Returns unaligned attribute of a Store node. More... | |
void | set_Store_unaligned (ir_node *node, ir_align unaligned) |
Sets unaligned attribute of a Store node. More... | |
ir_op * | get_op_Store (void) |
Returns opcode for Store nodes. More... | |
Variables | |
ir_op * | op_Store |
Store opcode. More... | |
Stores a value into memory (heap or stack).
enum n_Store |
enum pn_Store |
ir_op* get_op_Store | ( | void | ) |
Returns mem input of a Store node.
Definition at line 2609 of file gen_irnode.c.
Returns ptr input of a Store node.
Definition at line 2619 of file gen_irnode.c.
Returns type attribute of a Store node.
Definition at line 3449 of file gen_irnode.c.
ir_align get_Store_unaligned | ( | const ir_node * | node | ) |
Returns unaligned attribute of a Store node.
Definition at line 3469 of file gen_irnode.c.
Returns value input of a Store node.
Definition at line 2629 of file gen_irnode.c.
ir_volatility get_Store_volatility | ( | const ir_node * | node | ) |
Returns volatility attribute of a Store node.
Definition at line 3459 of file gen_irnode.c.
int is_Store | ( | const ir_node * | node | ) |
Test if node is a Store.
Definition at line 3444 of file gen_irnode.c.
ir_node* new_d_Store | ( | dbg_info * | dbgi, |
ir_node * | irn_mem, | ||
ir_node * | irn_ptr, | ||
ir_node * | irn_value, | ||
ir_type * | type, | ||
ir_cons_flags | flags | ||
) |
Construct a Store node.
dbgi | A pointer to debug information. |
irn_mem | mem |
irn_ptr | ptr |
irn_value | value |
type | The type of the object which is stored at ptr (need not match with value's type) |
flags | specifies alignment, volatility and pin state |
Definition at line 2597 of file gen_irnode.c.
References current_ir_graph, get_cur_block(), IR_GRAPH_CONSTRAINT_CONSTRUCTION, irg_is_constrained(), and new_rd_Store().
Referenced by new_Store().
ir_node* new_r_Store | ( | ir_node * | block, |
ir_node * | irn_mem, | ||
ir_node * | irn_ptr, | ||
ir_node * | irn_value, | ||
ir_type * | type, | ||
ir_cons_flags | flags | ||
) |
Construct a Store node.
block | The IR block the node belongs to. |
irn_mem | mem |
irn_ptr | ptr |
irn_value | value |
type | The type of the object which is stored at ptr (need not match with value's type) |
flags | specifies alignment, volatility and pin state |
Definition at line 2592 of file gen_irnode.c.
References new_rd_Store().
ir_node* new_rd_Store | ( | dbg_info * | dbgi, |
ir_node * | block, | ||
ir_node * | irn_mem, | ||
ir_node * | irn_ptr, | ||
ir_node * | irn_value, | ||
ir_type * | type, | ||
ir_cons_flags | flags | ||
) |
Construct a Store node.
dbgi | A pointer to debug information. |
block | The IR block the node belongs to. |
irn_mem | mem |
irn_ptr | ptr |
irn_value | value |
type | The type of the object which is stored at ptr (need not match with value's type) |
flags | specifies alignment, volatility and pin state |
Definition at line 2570 of file gen_irnode.c.
References cons_floats, cons_throws_exception, cons_unaligned, cons_volatile, get_irn_irg(), mode_T, new_ir_node(), op_pin_state_floats, op_pin_state_pinned, op_Store, optimize_node(), and verify_new_node().
Referenced by new_d_Store(), and new_r_Store().
ir_node* new_Store | ( | ir_node * | irn_mem, |
ir_node * | irn_ptr, | ||
ir_node * | irn_value, | ||
ir_type * | type, | ||
ir_cons_flags | flags | ||
) |
Construct a Store node.
irn_mem | mem |
irn_ptr | ptr |
irn_value | value |
type | The type of the object which is stored at ptr (need not match with value's type) |
flags | specifies alignment, volatility and pin state |
Definition at line 2604 of file gen_irnode.c.
References new_d_Store().
Sets mem input of a Store node.
Definition at line 2614 of file gen_irnode.c.
Sets ptr input of a Store node.
Definition at line 2624 of file gen_irnode.c.
Sets type attribute of a Store node.
Definition at line 3454 of file gen_irnode.c.
void set_Store_unaligned | ( | ir_node * | node, |
ir_align | unaligned | ||
) |
Sets unaligned attribute of a Store node.
Definition at line 3474 of file gen_irnode.c.
Sets value input of a Store node.
Definition at line 2634 of file gen_irnode.c.
void set_Store_volatility | ( | ir_node * | node, |
ir_volatility | volatility | ||
) |
Sets volatility attribute of a Store node.
Definition at line 3464 of file gen_irnode.c.
ir_op* op_Store |
Store opcode.
Definition at line 3913 of file nodes.h.
Referenced by get_op_Store(), and new_rd_Store().