Index: runtime/vm/flow_graph_type_propagator.cc |
diff --git a/runtime/vm/flow_graph_type_propagator.cc b/runtime/vm/flow_graph_type_propagator.cc |
index 791d97a84decb71448df22d8b92b68b00d985c56..6dc3a61103693292eab5d9bc13bc2158881628d5 100644 |
--- a/runtime/vm/flow_graph_type_propagator.cc |
+++ b/runtime/vm/flow_graph_type_propagator.cc |
@@ -1049,13 +1049,26 @@ CompileType BinaryFloat32x4OpInstr::ComputeType() const { |
} |
-CompileType Float32x4ShuffleInstr::ComputeType() const { |
+CompileType Simd32x4ShuffleInstr::ComputeType() const { |
if ((op_kind() == MethodRecognizer::kFloat32x4ShuffleX) || |
(op_kind() == MethodRecognizer::kFloat32x4ShuffleY) || |
(op_kind() == MethodRecognizer::kFloat32x4ShuffleZ) || |
(op_kind() == MethodRecognizer::kFloat32x4ShuffleW)) { |
return CompileType::FromCid(kDoubleCid); |
} |
+ if ((op_kind() == MethodRecognizer::kUint32x4Shuffle)) { |
+ return CompileType::FromCid(kUint32x4Cid); |
+ } |
+ ASSERT((op_kind() == MethodRecognizer::kFloat32x4Shuffle)); |
+ return CompileType::FromCid(kFloat32x4Cid); |
+} |
+ |
+ |
+CompileType Simd32x4ShuffleMixInstr::ComputeType() const { |
+ if (op_kind() == MethodRecognizer::kUint32x4ShuffleMix) { |
+ return CompileType::FromCid(kUint32x4Cid); |
+ } |
+ ASSERT((op_kind() == MethodRecognizer::kFloat32x4ShuffleMix)); |
return CompileType::FromCid(kFloat32x4Cid); |
} |
@@ -1120,11 +1133,6 @@ CompileType Float32x4ToUint32x4Instr::ComputeType() const { |
} |
-CompileType Float32x4TwoArgShuffleInstr::ComputeType() const { |
- return CompileType::FromCid(kFloat32x4Cid); |
-} |
- |
- |
CompileType Uint32x4BoolConstructorInstr::ComputeType() const { |
return CompileType::FromCid(kUint32x4Cid); |
} |