libFirm
|
Loads a value from memory (heap or stack). More...
Enumerations | |
enum | n_Load { n_Load_mem, n_Load_ptr, n_Load_max = n_Load_ptr } |
Input numbers for Load node. More... | |
enum | pn_Load { pn_Load_M, pn_Load_res, pn_Load_X_regular, pn_Load_X_except, pn_Load_max = pn_Load_X_except } |
Projection numbers for result of Load node (use for Proj nodes) More... | |
Functions | |
ir_node * | new_rd_Load (dbg_info *dbgi, ir_node *block, ir_node *irn_mem, ir_node *irn_ptr, ir_mode *mode, ir_type *type, ir_cons_flags flags) |
Construct a Load node. More... | |
ir_node * | new_r_Load (ir_node *block, ir_node *irn_mem, ir_node *irn_ptr, ir_mode *mode, ir_type *type, ir_cons_flags flags) |
Construct a Load node. More... | |
ir_node * | new_d_Load (dbg_info *dbgi, ir_node *irn_mem, ir_node *irn_ptr, ir_mode *mode, ir_type *type, ir_cons_flags flags) |
Construct a Load node. More... | |
ir_node * | new_Load (ir_node *irn_mem, ir_node *irn_ptr, ir_mode *mode, ir_type *type, ir_cons_flags flags) |
Construct a Load node. More... | |
int | is_Load (const ir_node *node) |
Test if node is a Load. More... | |
ir_node * | get_Load_mem (const ir_node *node) |
Returns mem input of a Load node. More... | |
void | set_Load_mem (ir_node *node, ir_node *mem) |
Sets mem input of a Load node. More... | |
ir_node * | get_Load_ptr (const ir_node *node) |
Returns ptr input of a Load node. More... | |
void | set_Load_ptr (ir_node *node, ir_node *ptr) |
Sets ptr input of a Load node. More... | |
ir_mode * | get_Load_mode (const ir_node *node) |
Returns mode attribute of a Load node. More... | |
void | set_Load_mode (ir_node *node, ir_mode *mode) |
Sets mode attribute of a Load node. More... | |
ir_type * | get_Load_type (const ir_node *node) |
Returns type attribute of a Load node. More... | |
void | set_Load_type (ir_node *node, ir_type *type) |
Sets type attribute of a Load node. More... | |
ir_volatility | get_Load_volatility (const ir_node *node) |
Returns volatility attribute of a Load node. More... | |
void | set_Load_volatility (ir_node *node, ir_volatility volatility) |
Sets volatility attribute of a Load node. More... | |
ir_align | get_Load_unaligned (const ir_node *node) |
Returns unaligned attribute of a Load node. More... | |
void | set_Load_unaligned (ir_node *node, ir_align unaligned) |
Sets unaligned attribute of a Load node. More... | |
ir_op * | get_op_Load (void) |
Returns opcode for Load nodes. More... | |
Variables | |
ir_op * | op_Load |
Load opcode. More... | |
Loads a value from memory (heap or stack).
enum n_Load |
enum pn_Load |
Returns mem input of a Load node.
Definition at line 1433 of file gen_irnode.c.
Returns mode attribute of a Load node.
Definition at line 3230 of file gen_irnode.c.
Returns ptr input of a Load node.
Definition at line 1443 of file gen_irnode.c.
Returns type attribute of a Load node.
Definition at line 3240 of file gen_irnode.c.
ir_align get_Load_unaligned | ( | const ir_node * | node | ) |
Returns unaligned attribute of a Load node.
Definition at line 3260 of file gen_irnode.c.
ir_volatility get_Load_volatility | ( | const ir_node * | node | ) |
Returns volatility attribute of a Load node.
Definition at line 3250 of file gen_irnode.c.
ir_op* get_op_Load | ( | void | ) |
int is_Load | ( | const ir_node * | node | ) |
Test if node is a Load.
Definition at line 3225 of file gen_irnode.c.
ir_node* new_d_Load | ( | dbg_info * | dbgi, |
ir_node * | irn_mem, | ||
ir_node * | irn_ptr, | ||
ir_mode * | mode, | ||
ir_type * | type, | ||
ir_cons_flags | flags | ||
) |
Construct a Load node.
dbgi | A pointer to debug information. |
irn_mem | mem |
irn_ptr | ptr |
mode | mode of the value to be loaded |
type | The type of the object which is stored at ptr (need not match with mode) |
flags | specifies alignment, volatility and pin state |
Definition at line 1421 of file gen_irnode.c.
References current_ir_graph, get_cur_block(), IR_GRAPH_CONSTRAINT_CONSTRUCTION, irg_is_constrained(), and new_rd_Load().
Referenced by new_Load().
ir_node* new_Load | ( | ir_node * | irn_mem, |
ir_node * | irn_ptr, | ||
ir_mode * | mode, | ||
ir_type * | type, | ||
ir_cons_flags | flags | ||
) |
Construct a Load node.
irn_mem | mem |
irn_ptr | ptr |
mode | mode of the value to be loaded |
type | The type of the object which is stored at ptr (need not match with mode) |
flags | specifies alignment, volatility and pin state |
Definition at line 1428 of file gen_irnode.c.
References new_d_Load().
ir_node* new_r_Load | ( | ir_node * | block, |
ir_node * | irn_mem, | ||
ir_node * | irn_ptr, | ||
ir_mode * | mode, | ||
ir_type * | type, | ||
ir_cons_flags | flags | ||
) |
Construct a Load node.
block | The IR block the node belongs to. |
irn_mem | mem |
irn_ptr | ptr |
mode | mode of the value to be loaded |
type | The type of the object which is stored at ptr (need not match with mode) |
flags | specifies alignment, volatility and pin state |
Definition at line 1416 of file gen_irnode.c.
References new_rd_Load().
ir_node* new_rd_Load | ( | dbg_info * | dbgi, |
ir_node * | block, | ||
ir_node * | irn_mem, | ||
ir_node * | irn_ptr, | ||
ir_mode * | mode, | ||
ir_type * | type, | ||
ir_cons_flags | flags | ||
) |
Construct a Load node.
dbgi | A pointer to debug information. |
block | The IR block the node belongs to. |
irn_mem | mem |
irn_ptr | ptr |
mode | mode of the value to be loaded |
type | The type of the object which is stored at ptr (need not match with mode) |
flags | specifies alignment, volatility and pin state |
Definition at line 1394 of file gen_irnode.c.
References cons_floats, cons_throws_exception, cons_unaligned, cons_volatile, get_irn_irg(), mode_T, new_ir_node(), op_Load, op_pin_state_floats, op_pin_state_pinned, optimize_node(), and verify_new_node().
Referenced by new_d_Load(), and new_r_Load().
Sets mem input of a Load node.
Definition at line 1438 of file gen_irnode.c.
Sets mode attribute of a Load node.
Definition at line 3235 of file gen_irnode.c.
Sets type attribute of a Load node.
Definition at line 3245 of file gen_irnode.c.
void set_Load_unaligned | ( | ir_node * | node, |
ir_align | unaligned | ||
) |
Sets unaligned attribute of a Load node.
Definition at line 3265 of file gen_irnode.c.
void set_Load_volatility | ( | ir_node * | node, |
ir_volatility | volatility | ||
) |
Sets volatility attribute of a Load node.
Definition at line 3255 of file gen_irnode.c.
ir_op* op_Load |
Load opcode.
Definition at line 2179 of file nodes.h.
Referenced by get_op_Load(), new_rd_Load(), set_Load_ptr(), and set_typeconst_type().