OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 #ifndef V8_CRANKSHAFT_MIPS_LITHIUM_MIPS_H_ | 5 #ifndef V8_CRANKSHAFT_MIPS_LITHIUM_MIPS_H_ |
6 #define V8_CRANKSHAFT_MIPS_LITHIUM_MIPS_H_ | 6 #define V8_CRANKSHAFT_MIPS_LITHIUM_MIPS_H_ |
7 | 7 |
8 #include "src/crankshaft/hydrogen.h" | 8 #include "src/crankshaft/hydrogen.h" |
9 #include "src/crankshaft/lithium.h" | 9 #include "src/crankshaft/lithium.h" |
10 #include "src/crankshaft/lithium-allocator.h" | 10 #include "src/crankshaft/lithium-allocator.h" |
(...skipping 864 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
875 public: | 875 public: |
876 explicit LMathClz32(LOperand* value) { | 876 explicit LMathClz32(LOperand* value) { |
877 inputs_[0] = value; | 877 inputs_[0] = value; |
878 } | 878 } |
879 | 879 |
880 LOperand* value() { return inputs_[0]; } | 880 LOperand* value() { return inputs_[0]; } |
881 | 881 |
882 DECLARE_CONCRETE_INSTRUCTION(MathClz32, "math-clz32") | 882 DECLARE_CONCRETE_INSTRUCTION(MathClz32, "math-clz32") |
883 }; | 883 }; |
884 | 884 |
885 | 885 class LMathExp final : public LTemplateInstruction<1, 1, 0> { |
886 class LMathExp final : public LTemplateInstruction<1, 1, 3> { | |
887 public: | 886 public: |
888 LMathExp(LOperand* value, | 887 explicit LMathExp(LOperand* value) { inputs_[0] = value; } |
889 LOperand* double_temp, | |
890 LOperand* temp1, | |
891 LOperand* temp2) { | |
892 inputs_[0] = value; | |
893 temps_[0] = temp1; | |
894 temps_[1] = temp2; | |
895 temps_[2] = double_temp; | |
896 ExternalReference::InitializeMathExpData(); | |
897 } | |
898 | 888 |
899 LOperand* value() { return inputs_[0]; } | 889 LOperand* value() { return inputs_[0]; } |
900 LOperand* temp1() { return temps_[0]; } | |
901 LOperand* temp2() { return temps_[1]; } | |
902 LOperand* double_temp() { return temps_[2]; } | |
903 | 890 |
904 DECLARE_CONCRETE_INSTRUCTION(MathExp, "math-exp") | 891 DECLARE_CONCRETE_INSTRUCTION(MathExp, "math-exp") |
905 }; | 892 }; |
906 | 893 |
907 | 894 |
908 class LMathSqrt final : public LTemplateInstruction<1, 1, 0> { | 895 class LMathSqrt final : public LTemplateInstruction<1, 1, 0> { |
909 public: | 896 public: |
910 explicit LMathSqrt(LOperand* value) { | 897 explicit LMathSqrt(LOperand* value) { |
911 inputs_[0] = value; | 898 inputs_[0] = value; |
912 } | 899 } |
(...skipping 1698 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2611 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2598 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
2612 }; | 2599 }; |
2613 | 2600 |
2614 #undef DECLARE_HYDROGEN_ACCESSOR | 2601 #undef DECLARE_HYDROGEN_ACCESSOR |
2615 #undef DECLARE_CONCRETE_INSTRUCTION | 2602 #undef DECLARE_CONCRETE_INSTRUCTION |
2616 | 2603 |
2617 } // namespace internal | 2604 } // namespace internal |
2618 } // namespace v8 | 2605 } // namespace v8 |
2619 | 2606 |
2620 #endif // V8_CRANKSHAFT_MIPS_LITHIUM_MIPS_H_ | 2607 #endif // V8_CRANKSHAFT_MIPS_LITHIUM_MIPS_H_ |
OLD | NEW |