289 // ChecCastPP - allocation that this is a cast of |
289 // ChecCastPP - allocation that this is a cast of |
290 // allocation - CheckCastPP of the allocation |
290 // allocation - CheckCastPP of the allocation |
291 bool split_AddP(Node *addp, Node *base, PhaseGVN *igvn); |
291 bool split_AddP(Node *addp, Node *base, PhaseGVN *igvn); |
292 PhiNode *create_split_phi(PhiNode *orig_phi, int alias_idx, GrowableArray<PhiNode *> &orig_phi_worklist, PhaseGVN *igvn, bool &new_created); |
292 PhiNode *create_split_phi(PhiNode *orig_phi, int alias_idx, GrowableArray<PhiNode *> &orig_phi_worklist, PhaseGVN *igvn, bool &new_created); |
293 PhiNode *split_memory_phi(PhiNode *orig_phi, int alias_idx, GrowableArray<PhiNode *> &orig_phi_worklist, PhaseGVN *igvn); |
293 PhiNode *split_memory_phi(PhiNode *orig_phi, int alias_idx, GrowableArray<PhiNode *> &orig_phi_worklist, PhaseGVN *igvn); |
294 Node *find_mem(Node *mem, int alias_idx, PhaseGVN *igvn); |
294 void move_inst_mem(Node* n, GrowableArray<PhiNode *> &orig_phis, PhaseGVN *igvn); |
295 Node *find_inst_mem(Node *mem, int alias_idx,GrowableArray<PhiNode *> &orig_phi_worklist, PhaseGVN *igvn); |
295 Node *find_inst_mem(Node *mem, int alias_idx,GrowableArray<PhiNode *> &orig_phi_worklist, PhaseGVN *igvn); |
296 |
296 |
297 // Propagate unique types created for unescaped allocated objects |
297 // Propagate unique types created for unescaped allocated objects |
298 // through the graph |
298 // through the graph |
299 void split_unique_types(GrowableArray<Node *> &alloc_worklist); |
299 void split_unique_types(GrowableArray<Node *> &alloc_worklist); |
300 |
300 |
301 // manage entries in _node_map |
301 // manage entries in _node_map |
302 void set_map(int idx, Node *n) { _node_map.map(idx, n); } |
302 void set_map(int idx, Node *n) { _node_map.map(idx, n); } |
303 void set_map_phi(int idx, PhiNode *p) { _node_map.map(idx, (Node *) p); } |
|
304 Node *get_map(int idx) { return _node_map[idx]; } |
303 Node *get_map(int idx) { return _node_map[idx]; } |
305 PhiNode *get_map_phi(int idx) { |
304 PhiNode *get_map_phi(int idx) { |
306 Node *phi = _node_map[idx]; |
305 Node *phi = _node_map[idx]; |
307 return (phi == NULL) ? NULL : phi->as_Phi(); |
306 return (phi == NULL) ? NULL : phi->as_Phi(); |
308 } |
307 } |