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_X87_LITHIUM_X87_H_ | 5 #ifndef V8_X87_LITHIUM_X87_H_ |
6 #define V8_X87_LITHIUM_X87_H_ | 6 #define V8_X87_LITHIUM_X87_H_ |
7 | 7 |
8 #include "src/hydrogen.h" | 8 #include "src/hydrogen.h" |
9 #include "src/lithium.h" | 9 #include "src/lithium.h" |
10 #include "src/lithium-allocator.h" | 10 #include "src/lithium-allocator.h" |
(...skipping 955 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
966 } | 966 } |
967 | 967 |
968 LOperand* value() { return inputs_[0]; } | 968 LOperand* value() { return inputs_[0]; } |
969 LOperand* temp1() { return temps_[0]; } | 969 LOperand* temp1() { return temps_[0]; } |
970 LOperand* temp2() { return temps_[1]; } | 970 LOperand* temp2() { return temps_[1]; } |
971 | 971 |
972 DECLARE_CONCRETE_INSTRUCTION(MathExp, "math-exp") | 972 DECLARE_CONCRETE_INSTRUCTION(MathExp, "math-exp") |
973 }; | 973 }; |
974 | 974 |
975 | 975 |
976 class LMathSqrt FINAL : public LTemplateInstruction<1, 1, 0> { | 976 class LMathSqrt FINAL : public LTemplateInstruction<1, 1, 2> { |
977 public: | 977 public: |
978 explicit LMathSqrt(LOperand* value) { | 978 explicit LMathSqrt(LOperand* value, |
| 979 LOperand* temp1, |
| 980 LOperand* temp2) { |
979 inputs_[0] = value; | 981 inputs_[0] = value; |
| 982 temps_[0] = temp1; |
| 983 temps_[1] = temp2; |
980 } | 984 } |
981 | 985 |
982 LOperand* value() { return inputs_[0]; } | 986 LOperand* value() { return inputs_[0]; } |
| 987 LOperand* temp1() { return temps_[0]; } |
| 988 LOperand* temp2() { return temps_[1]; } |
983 | 989 |
984 DECLARE_CONCRETE_INSTRUCTION(MathSqrt, "math-sqrt") | 990 DECLARE_CONCRETE_INSTRUCTION(MathSqrt, "math-sqrt") |
985 }; | 991 }; |
986 | 992 |
987 | 993 |
988 class LMathPowHalf FINAL : public LTemplateInstruction<1, 1, 0> { | 994 class LMathPowHalf FINAL : public LTemplateInstruction<1, 1, 0> { |
989 public: | 995 public: |
990 explicit LMathPowHalf(LOperand* value) { inputs_[0] = value; } | 996 explicit LMathPowHalf(LOperand* value) { inputs_[0] = value; } |
991 | 997 |
992 LOperand* value() { return inputs_[0]; } | 998 LOperand* value() { return inputs_[0]; } |
(...skipping 1901 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2894 | 2900 |
2895 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2901 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
2896 }; | 2902 }; |
2897 | 2903 |
2898 #undef DECLARE_HYDROGEN_ACCESSOR | 2904 #undef DECLARE_HYDROGEN_ACCESSOR |
2899 #undef DECLARE_CONCRETE_INSTRUCTION | 2905 #undef DECLARE_CONCRETE_INSTRUCTION |
2900 | 2906 |
2901 } } // namespace v8::internal | 2907 } } // namespace v8::internal |
2902 | 2908 |
2903 #endif // V8_X87_LITHIUM_X87_H_ | 2909 #endif // V8_X87_LITHIUM_X87_H_ |
OLD | NEW |