| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 124 V(LoadFieldByIndex) \ | 124 V(LoadFieldByIndex) \ |
| 125 V(LoadFunctionPrototype) \ | 125 V(LoadFunctionPrototype) \ |
| 126 V(LoadGlobalCell) \ | 126 V(LoadGlobalCell) \ |
| 127 V(LoadGlobalGeneric) \ | 127 V(LoadGlobalGeneric) \ |
| 128 V(LoadKeyed) \ | 128 V(LoadKeyed) \ |
| 129 V(LoadKeyedGeneric) \ | 129 V(LoadKeyedGeneric) \ |
| 130 V(LoadNamedField) \ | 130 V(LoadNamedField) \ |
| 131 V(LoadNamedGeneric) \ | 131 V(LoadNamedGeneric) \ |
| 132 V(MapEnumLength) \ | 132 V(MapEnumLength) \ |
| 133 V(MathAbs) \ | 133 V(MathAbs) \ |
| 134 V(MathCos) \ | |
| 135 V(MathExp) \ | 134 V(MathExp) \ |
| 136 V(MathFloor) \ | 135 V(MathFloor) \ |
| 137 V(MathFloorOfDiv) \ | 136 V(MathFloorOfDiv) \ |
| 138 V(MathLog) \ | 137 V(MathLog) \ |
| 139 V(MathMinMax) \ | 138 V(MathMinMax) \ |
| 140 V(MathPowHalf) \ | 139 V(MathPowHalf) \ |
| 141 V(MathRound) \ | 140 V(MathRound) \ |
| 142 V(MathSin) \ | |
| 143 V(MathSqrt) \ | 141 V(MathSqrt) \ |
| 144 V(MathTan) \ | |
| 145 V(ModI) \ | 142 V(ModI) \ |
| 146 V(MulI) \ | 143 V(MulI) \ |
| 147 V(MultiplyAddD) \ | 144 V(MultiplyAddD) \ |
| 148 V(MultiplySubD) \ | 145 V(MultiplySubD) \ |
| 149 V(NumberTagD) \ | 146 V(NumberTagD) \ |
| 150 V(NumberTagI) \ | 147 V(NumberTagI) \ |
| 151 V(NumberTagU) \ | 148 V(NumberTagU) \ |
| 152 V(NumberUntagD) \ | 149 V(NumberUntagD) \ |
| 153 V(OsrEntry) \ | 150 V(OsrEntry) \ |
| 154 V(OuterContext) \ | 151 V(OuterContext) \ |
| (...skipping 654 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 809 explicit LMathLog(LOperand* value) { | 806 explicit LMathLog(LOperand* value) { |
| 810 inputs_[0] = value; | 807 inputs_[0] = value; |
| 811 } | 808 } |
| 812 | 809 |
| 813 LOperand* value() { return inputs_[0]; } | 810 LOperand* value() { return inputs_[0]; } |
| 814 | 811 |
| 815 DECLARE_CONCRETE_INSTRUCTION(MathLog, "math-log") | 812 DECLARE_CONCRETE_INSTRUCTION(MathLog, "math-log") |
| 816 }; | 813 }; |
| 817 | 814 |
| 818 | 815 |
| 819 class LMathSin V8_FINAL : public LTemplateInstruction<1, 1, 0> { | |
| 820 public: | |
| 821 explicit LMathSin(LOperand* value) { | |
| 822 inputs_[0] = value; | |
| 823 } | |
| 824 | |
| 825 LOperand* value() { return inputs_[0]; } | |
| 826 | |
| 827 DECLARE_CONCRETE_INSTRUCTION(MathSin, "math-sin") | |
| 828 }; | |
| 829 | |
| 830 | |
| 831 class LMathCos V8_FINAL : public LTemplateInstruction<1, 1, 0> { | |
| 832 public: | |
| 833 explicit LMathCos(LOperand* value) { | |
| 834 inputs_[0] = value; | |
| 835 } | |
| 836 | |
| 837 LOperand* value() { return inputs_[0]; } | |
| 838 | |
| 839 DECLARE_CONCRETE_INSTRUCTION(MathCos, "math-cos") | |
| 840 }; | |
| 841 | |
| 842 | |
| 843 class LMathTan V8_FINAL : public LTemplateInstruction<1, 1, 0> { | |
| 844 public: | |
| 845 explicit LMathTan(LOperand* value) { | |
| 846 inputs_[0] = value; | |
| 847 } | |
| 848 | |
| 849 LOperand* value() { return inputs_[0]; } | |
| 850 | |
| 851 DECLARE_CONCRETE_INSTRUCTION(MathTan, "math-tan") | |
| 852 }; | |
| 853 | |
| 854 | |
| 855 class LMathExp V8_FINAL : public LTemplateInstruction<1, 1, 3> { | 816 class LMathExp V8_FINAL : public LTemplateInstruction<1, 1, 3> { |
| 856 public: | 817 public: |
| 857 LMathExp(LOperand* value, | 818 LMathExp(LOperand* value, |
| 858 LOperand* double_temp, | 819 LOperand* double_temp, |
| 859 LOperand* temp1, | 820 LOperand* temp1, |
| 860 LOperand* temp2) { | 821 LOperand* temp2) { |
| 861 inputs_[0] = value; | 822 inputs_[0] = value; |
| 862 temps_[0] = temp1; | 823 temps_[0] = temp1; |
| 863 temps_[1] = temp2; | 824 temps_[1] = temp2; |
| 864 temps_[2] = double_temp; | 825 temps_[2] = double_temp; |
| (...skipping 1906 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2771 LInstruction* DoMultiplySub(HValue* minuend, HMul* mul); | 2732 LInstruction* DoMultiplySub(HValue* minuend, HMul* mul); |
| 2772 LInstruction* DoRSub(HSub* instr); | 2733 LInstruction* DoRSub(HSub* instr); |
| 2773 | 2734 |
| 2774 static bool HasMagicNumberForDivisor(int32_t divisor); | 2735 static bool HasMagicNumberForDivisor(int32_t divisor); |
| 2775 static HValue* SimplifiedDivisorForMathFloorOfDiv(HValue* val); | 2736 static HValue* SimplifiedDivisorForMathFloorOfDiv(HValue* val); |
| 2776 | 2737 |
| 2777 LInstruction* DoMathFloor(HUnaryMathOperation* instr); | 2738 LInstruction* DoMathFloor(HUnaryMathOperation* instr); |
| 2778 LInstruction* DoMathRound(HUnaryMathOperation* instr); | 2739 LInstruction* DoMathRound(HUnaryMathOperation* instr); |
| 2779 LInstruction* DoMathAbs(HUnaryMathOperation* instr); | 2740 LInstruction* DoMathAbs(HUnaryMathOperation* instr); |
| 2780 LInstruction* DoMathLog(HUnaryMathOperation* instr); | 2741 LInstruction* DoMathLog(HUnaryMathOperation* instr); |
| 2781 LInstruction* DoMathSin(HUnaryMathOperation* instr); | |
| 2782 LInstruction* DoMathCos(HUnaryMathOperation* instr); | |
| 2783 LInstruction* DoMathTan(HUnaryMathOperation* instr); | |
| 2784 LInstruction* DoMathExp(HUnaryMathOperation* instr); | 2742 LInstruction* DoMathExp(HUnaryMathOperation* instr); |
| 2785 LInstruction* DoMathSqrt(HUnaryMathOperation* instr); | 2743 LInstruction* DoMathSqrt(HUnaryMathOperation* instr); |
| 2786 LInstruction* DoMathPowHalf(HUnaryMathOperation* instr); | 2744 LInstruction* DoMathPowHalf(HUnaryMathOperation* instr); |
| 2787 | 2745 |
| 2788 private: | 2746 private: |
| 2789 enum Status { | 2747 enum Status { |
| 2790 UNUSED, | 2748 UNUSED, |
| 2791 BUILDING, | 2749 BUILDING, |
| 2792 DONE, | 2750 DONE, |
| 2793 ABORTED | 2751 ABORTED |
| (...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2913 | 2871 |
| 2914 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2872 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
| 2915 }; | 2873 }; |
| 2916 | 2874 |
| 2917 #undef DECLARE_HYDROGEN_ACCESSOR | 2875 #undef DECLARE_HYDROGEN_ACCESSOR |
| 2918 #undef DECLARE_CONCRETE_INSTRUCTION | 2876 #undef DECLARE_CONCRETE_INSTRUCTION |
| 2919 | 2877 |
| 2920 } } // namespace v8::internal | 2878 } } // namespace v8::internal |
| 2921 | 2879 |
| 2922 #endif // V8_ARM_LITHIUM_ARM_H_ | 2880 #endif // V8_ARM_LITHIUM_ARM_H_ |
| OLD | NEW |