| Index: runtime/vm/flow_graph_inliner.cc
|
| diff --git a/runtime/vm/flow_graph_inliner.cc b/runtime/vm/flow_graph_inliner.cc
|
| index 8e10ce1e082e5346f70597d8ff9dc740a4a57071..b8f8fb4327f4c0b02ce5b81f41ad8d81e2792baa 100644
|
| --- a/runtime/vm/flow_graph_inliner.cc
|
| +++ b/runtime/vm/flow_graph_inliner.cc
|
| @@ -98,7 +98,6 @@ DECLARE_FLAG(bool, compiler_stats);
|
| DECLARE_FLAG(int, max_deoptimization_counter_threshold);
|
| DECLARE_FLAG(bool, print_flow_graph);
|
| DECLARE_FLAG(bool, print_flow_graph_optimized);
|
| -DECLARE_FLAG(bool, support_externalizable_strings);
|
| DECLARE_FLAG(bool, verify_compiler);
|
|
|
| // Quick access to the current zone.
|
| @@ -2730,15 +2729,11 @@ static Definition* PrepareInlineStringIndexOp(FlowGraph* flow_graph,
|
| Definition* str,
|
| Definition* index,
|
| Instruction* cursor) {
|
| - // Load the length of the string.
|
| - // Treat length loads as mutable (i.e. affected by side effects) to avoid
|
| - // hoisting them since we can't hoist the preceding class-check. This
|
| - // is because of externalization of strings that affects their class-id.
|
| LoadFieldInstr* length = new (Z)
|
| LoadFieldInstr(new (Z) Value(str), String::length_offset(),
|
| Type::ZoneHandle(Z, Type::SmiType()), str->token_pos());
|
| length->set_result_cid(kSmiCid);
|
| - length->set_is_immutable(!FLAG_support_externalizable_strings);
|
| + length->set_is_immutable(true);
|
| length->set_recognized_kind(MethodRecognizer::kStringBaseLength);
|
|
|
| cursor = flow_graph->AppendTo(cursor, length, NULL, FlowGraph::kValue);
|
|
|