| Index: runtime/vm/object.cc
|
| diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc
|
| index 22a93dc6dd1d65c597bd5ae1eb9cebfe5caf4f6f..79bb838d407e9600c607f6db9a39ca7fe6ac7321 100644
|
| --- a/runtime/vm/object.cc
|
| +++ b/runtime/vm/object.cc
|
| @@ -26,6 +26,7 @@
|
| #include "vm/double_conversion.h"
|
| #include "vm/exceptions.h"
|
| #include "vm/flow_graph_builder.h"
|
| +#include "vm/flow_graph_compiler.h"
|
| #include "vm/growable_array.h"
|
| #include "vm/heap.h"
|
| #include "vm/intermediate_language.h"
|
| @@ -6450,9 +6451,11 @@ void Field::set_guarded_list_length(intptr_t list_length) const {
|
|
|
|
|
| bool Field::IsUnboxedField() const {
|
| - // TODO(johnmccutchan): Add kFloat32x4Cid here.
|
| + bool valid_class = (guarded_cid() == kDoubleCid) ||
|
| + (FlowGraphCompiler::SupportsUnboxedFloat32x4() &&
|
| + (guarded_cid() == kFloat32x4Cid));
|
| return is_unboxing_candidate() && !is_final() && !is_nullable() &&
|
| - ((guarded_cid() == kDoubleCid));
|
| + valid_class;
|
| }
|
|
|
|
|
|
|