Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(127)

Side by Side Diff: src/crankshaft/ppc/lithium-ppc.h

Issue 2078273002: PPC/s390: [builtins] Introduce proper Float64Cos and Float64Sin. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/crankshaft/ppc/lithium-codegen-ppc.cc ('k') | src/crankshaft/ppc/lithium-ppc.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 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_PPC_LITHIUM_PPC_H_ 5 #ifndef V8_CRANKSHAFT_PPC_LITHIUM_PPC_H_
6 #define V8_CRANKSHAFT_PPC_LITHIUM_PPC_H_ 6 #define V8_CRANKSHAFT_PPC_LITHIUM_PPC_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 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 V(LoadRoot) \ 91 V(LoadRoot) \
92 V(LoadFieldByIndex) \ 92 V(LoadFieldByIndex) \
93 V(LoadFunctionPrototype) \ 93 V(LoadFunctionPrototype) \
94 V(LoadGlobalGeneric) \ 94 V(LoadGlobalGeneric) \
95 V(LoadKeyed) \ 95 V(LoadKeyed) \
96 V(LoadKeyedGeneric) \ 96 V(LoadKeyedGeneric) \
97 V(LoadNamedField) \ 97 V(LoadNamedField) \
98 V(LoadNamedGeneric) \ 98 V(LoadNamedGeneric) \
99 V(MathAbs) \ 99 V(MathAbs) \
100 V(MathClz32) \ 100 V(MathClz32) \
101 V(MathCos) \
102 V(MathSin) \
101 V(MathExp) \ 103 V(MathExp) \
102 V(MathFloorD) \ 104 V(MathFloorD) \
103 V(MathFloorI) \ 105 V(MathFloorI) \
104 V(MathFround) \ 106 V(MathFround) \
105 V(MathLog) \ 107 V(MathLog) \
106 V(MathMinMax) \ 108 V(MathMinMax) \
107 V(MathPowHalf) \ 109 V(MathPowHalf) \
108 V(MathRoundD) \ 110 V(MathRoundD) \
109 V(MathRoundI) \ 111 V(MathRoundI) \
110 V(MathSqrt) \ 112 V(MathSqrt) \
(...skipping 783 matching lines...) Expand 10 before | Expand all | Expand 10 after
894 896
895 class LMathClz32 final : public LTemplateInstruction<1, 1, 0> { 897 class LMathClz32 final : public LTemplateInstruction<1, 1, 0> {
896 public: 898 public:
897 explicit LMathClz32(LOperand* value) { inputs_[0] = value; } 899 explicit LMathClz32(LOperand* value) { inputs_[0] = value; }
898 900
899 LOperand* value() { return inputs_[0]; } 901 LOperand* value() { return inputs_[0]; }
900 902
901 DECLARE_CONCRETE_INSTRUCTION(MathClz32, "math-clz32") 903 DECLARE_CONCRETE_INSTRUCTION(MathClz32, "math-clz32")
902 }; 904 };
903 905
906 class LMathCos final : public LTemplateInstruction<1, 1, 0> {
907 public:
908 explicit LMathCos(LOperand* value) { inputs_[0] = value; }
909
910 LOperand* value() { return inputs_[0]; }
911
912 DECLARE_CONCRETE_INSTRUCTION(MathCos, "math-cos")
913 };
914
915
916 class LMathSin final : public LTemplateInstruction<1, 1, 0> {
917 public:
918 explicit LMathSin(LOperand* value) { inputs_[0] = value; }
919
920 LOperand* value() { return inputs_[0]; }
921
922 DECLARE_CONCRETE_INSTRUCTION(MathSin, "math-sin")
923 };
924
904 925
905 class LMathExp final : public LTemplateInstruction<1, 1, 0> { 926 class LMathExp final : public LTemplateInstruction<1, 1, 0> {
906 public: 927 public:
907 explicit LMathExp(LOperand* value) { inputs_[0] = value; } 928 explicit LMathExp(LOperand* value) { inputs_[0] = value; }
908 929
909 LOperand* value() { return inputs_[0]; } 930 LOperand* value() { return inputs_[0]; }
910 931
911 DECLARE_CONCRETE_INSTRUCTION(MathExp, "math-exp") 932 DECLARE_CONCRETE_INSTRUCTION(MathExp, "math-exp")
912 }; 933 };
913 934
(...skipping 1533 matching lines...) Expand 10 before | Expand all | Expand 10 after
2447 LInstruction* DoMultiplySub(HValue* minuend, HMul* mul); 2468 LInstruction* DoMultiplySub(HValue* minuend, HMul* mul);
2448 LInstruction* DoRSub(HSub* instr); 2469 LInstruction* DoRSub(HSub* instr);
2449 2470
2450 static bool HasMagicNumberForDivisor(int32_t divisor); 2471 static bool HasMagicNumberForDivisor(int32_t divisor);
2451 2472
2452 LInstruction* DoMathFloor(HUnaryMathOperation* instr); 2473 LInstruction* DoMathFloor(HUnaryMathOperation* instr);
2453 LInstruction* DoMathRound(HUnaryMathOperation* instr); 2474 LInstruction* DoMathRound(HUnaryMathOperation* instr);
2454 LInstruction* DoMathFround(HUnaryMathOperation* instr); 2475 LInstruction* DoMathFround(HUnaryMathOperation* instr);
2455 LInstruction* DoMathAbs(HUnaryMathOperation* instr); 2476 LInstruction* DoMathAbs(HUnaryMathOperation* instr);
2456 LInstruction* DoMathLog(HUnaryMathOperation* instr); 2477 LInstruction* DoMathLog(HUnaryMathOperation* instr);
2478 LInstruction* DoMathCos(HUnaryMathOperation* instr);
2479 LInstruction* DoMathSin(HUnaryMathOperation* instr);
2457 LInstruction* DoMathExp(HUnaryMathOperation* instr); 2480 LInstruction* DoMathExp(HUnaryMathOperation* instr);
2458 LInstruction* DoMathSqrt(HUnaryMathOperation* instr); 2481 LInstruction* DoMathSqrt(HUnaryMathOperation* instr);
2459 LInstruction* DoMathPowHalf(HUnaryMathOperation* instr); 2482 LInstruction* DoMathPowHalf(HUnaryMathOperation* instr);
2460 LInstruction* DoMathClz32(HUnaryMathOperation* instr); 2483 LInstruction* DoMathClz32(HUnaryMathOperation* instr);
2461 LInstruction* DoDivByPowerOf2I(HDiv* instr); 2484 LInstruction* DoDivByPowerOf2I(HDiv* instr);
2462 LInstruction* DoDivByConstI(HDiv* instr); 2485 LInstruction* DoDivByConstI(HDiv* instr);
2463 LInstruction* DoDivI(HDiv* instr); 2486 LInstruction* DoDivI(HDiv* instr);
2464 LInstruction* DoModByPowerOf2I(HMod* instr); 2487 LInstruction* DoModByPowerOf2I(HMod* instr);
2465 LInstruction* DoModByConstI(HMod* instr); 2488 LInstruction* DoModByConstI(HMod* instr);
2466 LInstruction* DoModI(HMod* instr); 2489 LInstruction* DoModI(HMod* instr);
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
2557 2580
2558 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); 2581 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder);
2559 }; 2582 };
2560 2583
2561 #undef DECLARE_HYDROGEN_ACCESSOR 2584 #undef DECLARE_HYDROGEN_ACCESSOR
2562 #undef DECLARE_CONCRETE_INSTRUCTION 2585 #undef DECLARE_CONCRETE_INSTRUCTION
2563 } // namespace internal 2586 } // namespace internal
2564 } // namespace v8 2587 } // namespace v8
2565 2588
2566 #endif // V8_CRANKSHAFT_PPC_LITHIUM_PPC_H_ 2589 #endif // V8_CRANKSHAFT_PPC_LITHIUM_PPC_H_
OLDNEW
« no previous file with comments | « src/crankshaft/ppc/lithium-codegen-ppc.cc ('k') | src/crankshaft/ppc/lithium-ppc.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698