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 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
73 V(CompareNumericAndBranch) \ | 73 V(CompareNumericAndBranch) \ |
74 V(CmpObjectEqAndBranch) \ | 74 V(CmpObjectEqAndBranch) \ |
75 V(CmpHoleAndBranch) \ | 75 V(CmpHoleAndBranch) \ |
76 V(CmpMapAndBranch) \ | 76 V(CmpMapAndBranch) \ |
77 V(CmpT) \ | 77 V(CmpT) \ |
78 V(ConstantD) \ | 78 V(ConstantD) \ |
79 V(ConstantE) \ | 79 V(ConstantE) \ |
80 V(ConstantI) \ | 80 V(ConstantI) \ |
81 V(ConstantS) \ | 81 V(ConstantS) \ |
82 V(ConstantT) \ | 82 V(ConstantT) \ |
| 83 V(ConstructDouble) \ |
83 V(Context) \ | 84 V(Context) \ |
84 V(DateField) \ | 85 V(DateField) \ |
85 V(DebugBreak) \ | 86 V(DebugBreak) \ |
86 V(DeclareGlobals) \ | 87 V(DeclareGlobals) \ |
87 V(Deoptimize) \ | 88 V(Deoptimize) \ |
88 V(DivByConstI) \ | 89 V(DivByConstI) \ |
89 V(DivByPowerOf2I) \ | 90 V(DivByPowerOf2I) \ |
90 V(DivI) \ | 91 V(DivI) \ |
| 92 V(DoubleBits) \ |
91 V(DoubleToI) \ | 93 V(DoubleToI) \ |
92 V(DoubleToSmi) \ | 94 V(DoubleToSmi) \ |
93 V(Drop) \ | 95 V(Drop) \ |
94 V(DummyUse) \ | 96 V(DummyUse) \ |
95 V(Dummy) \ | 97 V(Dummy) \ |
96 V(FlooringDivByConstI) \ | 98 V(FlooringDivByConstI) \ |
97 V(FlooringDivByPowerOf2I) \ | 99 V(FlooringDivByPowerOf2I) \ |
98 V(ForInCacheArray) \ | 100 V(ForInCacheArray) \ |
99 V(ForInPrepareMap) \ | 101 V(ForInPrepareMap) \ |
100 V(FunctionLiteral) \ | 102 V(FunctionLiteral) \ |
(...skipping 2321 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2422 inputs_[0] = value; | 2424 inputs_[0] = value; |
2423 } | 2425 } |
2424 | 2426 |
2425 LOperand* value() { return inputs_[0]; } | 2427 LOperand* value() { return inputs_[0]; } |
2426 | 2428 |
2427 DECLARE_CONCRETE_INSTRUCTION(CheckNonSmi, "check-non-smi") | 2429 DECLARE_CONCRETE_INSTRUCTION(CheckNonSmi, "check-non-smi") |
2428 DECLARE_HYDROGEN_ACCESSOR(CheckHeapObject) | 2430 DECLARE_HYDROGEN_ACCESSOR(CheckHeapObject) |
2429 }; | 2431 }; |
2430 | 2432 |
2431 | 2433 |
| 2434 class LDoubleBits V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
| 2435 public: |
| 2436 explicit LDoubleBits(LOperand* value) { |
| 2437 inputs_[0] = value; |
| 2438 } |
| 2439 |
| 2440 LOperand* value() { return inputs_[0]; } |
| 2441 |
| 2442 DECLARE_CONCRETE_INSTRUCTION(DoubleBits, "double-bits") |
| 2443 DECLARE_HYDROGEN_ACCESSOR(DoubleBits) |
| 2444 }; |
| 2445 |
| 2446 |
| 2447 class LConstructDouble V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
| 2448 public: |
| 2449 LConstructDouble(LOperand* hi, LOperand* lo) { |
| 2450 inputs_[0] = hi; |
| 2451 inputs_[1] = lo; |
| 2452 } |
| 2453 |
| 2454 LOperand* hi() { return inputs_[0]; } |
| 2455 LOperand* lo() { return inputs_[1]; } |
| 2456 |
| 2457 DECLARE_CONCRETE_INSTRUCTION(ConstructDouble, "construct-double") |
| 2458 }; |
| 2459 |
| 2460 |
2432 class LAllocate V8_FINAL : public LTemplateInstruction<1, 2, 1> { | 2461 class LAllocate V8_FINAL : public LTemplateInstruction<1, 2, 1> { |
2433 public: | 2462 public: |
2434 LAllocate(LOperand* context, LOperand* size, LOperand* temp) { | 2463 LAllocate(LOperand* context, LOperand* size, LOperand* temp) { |
2435 inputs_[0] = context; | 2464 inputs_[0] = context; |
2436 inputs_[1] = size; | 2465 inputs_[1] = size; |
2437 temps_[0] = temp; | 2466 temps_[0] = temp; |
2438 } | 2467 } |
2439 | 2468 |
2440 LOperand* context() { return inputs_[0]; } | 2469 LOperand* context() { return inputs_[0]; } |
2441 LOperand* size() { return inputs_[1]; } | 2470 LOperand* size() { return inputs_[1]; } |
(...skipping 349 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2791 | 2820 |
2792 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2821 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
2793 }; | 2822 }; |
2794 | 2823 |
2795 #undef DECLARE_HYDROGEN_ACCESSOR | 2824 #undef DECLARE_HYDROGEN_ACCESSOR |
2796 #undef DECLARE_CONCRETE_INSTRUCTION | 2825 #undef DECLARE_CONCRETE_INSTRUCTION |
2797 | 2826 |
2798 } } // namespace v8::int | 2827 } } // namespace v8::int |
2799 | 2828 |
2800 #endif // V8_X64_LITHIUM_X64_H_ | 2829 #endif // V8_X64_LITHIUM_X64_H_ |
OLD | NEW |