| Index: runtime/vm/flow_graph_optimizer.cc
|
| ===================================================================
|
| --- runtime/vm/flow_graph_optimizer.cc (revision 17219)
|
| +++ runtime/vm/flow_graph_optimizer.cc (working copy)
|
| @@ -1220,7 +1220,7 @@
|
| }
|
|
|
|
|
| -StringCharCodeAtInstr* FlowGraphOptimizer::BuildStringCharCodeAt(
|
| +LoadIndexedInstr* FlowGraphOptimizer::BuildStringCharCodeAt(
|
| InstanceCallInstr* call,
|
| intptr_t cid) {
|
| Value* str = call->ArgumentAt(0)->value();
|
| @@ -1253,7 +1253,7 @@
|
| call->env(),
|
| Definition::kEffect);
|
| }
|
| - return new StringCharCodeAtInstr(str, index, cid);
|
| + return new LoadIndexedInstr(str, index, cid);
|
| }
|
|
|
|
|
| @@ -1274,7 +1274,7 @@
|
| (ic_data.NumberOfChecks() == 1) &&
|
| ((class_ids[0] == kOneByteStringCid) ||
|
| (class_ids[0] == kTwoByteStringCid))) {
|
| - StringCharCodeAtInstr* instr = BuildStringCharCodeAt(call, class_ids[0]);
|
| + LoadIndexedInstr* instr = BuildStringCharCodeAt(call, class_ids[0]);
|
| call->ReplaceWith(instr, current_iterator());
|
| RemovePushArguments(call);
|
| return true;
|
| @@ -1283,7 +1283,7 @@
|
| (ic_data.NumberOfChecks() == 1) &&
|
| (class_ids[0] == kOneByteStringCid)) {
|
| // TODO(fschneider): Handle TwoByteString.
|
| - StringCharCodeAtInstr* load_char_code =
|
| + LoadIndexedInstr* load_char_code =
|
| BuildStringCharCodeAt(call, class_ids[0]);
|
| InsertBefore(call, load_char_code, NULL, Definition::kValue);
|
| StringFromCharCodeInstr* char_at =
|
| @@ -4036,11 +4036,6 @@
|
| }
|
|
|
|
|
| -void ConstantPropagator::VisitStringCharCodeAt(StringCharCodeAtInstr* instr) {
|
| - SetValue(instr, non_constant_);
|
| -}
|
| -
|
| -
|
| void ConstantPropagator::VisitStringFromCharCode(
|
| StringFromCharCodeInstr* instr) {
|
| SetValue(instr, non_constant_);
|
|
|