1.1 --- a/src/share/vm/opto/stringopts.cpp Tue Sep 25 15:48:17 2012 -0700 1.2 +++ b/src/share/vm/opto/stringopts.cpp Thu Sep 27 09:38:42 2012 -0700 1.3 @@ -69,7 +69,7 @@ 1.4 _multiple(false), 1.5 _string_alloc(NULL), 1.6 _stringopts(stringopts) { 1.7 - _arguments = new (_stringopts->C, 1) Node(1); 1.8 + _arguments = new (_stringopts->C) Node(1); 1.9 _arguments->del_req(0); 1.10 } 1.11 1.12 @@ -220,11 +220,10 @@ 1.13 // Build a new call using the jvms state of the allocate 1.14 address call_addr = SharedRuntime::uncommon_trap_blob()->entry_point(); 1.15 const TypeFunc* call_type = OptoRuntime::uncommon_trap_Type(); 1.16 - int size = call_type->domain()->cnt(); 1.17 const TypePtr* no_memory_effects = NULL; 1.18 Compile* C = _stringopts->C; 1.19 - CallStaticJavaNode* call = new (C, size) CallStaticJavaNode(call_type, call_addr, "uncommon_trap", 1.20 - jvms->bci(), no_memory_effects); 1.21 + CallStaticJavaNode* call = new (C) CallStaticJavaNode(call_type, call_addr, "uncommon_trap", 1.22 + jvms->bci(), no_memory_effects); 1.23 for (int e = 0; e < TypeFunc::Parms; e++) { 1.24 call->init_req(e, uct->in(e)); 1.25 } 1.26 @@ -969,9 +968,9 @@ 1.27 } 1.28 1.29 Node* PhaseStringOpts::int_stringSize(GraphKit& kit, Node* arg) { 1.30 - RegionNode *final_merge = new (C, 3) RegionNode(3); 1.31 + RegionNode *final_merge = new (C) RegionNode(3); 1.32 kit.gvn().set_type(final_merge, Type::CONTROL); 1.33 - Node* final_size = new (C, 3) PhiNode(final_merge, TypeInt::INT); 1.34 + Node* final_size = new (C) PhiNode(final_merge, TypeInt::INT); 1.35 kit.gvn().set_type(final_size, TypeInt::INT); 1.36 1.37 IfNode* iff = kit.create_and_map_if(kit.control(), 1.38 @@ -988,11 +987,11 @@ 1.39 } else { 1.40 1.41 // int size = (i < 0) ? stringSize(-i) + 1 : stringSize(i); 1.42 - RegionNode *r = new (C, 3) RegionNode(3); 1.43 + RegionNode *r = new (C) RegionNode(3); 1.44 kit.gvn().set_type(r, Type::CONTROL); 1.45 - Node *phi = new (C, 3) PhiNode(r, TypeInt::INT); 1.46 + Node *phi = new (C) PhiNode(r, TypeInt::INT); 1.47 kit.gvn().set_type(phi, TypeInt::INT); 1.48 - Node *size = new (C, 3) PhiNode(r, TypeInt::INT); 1.49 + Node *size = new (C) PhiNode(r, TypeInt::INT); 1.50 kit.gvn().set_type(size, TypeInt::INT); 1.51 Node* chk = __ CmpI(arg, __ intcon(0)); 1.52 Node* p = __ Bool(chk, BoolTest::lt); 1.53 @@ -1017,11 +1016,11 @@ 1.54 // Add loop predicate first. 1.55 kit.add_predicate(); 1.56 1.57 - RegionNode *loop = new (C, 3) RegionNode(3); 1.58 + RegionNode *loop = new (C) RegionNode(3); 1.59 loop->init_req(1, kit.control()); 1.60 kit.gvn().set_type(loop, Type::CONTROL); 1.61 1.62 - Node *index = new (C, 3) PhiNode(loop, TypeInt::INT); 1.63 + Node *index = new (C) PhiNode(loop, TypeInt::INT); 1.64 index->init_req(1, __ intcon(0)); 1.65 kit.gvn().set_type(index, TypeInt::INT); 1.66 kit.set_control(loop); 1.67 @@ -1054,7 +1053,7 @@ 1.68 } 1.69 1.70 void PhaseStringOpts::int_getChars(GraphKit& kit, Node* arg, Node* char_array, Node* start, Node* end) { 1.71 - RegionNode *final_merge = new (C, 4) RegionNode(4); 1.72 + RegionNode *final_merge = new (C) RegionNode(4); 1.73 kit.gvn().set_type(final_merge, Type::CONTROL); 1.74 Node *final_mem = PhiNode::make(final_merge, kit.memory(char_adr_idx), Type::MEMORY, TypeAryPtr::CHARS); 1.75 kit.gvn().set_type(final_mem, Type::MEMORY); 1.76 @@ -1104,11 +1103,11 @@ 1.77 __ Bool(__ CmpI(arg, __ intcon(0)), BoolTest::lt), 1.78 PROB_FAIR, COUNT_UNKNOWN); 1.79 1.80 - RegionNode *merge = new (C, 3) RegionNode(3); 1.81 + RegionNode *merge = new (C) RegionNode(3); 1.82 kit.gvn().set_type(merge, Type::CONTROL); 1.83 - i = new (C, 3) PhiNode(merge, TypeInt::INT); 1.84 + i = new (C) PhiNode(merge, TypeInt::INT); 1.85 kit.gvn().set_type(i, TypeInt::INT); 1.86 - sign = new (C, 3) PhiNode(merge, TypeInt::INT); 1.87 + sign = new (C) PhiNode(merge, TypeInt::INT); 1.88 kit.gvn().set_type(sign, TypeInt::INT); 1.89 1.90 merge->init_req(1, __ IfTrue(iff)); 1.91 @@ -1137,10 +1136,10 @@ 1.92 // Add loop predicate first. 1.93 kit.add_predicate(); 1.94 1.95 - RegionNode *head = new (C, 3) RegionNode(3); 1.96 + RegionNode *head = new (C) RegionNode(3); 1.97 head->init_req(1, kit.control()); 1.98 kit.gvn().set_type(head, Type::CONTROL); 1.99 - Node *i_phi = new (C, 3) PhiNode(head, TypeInt::INT); 1.100 + Node *i_phi = new (C) PhiNode(head, TypeInt::INT); 1.101 i_phi->init_req(1, i); 1.102 kit.gvn().set_type(i_phi, TypeInt::INT); 1.103 charPos = PhiNode::make(head, charPos); 1.104 @@ -1261,7 +1260,7 @@ 1.105 // as a shim for the insertion of the new code. 1.106 JVMState* jvms = sc->begin()->jvms()->clone_shallow(C); 1.107 uint size = sc->begin()->req(); 1.108 - SafePointNode* map = new (C, size) SafePointNode(size, jvms); 1.109 + SafePointNode* map = new (C) SafePointNode(size, jvms); 1.110 1.111 // copy the control and memory state from the final call into our 1.112 // new starting state. This allows any preceeding tests to feed 1.113 @@ -1306,12 +1305,12 @@ 1.114 1.115 // Create a region for the overflow checks to merge into. 1.116 int args = MAX2(sc->num_arguments(), 1); 1.117 - RegionNode* overflow = new (C, args) RegionNode(args); 1.118 + RegionNode* overflow = new (C) RegionNode(args); 1.119 kit.gvn().set_type(overflow, Type::CONTROL); 1.120 1.121 // Create a hook node to hold onto the individual sizes since they 1.122 // are need for the copying phase. 1.123 - Node* string_sizes = new (C, args) Node(args); 1.124 + Node* string_sizes = new (C) Node(args); 1.125 1.126 Node* length = __ intcon(0); 1.127 for (int argi = 0; argi < sc->num_arguments(); argi++) { 1.128 @@ -1355,9 +1354,9 @@ 1.129 } else if (!type->higher_equal(TypeInstPtr::NOTNULL)) { 1.130 // s = s != null ? s : "null"; 1.131 // length = length + (s.count - s.offset); 1.132 - RegionNode *r = new (C, 3) RegionNode(3); 1.133 + RegionNode *r = new (C) RegionNode(3); 1.134 kit.gvn().set_type(r, Type::CONTROL); 1.135 - Node *phi = new (C, 3) PhiNode(r, type); 1.136 + Node *phi = new (C) PhiNode(r, type); 1.137 kit.gvn().set_type(phi, phi->bottom_type()); 1.138 Node* p = __ Bool(__ CmpP(arg, kit.null()), BoolTest::ne); 1.139 IfNode* iff = kit.create_and_map_if(kit.control(), p, PROB_MIN, COUNT_UNKNOWN);