libFirm
Confirm node

Specifies constraints for a value. More...

Enumerations

enum  n_Confirm { n_Confirm_value, n_Confirm_bound, n_Confirm_max = n_Confirm_bound }
 Input numbers for Confirm node. More...

Functions

ir_nodenew_rd_Confirm (dbg_info *dbgi, ir_node *block, ir_node *irn_value, ir_node *irn_bound, ir_relation relation)
 Construct a Confirm node.
ir_nodenew_r_Confirm (ir_node *block, ir_node *irn_value, ir_node *irn_bound, ir_relation relation)
 Construct a Confirm node.
ir_nodenew_d_Confirm (dbg_info *dbgi, ir_node *irn_value, ir_node *irn_bound, ir_relation relation)
 Construct a Confirm node.
ir_nodenew_Confirm (ir_node *irn_value, ir_node *irn_bound, ir_relation relation)
 Construct a Confirm node.
int is_Confirm (const ir_node *node)
 Test if node is a Confirm.
ir_nodeget_Confirm_value (const ir_node *node)
 Returns value input of a Confirm node.
void set_Confirm_value (ir_node *node, ir_node *value)
 Sets value input of a Confirm node.
ir_nodeget_Confirm_bound (const ir_node *node)
 Returns bound input of a Confirm node.
void set_Confirm_bound (ir_node *node, ir_node *bound)
 Sets bound input of a Confirm node.
ir_relation get_Confirm_relation (const ir_node *node)
 Returns relation attribute of a Confirm node.
void set_Confirm_relation (ir_node *node, ir_relation relation)
 Sets relation attribute of a Confirm node.
ir_opget_op_Confirm (void)
 Returns opcode for Confirm nodes.

Variables

ir_opop_Confirm
 Confirm opcode.

Detailed Description

Specifies constraints for a value.

This allows explicit representation of path-sensitive properties. (Example: This value is always >= 0 on 1 if-branch then all users within that branch are rerouted to a confirm-node specifying this property).

A constraint is specified for the relation between value and bound. value is always returned. Note that this node does NOT check or assert the constraint, it merely specifies it.

Enumeration Type Documentation

enum n_Confirm

Input numbers for Confirm node.

Definition at line 1130 of file nodeops.h.

Function Documentation

ir_node* get_Confirm_bound ( const ir_node node)

Returns bound input of a Confirm node.

ir_relation get_Confirm_relation ( const ir_node node)

Returns relation attribute of a Confirm node.

ir_node* get_Confirm_value ( const ir_node node)

Returns value input of a Confirm node.

ir_op* get_op_Confirm ( void  )

Returns opcode for Confirm nodes.

int is_Confirm ( const ir_node node)

Test if node is a Confirm.

Returns
1 if the node is a Confirm node, 0 otherwise
ir_node* new_Confirm ( ir_node irn_value,
ir_node irn_bound,
ir_relation  relation 
)

Construct a Confirm node.

Parameters
irn_valuevalue to express a constraint for
irn_boundvalue to compare against
relationrelation of value to bound
ir_node* new_d_Confirm ( dbg_info dbgi,
ir_node irn_value,
ir_node irn_bound,
ir_relation  relation 
)

Construct a Confirm node.

Parameters
dbgiA pointer to debug information.
irn_valuevalue to express a constraint for
irn_boundvalue to compare against
relationrelation of value to bound
ir_node* new_r_Confirm ( ir_node block,
ir_node irn_value,
ir_node irn_bound,
ir_relation  relation 
)

Construct a Confirm node.

Parameters
blockThe IR block the node belongs to.
irn_valuevalue to express a constraint for
irn_boundvalue to compare against
relationrelation of value to bound
ir_node* new_rd_Confirm ( dbg_info dbgi,
ir_node block,
ir_node irn_value,
ir_node irn_bound,
ir_relation  relation 
)

Construct a Confirm node.

Parameters
dbgiA pointer to debug information.
blockThe IR block the node belongs to.
irn_valuevalue to express a constraint for
irn_boundvalue to compare against
relationrelation of value to bound
void set_Confirm_bound ( ir_node node,
ir_node bound 
)

Sets bound input of a Confirm node.

void set_Confirm_relation ( ir_node node,
ir_relation  relation 
)

Sets relation attribute of a Confirm node.

void set_Confirm_value ( ir_node node,
ir_node value 
)

Sets value input of a Confirm node.

Variable Documentation

ir_op* op_Confirm

Confirm opcode.

Definition at line 168 of file opcodes.h.