libFirm 1.20
Shrs node

Returns its first operands bits shifted right by the amount of the 2nd operand. More...

Enumerations

enum  n_Shrs { n_Shrs_left, n_Shrs_right, n_Shrs_max = n_Shrs_right }
 Input numbers for Shrs node. More...

Functions

ir_nodenew_rd_Shrs (dbg_info *dbgi, ir_node *block, ir_node *irn_left, ir_node *irn_right, ir_mode *mode)
 Construct a Shrs node.
ir_nodenew_r_Shrs (ir_node *block, ir_node *irn_left, ir_node *irn_right, ir_mode *mode)
 Construct a Shrs node.
ir_nodenew_d_Shrs (dbg_info *dbgi, ir_node *irn_left, ir_node *irn_right, ir_mode *mode)
 Construct a Shrs node.
ir_nodenew_Shrs (ir_node *irn_left, ir_node *irn_right, ir_mode *mode)
 Construct a Shrs node.
int is_Shrs (const ir_node *node)
 Test if node is a Shrs.
ir_nodeget_Shrs_left (const ir_node *node)
 Returns left input of a Shrs node.
void set_Shrs_left (ir_node *node, ir_node *left)
 Sets left input of a Shrs node.
ir_nodeget_Shrs_right (const ir_node *node)
 Returns right input of a Shrs node.
void set_Shrs_right (ir_node *node, ir_node *right)
 Sets right input of a Shrs node.
ir_opget_op_Shrs (void)
 Returns opcode for Shrs nodes.

Variables

ir_opop_Shrs
 Shrs opcode.

Detailed Description

Returns its first operands bits shifted right by the amount of the 2nd operand.

The leftmost bit (usually the sign bit) stays the same (sign extension)


Enumeration Type Documentation

enum n_Shrs

Input numbers for Shrs node.

Definition at line 3357 of file nodeops.h.


Function Documentation

ir_op* get_op_Shrs ( void  )

Returns opcode for Shrs nodes.

ir_node* get_Shrs_left ( const ir_node node)

Returns left input of a Shrs node.

ir_node* get_Shrs_right ( const ir_node node)

Returns right input of a Shrs node.

int is_Shrs ( const ir_node node)

Test if node is a Shrs.

Returns:
1 if the node is a Shrs node, 0 otherwise
ir_node* new_d_Shrs ( dbg_info dbgi,
ir_node irn_left,
ir_node irn_right,
ir_mode mode 
)

Construct a Shrs node.

Parameters:
dbgiA pointer to debug information.
irn_leftfirst operand
irn_rightsecond operand
modemode of the operations result
ir_node* new_r_Shrs ( ir_node block,
ir_node irn_left,
ir_node irn_right,
ir_mode mode 
)

Construct a Shrs node.

Parameters:
blockThe IR block the node belongs to.
irn_leftfirst operand
irn_rightsecond operand
modemode of the operations result
ir_node* new_rd_Shrs ( dbg_info dbgi,
ir_node block,
ir_node irn_left,
ir_node irn_right,
ir_mode mode 
)

Construct a Shrs node.

Parameters:
dbgiA pointer to debug information.
blockThe IR block the node belongs to.
irn_leftfirst operand
irn_rightsecond operand
modemode of the operations result
ir_node* new_Shrs ( ir_node irn_left,
ir_node irn_right,
ir_mode mode 
)

Construct a Shrs node.

Parameters:
irn_leftfirst operand
irn_rightsecond operand
modemode of the operations result
void set_Shrs_left ( ir_node node,
ir_node left 
)

Sets left input of a Shrs node.

void set_Shrs_right ( ir_node node,
ir_node right 
)

Sets right input of a Shrs node.


Variable Documentation

Shrs opcode.

Definition at line 329 of file opcodes.h.