OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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/representation-change.h" | 5 #include "src/compiler/representation-change.h" |
6 | 6 |
7 #include <sstream> | 7 #include <sstream> |
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 728 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
739 return simplified()->CheckedInt32Mod(); | 739 return simplified()->CheckedInt32Mod(); |
740 default: | 740 default: |
741 UNREACHABLE(); | 741 UNREACHABLE(); |
742 return nullptr; | 742 return nullptr; |
743 } | 743 } |
744 } | 744 } |
745 | 745 |
746 const Operator* RepresentationChanger::Uint32OperatorFor( | 746 const Operator* RepresentationChanger::Uint32OperatorFor( |
747 IrOpcode::Value opcode) { | 747 IrOpcode::Value opcode) { |
748 switch (opcode) { | 748 switch (opcode) { |
| 749 case IrOpcode::kSpeculativeNumberAdd: |
749 case IrOpcode::kNumberAdd: | 750 case IrOpcode::kNumberAdd: |
750 return machine()->Int32Add(); | 751 return machine()->Int32Add(); |
| 752 case IrOpcode::kSpeculativeNumberSubtract: |
751 case IrOpcode::kNumberSubtract: | 753 case IrOpcode::kNumberSubtract: |
752 return machine()->Int32Sub(); | 754 return machine()->Int32Sub(); |
753 case IrOpcode::kSpeculativeNumberMultiply: | 755 case IrOpcode::kSpeculativeNumberMultiply: |
754 case IrOpcode::kNumberMultiply: | 756 case IrOpcode::kNumberMultiply: |
755 return machine()->Int32Mul(); | 757 return machine()->Int32Mul(); |
756 case IrOpcode::kSpeculativeNumberDivide: | 758 case IrOpcode::kSpeculativeNumberDivide: |
757 case IrOpcode::kNumberDivide: | 759 case IrOpcode::kNumberDivide: |
758 return machine()->Uint32Div(); | 760 return machine()->Uint32Div(); |
759 case IrOpcode::kSpeculativeNumberModulus: | 761 case IrOpcode::kSpeculativeNumberModulus: |
760 case IrOpcode::kNumberModulus: | 762 case IrOpcode::kNumberModulus: |
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
927 } | 929 } |
928 | 930 |
929 Node* RepresentationChanger::InsertChangeTaggedToFloat64(Node* node) { | 931 Node* RepresentationChanger::InsertChangeTaggedToFloat64(Node* node) { |
930 return jsgraph()->graph()->NewNode(simplified()->ChangeTaggedToFloat64(), | 932 return jsgraph()->graph()->NewNode(simplified()->ChangeTaggedToFloat64(), |
931 node); | 933 node); |
932 } | 934 } |
933 | 935 |
934 } // namespace compiler | 936 } // namespace compiler |
935 } // namespace internal | 937 } // namespace internal |
936 } // namespace v8 | 938 } // namespace v8 |
OLD | NEW |