101 // Convert a dense opcode number to an expanded rule number
102 const int *_reduceOp;
103 const int *_leftOp;
104 const int *_rightOp;
105
106 // Map dense opcode number to info on when rule is swallowed constant.
107 const bool *_swallowed;
108
109 // Map dense rule number to determine if this is an instruction chain rule
110 const uint _begin_inst_chain_rule;
111 const uint _end_inst_chain_rule;
112
113 // We want to clone constants and possible CmpI-variants.
114 // If we do not clone CmpI, then we can have many instances of
115 // condition codes alive at once. This is OK on some chips and
116 // bad on others. Hence the machine-dependent table lookup.
117 const char *_must_clone;
118
119 // Find shared Nodes, or Nodes that otherwise are Matcher roots
120 void find_shared( Node *n );
121 #ifdef X86
122 bool is_bmi_pattern(Node *n, Node *m);
123 #endif
124
125 // Debug and profile information for nodes in old space:
126 GrowableArray<Node_Notes*>* _old_node_note_array;
127
128 // Node labeling iterator for instruction selection
129 Node *Label_Root( const Node *n, State *svec, Node *control, const Node *mem );
130
131 Node *transform( Node *dummy );
132
133 Node_List _projection_list; // For Machine nodes killing many values
134
135 Node_Array _shared_nodes;
136
137 debug_only(Node_Array _old2new_map;) // Map roots of ideal-trees to machine-roots
138 debug_only(Node_Array _new2old_map;) // Maps machine nodes back to ideal
139
140 // Accessors for the inherited field PhaseTransform::_nodes:
|
101 // Convert a dense opcode number to an expanded rule number
102 const int *_reduceOp;
103 const int *_leftOp;
104 const int *_rightOp;
105
106 // Map dense opcode number to info on when rule is swallowed constant.
107 const bool *_swallowed;
108
109 // Map dense rule number to determine if this is an instruction chain rule
110 const uint _begin_inst_chain_rule;
111 const uint _end_inst_chain_rule;
112
113 // We want to clone constants and possible CmpI-variants.
114 // If we do not clone CmpI, then we can have many instances of
115 // condition codes alive at once. This is OK on some chips and
116 // bad on others. Hence the machine-dependent table lookup.
117 const char *_must_clone;
118
119 // Find shared Nodes, or Nodes that otherwise are Matcher roots
120 void find_shared( Node *n );
121 bool find_shared_visit(MStack& mstack, Node* n, uint opcode, bool& mem_op, int& mem_addr_idx);
122 void find_shared_post_visit(Node* n, uint opcode);
123
124 #ifdef X86
125 bool is_bmi_pattern(Node *n, Node *m);
126 #endif
127
128 // Debug and profile information for nodes in old space:
129 GrowableArray<Node_Notes*>* _old_node_note_array;
130
131 // Node labeling iterator for instruction selection
132 Node *Label_Root( const Node *n, State *svec, Node *control, const Node *mem );
133
134 Node *transform( Node *dummy );
135
136 Node_List _projection_list; // For Machine nodes killing many values
137
138 Node_Array _shared_nodes;
139
140 debug_only(Node_Array _old2new_map;) // Map roots of ideal-trees to machine-roots
141 debug_only(Node_Array _new2old_map;) // Maps machine nodes back to ideal
142
143 // Accessors for the inherited field PhaseTransform::_nodes:
|