| 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 701 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 712 case IrOpcode::kNumberAsinh: | 712 case IrOpcode::kNumberAsinh: |
| 713 return machine()->Float64Asinh(); | 713 return machine()->Float64Asinh(); |
| 714 case IrOpcode::kNumberAtan: | 714 case IrOpcode::kNumberAtan: |
| 715 return machine()->Float64Atan(); | 715 return machine()->Float64Atan(); |
| 716 case IrOpcode::kNumberAtanh: | 716 case IrOpcode::kNumberAtanh: |
| 717 return machine()->Float64Atanh(); | 717 return machine()->Float64Atanh(); |
| 718 case IrOpcode::kNumberAtan2: | 718 case IrOpcode::kNumberAtan2: |
| 719 return machine()->Float64Atan2(); | 719 return machine()->Float64Atan2(); |
| 720 case IrOpcode::kNumberCbrt: | 720 case IrOpcode::kNumberCbrt: |
| 721 return machine()->Float64Cbrt(); | 721 return machine()->Float64Cbrt(); |
| 722 case IrOpcode::kNumberCeil: |
| 723 return machine()->Float64RoundUp().placeholder(); |
| 722 case IrOpcode::kNumberCos: | 724 case IrOpcode::kNumberCos: |
| 723 return machine()->Float64Cos(); | 725 return machine()->Float64Cos(); |
| 724 case IrOpcode::kNumberCosh: | 726 case IrOpcode::kNumberCosh: |
| 725 return machine()->Float64Cosh(); | 727 return machine()->Float64Cosh(); |
| 726 case IrOpcode::kNumberExp: | 728 case IrOpcode::kNumberExp: |
| 727 return machine()->Float64Exp(); | 729 return machine()->Float64Exp(); |
| 728 case IrOpcode::kNumberExpm1: | 730 case IrOpcode::kNumberExpm1: |
| 729 return machine()->Float64Expm1(); | 731 return machine()->Float64Expm1(); |
| 732 case IrOpcode::kNumberFloor: |
| 733 return machine()->Float64RoundDown().placeholder(); |
| 730 case IrOpcode::kNumberFround: | 734 case IrOpcode::kNumberFround: |
| 731 return machine()->TruncateFloat64ToFloat32(); | 735 return machine()->TruncateFloat64ToFloat32(); |
| 732 case IrOpcode::kNumberLog: | 736 case IrOpcode::kNumberLog: |
| 733 return machine()->Float64Log(); | 737 return machine()->Float64Log(); |
| 734 case IrOpcode::kNumberLog1p: | 738 case IrOpcode::kNumberLog1p: |
| 735 return machine()->Float64Log1p(); | 739 return machine()->Float64Log1p(); |
| 736 case IrOpcode::kNumberLog2: | 740 case IrOpcode::kNumberLog2: |
| 737 return machine()->Float64Log2(); | 741 return machine()->Float64Log2(); |
| 738 case IrOpcode::kNumberLog10: | 742 case IrOpcode::kNumberLog10: |
| 739 return machine()->Float64Log10(); | 743 return machine()->Float64Log10(); |
| 740 case IrOpcode::kNumberMax: | 744 case IrOpcode::kNumberMax: |
| 741 return machine()->Float64Max(); | 745 return machine()->Float64Max(); |
| 742 case IrOpcode::kNumberMin: | 746 case IrOpcode::kNumberMin: |
| 743 return machine()->Float64Min(); | 747 return machine()->Float64Min(); |
| 744 case IrOpcode::kNumberPow: | 748 case IrOpcode::kNumberPow: |
| 745 return machine()->Float64Pow(); | 749 return machine()->Float64Pow(); |
| 746 case IrOpcode::kNumberSin: | 750 case IrOpcode::kNumberSin: |
| 747 return machine()->Float64Sin(); | 751 return machine()->Float64Sin(); |
| 748 case IrOpcode::kNumberSinh: | 752 case IrOpcode::kNumberSinh: |
| 749 return machine()->Float64Sinh(); | 753 return machine()->Float64Sinh(); |
| 750 case IrOpcode::kNumberSqrt: | 754 case IrOpcode::kNumberSqrt: |
| 751 return machine()->Float64Sqrt(); | 755 return machine()->Float64Sqrt(); |
| 752 case IrOpcode::kNumberTan: | 756 case IrOpcode::kNumberTan: |
| 753 return machine()->Float64Tan(); | 757 return machine()->Float64Tan(); |
| 754 case IrOpcode::kNumberTanh: | 758 case IrOpcode::kNumberTanh: |
| 755 return machine()->Float64Tanh(); | 759 return machine()->Float64Tanh(); |
| 760 case IrOpcode::kNumberTrunc: |
| 761 return machine()->Float64RoundTruncate().placeholder(); |
| 756 case IrOpcode::kNumberSilenceNaN: | 762 case IrOpcode::kNumberSilenceNaN: |
| 757 return machine()->Float64SilenceNaN(); | 763 return machine()->Float64SilenceNaN(); |
| 758 default: | 764 default: |
| 759 UNREACHABLE(); | 765 UNREACHABLE(); |
| 760 return nullptr; | 766 return nullptr; |
| 761 } | 767 } |
| 762 } | 768 } |
| 763 | 769 |
| 764 | 770 |
| 765 Node* RepresentationChanger::TypeError(Node* node, | 771 Node* RepresentationChanger::TypeError(Node* node, |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 804 } | 810 } |
| 805 | 811 |
| 806 Node* RepresentationChanger::InsertChangeTaggedToFloat64(Node* node) { | 812 Node* RepresentationChanger::InsertChangeTaggedToFloat64(Node* node) { |
| 807 return jsgraph()->graph()->NewNode(simplified()->ChangeTaggedToFloat64(), | 813 return jsgraph()->graph()->NewNode(simplified()->ChangeTaggedToFloat64(), |
| 808 node); | 814 node); |
| 809 } | 815 } |
| 810 | 816 |
| 811 } // namespace compiler | 817 } // namespace compiler |
| 812 } // namespace internal | 818 } // namespace internal |
| 813 } // namespace v8 | 819 } // namespace v8 |
| OLD | NEW |