Chromium Code Reviews| Index: runtime/vm/flow_graph_optimizer.cc |
| diff --git a/runtime/vm/flow_graph_optimizer.cc b/runtime/vm/flow_graph_optimizer.cc |
| index 2c3c14966b34a9957038c2908c94a337c64adce6..6d60c42e172ac7d048f2473238578ce03cc06821 100644 |
| --- a/runtime/vm/flow_graph_optimizer.cc |
| +++ b/runtime/vm/flow_graph_optimizer.cc |
| @@ -427,6 +427,7 @@ bool FlowGraphOptimizer::TryReplaceWithStoreIndexed(InstanceCallInstr* call) { |
| case kGrowableObjectArrayCid: |
| // Acceptable store index classes. |
| break; |
| + case kFloat32ArrayCid: |
| case kFloat64ArrayCid: { |
| // Check that value is always double. |
| value_check = call->ic_data()->AsUnaryClassChecksForArgNr(2); |
| @@ -445,7 +446,7 @@ bool FlowGraphOptimizer::TryReplaceWithStoreIndexed(InstanceCallInstr* call) { |
| Value* value = call->ArgumentAt(2)->value(); |
| // Check if store barrier is needed. |
| bool needs_store_barrier = true; |
| - if (class_id == kFloat64ArrayCid) { |
| + if (class_id == kFloat32ArrayCid || class_id == kFloat64ArrayCid) { |
|
srdjan
2012/10/19 00:58:33
Use parenthesis around == expressions.
|
| ASSERT(!value_check.IsNull()); |
| InsertBefore(call, |
| new CheckClassInstr(value->Copy(), |
| @@ -478,6 +479,7 @@ bool FlowGraphOptimizer::TryReplaceWithLoadIndexed(InstanceCallInstr* call) { |
| case kArrayCid: |
| case kImmutableArrayCid: |
| case kGrowableObjectArrayCid: |
| + case kFloat32ArrayCid: |
| case kFloat64ArrayCid: |
| // Acceptable load index classes. |
| break; |