src/hotspot/share/opto/stringopts.cpp
changeset 51705 8123901bc3d1
parent 51333 f6641fcf7b7e
child 51880 ec4c3c287ca7
equal deleted inserted replaced
51704:2368e8e9cec6 51705:8123901bc3d1
  1210     index->init_req(1, __ intcon(0));
  1210     index->init_req(1, __ intcon(0));
  1211     kit.gvn().set_type(index, TypeInt::INT);
  1211     kit.gvn().set_type(index, TypeInt::INT);
  1212     kit.set_control(loop);
  1212     kit.set_control(loop);
  1213     Node* sizeTable = fetch_static_field(kit, size_table_field);
  1213     Node* sizeTable = fetch_static_field(kit, size_table_field);
  1214 
  1214 
       
  1215     sizeTable = kit.access_resolve(sizeTable, ACCESS_READ);
  1215     Node* value = kit.load_array_element(NULL, sizeTable, index, TypeAryPtr::INTS);
  1216     Node* value = kit.load_array_element(NULL, sizeTable, index, TypeAryPtr::INTS);
  1216     C->record_for_igvn(value);
  1217     C->record_for_igvn(value);
  1217     Node* limit = __ CmpI(phi, value);
  1218     Node* limit = __ CmpI(phi, value);
  1218     Node* limitb = __ Bool(limit, BoolTest::le);
  1219     Node* limitb = __ Bool(limit, BoolTest::le);
  1219     IfNode* iff2 = kit.create_and_map_if(kit.control(), limitb, PROB_MIN, COUNT_UNKNOWN);
  1220     IfNode* iff2 = kit.create_and_map_if(kit.control(), limitb, PROB_MIN, COUNT_UNKNOWN);
  1545 }
  1546 }
  1546 
  1547 
  1547 // Compress copy contents of the byte/char String str into dst_array starting at index start.
  1548 // Compress copy contents of the byte/char String str into dst_array starting at index start.
  1548 Node* PhaseStringOpts::copy_string(GraphKit& kit, Node* str, Node* dst_array, Node* dst_coder, Node* start) {
  1549 Node* PhaseStringOpts::copy_string(GraphKit& kit, Node* str, Node* dst_array, Node* dst_coder, Node* start) {
  1549   Node* src_array = kit.load_String_value(kit.control(), str);
  1550   Node* src_array = kit.load_String_value(kit.control(), str);
       
  1551   src_array = kit.access_resolve(src_array, ACCESS_READ);
  1550 
  1552 
  1551   IdealKit ideal(&kit, true, true);
  1553   IdealKit ideal(&kit, true, true);
  1552   IdealVariable count(ideal); __ declarations_done();
  1554   IdealVariable count(ideal); __ declarations_done();
  1553 
  1555 
  1554   if (str->is_Con()) {
  1556   if (str->is_Con()) {