equal
deleted
inserted
replaced
182 is_slp = false; |
182 is_slp = false; |
183 break; |
183 break; |
184 } |
184 } |
185 |
185 |
186 if (n->is_Mem()) { |
186 if (n->is_Mem()) { |
|
187 MemNode* current = n->as_Mem(); |
|
188 BasicType bt = current->memory_type(); |
|
189 if (is_java_primitive(bt) == false) { |
|
190 ignored_loop_nodes[i] = n->_idx; |
|
191 continue; |
|
192 } |
187 Node* adr = n->in(MemNode::Address); |
193 Node* adr = n->in(MemNode::Address); |
188 Node* n_ctrl = _phase->get_ctrl(adr); |
194 Node* n_ctrl = _phase->get_ctrl(adr); |
189 |
195 |
190 // save a queue of post process nodes |
196 // save a queue of post process nodes |
191 if (n_ctrl != NULL && lpt()->is_member(_phase->get_loop(n_ctrl))) { |
197 if (n_ctrl != NULL && lpt()->is_member(_phase->get_loop(n_ctrl))) { |
192 MemNode* current = n->as_Mem(); |
|
193 BasicType bt = current->memory_type(); |
|
194 if (is_java_primitive(bt) == false) { |
|
195 ignored_loop_nodes[i] = n->_idx; |
|
196 continue; |
|
197 } |
|
198 |
|
199 // Process the memory expression |
198 // Process the memory expression |
200 int stack_idx = 0; |
199 int stack_idx = 0; |
201 bool have_side_effects = true; |
200 bool have_side_effects = true; |
202 if (adr->is_AddP() == false) { |
201 if (adr->is_AddP() == false) { |
203 nstack.push(adr, stack_idx++); |
202 nstack.push(adr, stack_idx++); |
232 |
231 |
233 BasicType bt; |
232 BasicType bt; |
234 Node* n = lpt()->_body.at(i); |
233 Node* n = lpt()->_body.at(i); |
235 if (n->is_Store()) { |
234 if (n->is_Store()) { |
236 bt = n->as_Mem()->memory_type(); |
235 bt = n->as_Mem()->memory_type(); |
237 } |
236 } else { |
238 else { |
|
239 bt = n->bottom_type()->basic_type(); |
237 bt = n->bottom_type()->basic_type(); |
240 } |
238 } |
241 |
239 |
242 int cur_max_vector = Matcher::max_vector_size(bt); |
240 int cur_max_vector = Matcher::max_vector_size(bt); |
243 |
241 |