libFirm
|
returns the quotient of its 2 operands More...
Enumerations | |
enum | n_Div { n_Div_mem, n_Div_left, n_Div_right, n_Div_max = n_Div_right } |
Input numbers for Div node. More... | |
enum | pn_Div { pn_Div_M, pn_Div_res, pn_Div_X_regular, pn_Div_X_except, pn_Div_max = pn_Div_X_except } |
Projection numbers for result of Div node (use for Proj nodes) More... | |
Functions | |
ir_node * | new_rd_DivRL (dbg_info *db, ir_node *block, ir_node *memop, ir_node *op1, ir_node *op2, ir_mode *mode, int pinned) |
Constructor for a remainderless Div node. More... | |
ir_node * | new_r_DivRL (ir_node *block, ir_node *memop, ir_node *op1, ir_node *op2, ir_mode *mode, int pinned) |
Constructor for a remainderless Div node. More... | |
ir_node * | new_d_DivRL (dbg_info *db, ir_node *memop, ir_node *op1, ir_node *op2, ir_mode *mode, int pinned) |
Constructor for a remainderless Div node. More... | |
ir_node * | new_DivRL (ir_node *memop, ir_node *op1, ir_node *op2, ir_mode *mode, int pinned) |
Constructor for a remainderless Div node. More... | |
ir_node * | new_rd_Div (dbg_info *dbgi, ir_node *block, ir_node *irn_mem, ir_node *irn_left, ir_node *irn_right, ir_mode *resmode, int pinned) |
Construct a Div node. More... | |
ir_node * | new_r_Div (ir_node *block, ir_node *irn_mem, ir_node *irn_left, ir_node *irn_right, ir_mode *resmode, int pinned) |
Construct a Div node. More... | |
ir_node * | new_d_Div (dbg_info *dbgi, ir_node *irn_mem, ir_node *irn_left, ir_node *irn_right, ir_mode *resmode, int pinned) |
Construct a Div node. More... | |
ir_node * | new_Div (ir_node *irn_mem, ir_node *irn_left, ir_node *irn_right, ir_mode *resmode, int pinned) |
Construct a Div node. More... | |
int | is_Div (const ir_node *node) |
Test if node is a Div. More... | |
ir_node * | get_Div_mem (const ir_node *node) |
Returns mem input of a Div node. More... | |
void | set_Div_mem (ir_node *node, ir_node *mem) |
Sets mem input of a Div node. More... | |
ir_node * | get_Div_left (const ir_node *node) |
Returns left input of a Div node. More... | |
void | set_Div_left (ir_node *node, ir_node *left) |
Sets left input of a Div node. More... | |
ir_node * | get_Div_right (const ir_node *node) |
Returns right input of a Div node. More... | |
void | set_Div_right (ir_node *node, ir_node *right) |
Sets right input of a Div node. More... | |
ir_mode * | get_Div_resmode (const ir_node *node) |
Returns resmode attribute of a Div node. More... | |
void | set_Div_resmode (ir_node *node, ir_mode *resmode) |
Sets resmode attribute of a Div node. More... | |
int | get_Div_no_remainder (const ir_node *node) |
Returns no_remainder attribute of a Div node. More... | |
void | set_Div_no_remainder (ir_node *node, int no_remainder) |
Sets no_remainder attribute of a Div node. More... | |
ir_op * | get_op_Div (void) |
Returns opcode for Div nodes. More... | |
Variables | |
ir_op * | op_Div |
Div opcode. More... | |
returns the quotient of its 2 operands
enum n_Div |
enum pn_Div |
Returns left input of a Div node.
Definition at line 1064 of file gen_irnode.c.
Returns mem input of a Div node.
Definition at line 1054 of file gen_irnode.c.
int get_Div_no_remainder | ( | const ir_node * | node | ) |
Returns no_remainder attribute of a Div node.
Definition at line 3179 of file gen_irnode.c.
Returns resmode attribute of a Div node.
Definition at line 3169 of file gen_irnode.c.
Returns right input of a Div node.
Definition at line 1074 of file gen_irnode.c.
ir_op* get_op_Div | ( | void | ) |
int is_Div | ( | const ir_node * | node | ) |
Test if node is a Div.
Definition at line 3164 of file gen_irnode.c.
ir_node* new_d_Div | ( | dbg_info * | dbgi, |
ir_node * | irn_mem, | ||
ir_node * | irn_left, | ||
ir_node * | irn_right, | ||
ir_mode * | resmode, | ||
int | pinned | ||
) |
Construct a Div node.
dbgi | A pointer to debug information. |
irn_mem | mem |
irn_left | left |
irn_right | right |
resmode | mode of the result value |
pinned | pinned state |
Definition at line 1042 of file gen_irnode.c.
References current_ir_graph, get_cur_block(), IR_GRAPH_CONSTRAINT_CONSTRUCTION, irg_is_constrained(), and new_rd_Div().
Referenced by new_Div().
ir_node* new_d_DivRL | ( | dbg_info * | db, |
ir_node * | memop, | ||
ir_node * | op1, | ||
ir_node * | op2, | ||
ir_mode * | mode, | ||
int | pinned | ||
) |
Constructor for a remainderless Div node.
Adds the node to the block in current_ir_block.
*db | A pointer for debug information. |
*memop | The store needed to model exceptions |
*op1 | The first operand. |
*op2 | The second operand. |
*mode | The mode of the result. |
pinned | Whether the node is pinned in its block. |
ir_node* new_Div | ( | ir_node * | irn_mem, |
ir_node * | irn_left, | ||
ir_node * | irn_right, | ||
ir_mode * | resmode, | ||
int | pinned | ||
) |
Construct a Div node.
irn_mem | mem |
irn_left | left |
irn_right | right |
resmode | mode of the result value |
pinned | pinned state |
Definition at line 1049 of file gen_irnode.c.
References new_d_Div().
Constructor for a remainderless Div node.
Adds the node to the block in current_ir_block.
*memop | The store needed to model exceptions |
*op1 | The first operand. |
*op2 | The second operand. |
*mode | The mode of the result. |
pinned | Whether the node is pinned in its block. |
ir_node* new_r_Div | ( | ir_node * | block, |
ir_node * | irn_mem, | ||
ir_node * | irn_left, | ||
ir_node * | irn_right, | ||
ir_mode * | resmode, | ||
int | pinned | ||
) |
Construct a Div node.
block | The IR block the node belongs to. |
irn_mem | mem |
irn_left | left |
irn_right | right |
resmode | mode of the result value |
pinned | pinned state |
Definition at line 1037 of file gen_irnode.c.
References new_rd_Div().
ir_node* new_r_DivRL | ( | ir_node * | block, |
ir_node * | memop, | ||
ir_node * | op1, | ||
ir_node * | op2, | ||
ir_mode * | mode, | ||
int | pinned | ||
) |
Constructor for a remainderless Div node.
*block | The IR block the node belongs to. |
*memop | The store needed to model exceptions |
*op1 | The first operand. |
*op2 | The second operand. |
*mode | The mode of the result. |
pinned | Whether the node is pinned in its block. |
ir_node* new_rd_Div | ( | dbg_info * | dbgi, |
ir_node * | block, | ||
ir_node * | irn_mem, | ||
ir_node * | irn_left, | ||
ir_node * | irn_right, | ||
ir_mode * | resmode, | ||
int | pinned | ||
) |
Construct a Div node.
dbgi | A pointer to debug information. |
block | The IR block the node belongs to. |
irn_mem | mem |
irn_left | left |
irn_right | right |
resmode | mode of the result value |
pinned | pinned state |
Definition at line 1016 of file gen_irnode.c.
References get_irn_irg(), mode_T, new_ir_node(), op_Div, optimize_node(), and verify_new_node().
Referenced by new_d_Div(), and new_r_Div().
ir_node* new_rd_DivRL | ( | dbg_info * | db, |
ir_node * | block, | ||
ir_node * | memop, | ||
ir_node * | op1, | ||
ir_node * | op2, | ||
ir_mode * | mode, | ||
int | pinned | ||
) |
Constructor for a remainderless Div node.
*db | A pointer for debug information. |
*block | The IR block the node belongs to. |
*memop | The store needed to model exceptions |
*op1 | The first operand. |
*op2 | The second operand. |
*mode | The mode of the result. |
pinned | Whether the node is pinned in its block. |
Sets left input of a Div node.
Definition at line 1069 of file gen_irnode.c.
Sets mem input of a Div node.
Definition at line 1059 of file gen_irnode.c.
void set_Div_no_remainder | ( | ir_node * | node, |
int | no_remainder | ||
) |
Sets no_remainder attribute of a Div node.
Definition at line 3184 of file gen_irnode.c.
Sets resmode attribute of a Div node.
Definition at line 3174 of file gen_irnode.c.
Sets right input of a Div node.
Definition at line 1079 of file gen_irnode.c.
ir_op* op_Div |