OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/compiler/simplified-lowering.h" | 5 #include "src/compiler/simplified-lowering.h" |
6 | 6 |
7 #include <limits> | 7 #include <limits> |
8 | 8 |
9 #include "src/base/bits.h" | 9 #include "src/base/bits.h" |
10 #include "src/code-factory.h" | 10 #include "src/code-factory.h" |
(...skipping 455 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
466 case IrOpcode::kStart: | 466 case IrOpcode::kStart: |
467 case IrOpcode::kDead: | 467 case IrOpcode::kDead: |
468 return VisitLeaf(node, 0); | 468 return VisitLeaf(node, 0); |
469 case IrOpcode::kParameter: { | 469 case IrOpcode::kParameter: { |
470 // TODO(titzer): use representation from linkage. | 470 // TODO(titzer): use representation from linkage. |
471 Type* upper = NodeProperties::GetBounds(node).upper; | 471 Type* upper = NodeProperties::GetBounds(node).upper; |
472 ProcessInput(node, 0, 0); | 472 ProcessInput(node, 0, 0); |
473 SetOutput(node, kRepTagged | changer_->TypeFromUpperBound(upper)); | 473 SetOutput(node, kRepTagged | changer_->TypeFromUpperBound(upper)); |
474 return; | 474 return; |
475 } | 475 } |
| 476 case IrOpcode::kAlways: |
| 477 return VisitLeaf(node, kRepBit); |
476 case IrOpcode::kInt32Constant: | 478 case IrOpcode::kInt32Constant: |
477 return VisitLeaf(node, kRepWord32); | 479 return VisitLeaf(node, kRepWord32); |
478 case IrOpcode::kInt64Constant: | 480 case IrOpcode::kInt64Constant: |
479 return VisitLeaf(node, kRepWord64); | 481 return VisitLeaf(node, kRepWord64); |
480 case IrOpcode::kFloat64Constant: | 482 case IrOpcode::kFloat64Constant: |
481 return VisitLeaf(node, kRepFloat64); | 483 return VisitLeaf(node, kRepFloat64); |
482 case IrOpcode::kExternalConstant: | 484 case IrOpcode::kExternalConstant: |
483 return VisitLeaf(node, kMachPtr); | 485 return VisitLeaf(node, kMachPtr); |
484 case IrOpcode::kNumberConstant: | 486 case IrOpcode::kNumberConstant: |
485 return VisitLeaf(node, kRepTagged); | 487 return VisitLeaf(node, kRepTagged); |
(...skipping 1027 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1513 | 1515 |
1514 void SimplifiedLowering::DoStringLessThanOrEqual(Node* node) { | 1516 void SimplifiedLowering::DoStringLessThanOrEqual(Node* node) { |
1515 node->set_op(machine()->IntLessThanOrEqual()); | 1517 node->set_op(machine()->IntLessThanOrEqual()); |
1516 node->ReplaceInput(0, StringComparison(node, true)); | 1518 node->ReplaceInput(0, StringComparison(node, true)); |
1517 node->ReplaceInput(1, jsgraph()->SmiConstant(EQUAL)); | 1519 node->ReplaceInput(1, jsgraph()->SmiConstant(EQUAL)); |
1518 } | 1520 } |
1519 | 1521 |
1520 } // namespace compiler | 1522 } // namespace compiler |
1521 } // namespace internal | 1523 } // namespace internal |
1522 } // namespace v8 | 1524 } // namespace v8 |
OLD | NEW |