Chromium Code Reviews| Index: src/compiler/instruction-selector.cc |
| diff --git a/src/compiler/instruction-selector.cc b/src/compiler/instruction-selector.cc |
| index 17c227acc70d4636d409b94487ae48b96a6a33fc..ab58c051eb83a64c81b2935d8eb1c699c5cba06a 100644 |
| --- a/src/compiler/instruction-selector.cc |
| +++ b/src/compiler/instruction-selector.cc |
| @@ -554,6 +554,10 @@ MachineType InstructionSelector::GetMachineType(Node* node) { |
| case IrOpcode::kFloat64Div: |
| case IrOpcode::kFloat64Mod: |
| case IrOpcode::kFloat64Sqrt: |
| + case IrOpcode::kFloat64Floor: |
| + case IrOpcode::kFloat64Ceil: |
| + case IrOpcode::kFloat64RoundTruncate: |
| + case IrOpcode::kFloat64RoundTiesAway: |
| return kMachFloat64; |
| case IrOpcode::kFloat64Equal: |
| case IrOpcode::kFloat64LessThan: |
| @@ -743,15 +747,28 @@ void InstructionSelector::VisitNode(Node* node) { |
| return VisitFloat64LessThan(node); |
| case IrOpcode::kFloat64LessThanOrEqual: |
| return VisitFloat64LessThanOrEqual(node); |
| + case IrOpcode::kFloat64Floor: |
| + return MarkAsDouble(node), VisitFloat64Floor(node); |
| + case IrOpcode::kFloat64Ceil: |
| + return MarkAsDouble(node), VisitFloat64Ceil(node); |
| + case IrOpcode::kFloat64RoundTruncate: |
| + return MarkAsDouble(node), VisitFloat64RoundTruncate(node); |
| + case IrOpcode::kFloat64RoundTiesAway: |
| + return MarkAsDouble(node), VisitFloat64RoundTiesAway(node); |
| case IrOpcode::kLoadStackPointer: |
| return VisitLoadStackPointer(node); |
| default: |
| - V8_Fatal(__FILE__, __LINE__, "Unexpected operator #%d:%s @ node #%d", |
| - node->opcode(), node->op()->mnemonic(), node->id()); |
| + UnsupportedOperator(node); |
| + break; |
| } |
| } |
| +void InstructionSelector::UnsupportedOperator(Node* node) { |
| + V8_Fatal(__FILE__, __LINE__, "Unexpected operator #%d:%s @ node #%d", |
| + node->opcode(), node->op()->mnemonic(), node->id()); |
| +} |
| + |
|
Benedikt Meurer
2014/10/26 12:48:05
Nit: missing newline.
sigurds
2014/10/28 12:47:22
Done.
|
| #if V8_TURBOFAN_BACKEND |
| void InstructionSelector::VisitTruncateFloat64ToInt32(Node* node) { |