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_ARM_LITHIUM_ARM_H_ | 5 #ifndef V8_ARM_LITHIUM_ARM_H_ |
6 #define V8_ARM_LITHIUM_ARM_H_ | 6 #define V8_ARM_LITHIUM_ARM_H_ |
7 | 7 |
8 #include "hydrogen.h" | 8 #include "hydrogen.h" |
9 #include "lithium-allocator.h" | 9 #include "lithium-allocator.h" |
10 #include "lithium.h" | 10 #include "lithium.h" |
(...skipping 2696 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2707 current_instruction_(NULL), | 2707 current_instruction_(NULL), |
2708 current_block_(NULL), | 2708 current_block_(NULL), |
2709 next_block_(NULL), | 2709 next_block_(NULL), |
2710 allocator_(allocator) { } | 2710 allocator_(allocator) { } |
2711 | 2711 |
2712 Isolate* isolate() const { return graph_->isolate(); } | 2712 Isolate* isolate() const { return graph_->isolate(); } |
2713 | 2713 |
2714 // Build the sequence for the graph. | 2714 // Build the sequence for the graph. |
2715 LPlatformChunk* Build(); | 2715 LPlatformChunk* Build(); |
2716 | 2716 |
2717 LInstruction* CheckElideControlInstruction(HControlInstruction* instr); | |
2718 | |
2719 // Declare methods that deal with the individual node types. | 2717 // Declare methods that deal with the individual node types. |
2720 #define DECLARE_DO(type) LInstruction* Do##type(H##type* node); | 2718 #define DECLARE_DO(type) LInstruction* Do##type(H##type* node); |
2721 HYDROGEN_CONCRETE_INSTRUCTION_LIST(DECLARE_DO) | 2719 HYDROGEN_CONCRETE_INSTRUCTION_LIST(DECLARE_DO) |
2722 #undef DECLARE_DO | 2720 #undef DECLARE_DO |
2723 | 2721 |
2724 LInstruction* DoMultiplyAdd(HMul* mul, HValue* addend); | 2722 LInstruction* DoMultiplyAdd(HMul* mul, HValue* addend); |
2725 LInstruction* DoMultiplySub(HValue* minuend, HMul* mul); | 2723 LInstruction* DoMultiplySub(HValue* minuend, HMul* mul); |
2726 LInstruction* DoRSub(HSub* instr); | 2724 LInstruction* DoRSub(HSub* instr); |
2727 | 2725 |
2728 static bool HasMagicNumberForDivisor(int32_t divisor); | 2726 static bool HasMagicNumberForDivisor(int32_t divisor); |
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2859 | 2857 |
2860 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2858 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
2861 }; | 2859 }; |
2862 | 2860 |
2863 #undef DECLARE_HYDROGEN_ACCESSOR | 2861 #undef DECLARE_HYDROGEN_ACCESSOR |
2864 #undef DECLARE_CONCRETE_INSTRUCTION | 2862 #undef DECLARE_CONCRETE_INSTRUCTION |
2865 | 2863 |
2866 } } // namespace v8::internal | 2864 } } // namespace v8::internal |
2867 | 2865 |
2868 #endif // V8_ARM_LITHIUM_ARM_H_ | 2866 #endif // V8_ARM_LITHIUM_ARM_H_ |
OLD | NEW |