Index: src/compiler/mips/instruction-selector-mips.cc |
diff --git a/src/compiler/mips/instruction-selector-mips.cc b/src/compiler/mips/instruction-selector-mips.cc |
index 0877e0005e4bf7a9a16196cbe11ddfc762df0f89..80079c2ef663fc4b1c8ec1e32010c0fa963301a9 100644 |
--- a/src/compiler/mips/instruction-selector-mips.cc |
+++ b/src/compiler/mips/instruction-selector-mips.cc |
@@ -647,7 +647,9 @@ void InstructionSelector::VisitFloat64Sqrt(Node* node) { |
} |
-void InstructionSelector::VisitFloat32RoundDown(Node* node) { UNREACHABLE(); } |
+void InstructionSelector::VisitFloat32RoundDown(Node* node) { |
+ VisitRR(this, kMipsFloat32RoundDown, node); |
+} |
void InstructionSelector::VisitFloat64RoundDown(Node* node) { |
@@ -655,7 +657,9 @@ void InstructionSelector::VisitFloat64RoundDown(Node* node) { |
} |
-void InstructionSelector::VisitFloat32RoundUp(Node* node) { UNREACHABLE(); } |
+void InstructionSelector::VisitFloat32RoundUp(Node* node) { |
+ VisitRR(this, kMipsFloat32RoundUp, node); |
+} |
void InstructionSelector::VisitFloat64RoundUp(Node* node) { |
@@ -664,7 +668,7 @@ void InstructionSelector::VisitFloat64RoundUp(Node* node) { |
void InstructionSelector::VisitFloat32RoundTruncate(Node* node) { |
- UNREACHABLE(); |
+ VisitRR(this, kMipsFloat32RoundTruncate, node); |
} |
@@ -679,7 +683,7 @@ void InstructionSelector::VisitFloat64RoundTiesAway(Node* node) { |
void InstructionSelector::VisitFloat32RoundTiesEven(Node* node) { |
- UNREACHABLE(); |
+ VisitRR(this, kMipsFloat32RoundTiesEven, node); |
} |
@@ -1199,7 +1203,11 @@ InstructionSelector::SupportedMachineOperatorFlags() { |
return flags | MachineOperatorBuilder::kFloat64Min | |
MachineOperatorBuilder::kFloat64Max | |
MachineOperatorBuilder::kFloat32Min | |
- MachineOperatorBuilder::kFloat32Max; |
+ MachineOperatorBuilder::kFloat32Max | |
+ MachineOperatorBuilder::kFloat32RoundDown | |
+ MachineOperatorBuilder::kFloat32RoundUp | |
+ MachineOperatorBuilder::kFloat32RoundTruncate | |
+ MachineOperatorBuilder::kFloat32RoundTiesEven; |
} |
} // namespace compiler |