OLD | NEW |
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_COMPILER_CODE_GENERATOR_H_ | 5 #ifndef V8_COMPILER_CODE_GENERATOR_H_ |
6 #define V8_COMPILER_CODE_GENERATOR_H_ | 6 #define V8_COMPILER_CODE_GENERATOR_H_ |
7 | 7 |
8 #include <deque> | 8 #include <deque> |
9 | 9 |
10 #include "src/compiler/gap-resolver.h" | 10 #include "src/compiler/gap-resolver.h" |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
80 InstructionOperand* destination) OVERRIDE; | 80 InstructionOperand* destination) OVERRIDE; |
81 virtual void AssembleSwap(InstructionOperand* source, | 81 virtual void AssembleSwap(InstructionOperand* source, |
82 InstructionOperand* destination) OVERRIDE; | 82 InstructionOperand* destination) OVERRIDE; |
83 | 83 |
84 // =========================================================================== | 84 // =========================================================================== |
85 // Deoptimization table construction | 85 // Deoptimization table construction |
86 void AddSafepointAndDeopt(Instruction* instr); | 86 void AddSafepointAndDeopt(Instruction* instr); |
87 void PopulateDeoptimizationData(Handle<Code> code); | 87 void PopulateDeoptimizationData(Handle<Code> code); |
88 int DefineDeoptimizationLiteral(Handle<Object> literal); | 88 int DefineDeoptimizationLiteral(Handle<Object> literal); |
89 FrameStateDescriptor* GetFrameStateDescriptor(Instruction* instr, | 89 FrameStateDescriptor* GetFrameStateDescriptor(Instruction* instr, |
90 int frame_state_offset); | 90 size_t frame_state_offset); |
91 int BuildTranslation(Instruction* instr, int pc_offset, | 91 int BuildTranslation(Instruction* instr, int pc_offset, |
92 int frame_state_offset, | 92 size_t frame_state_offset, |
93 OutputFrameStateCombine state_combine); | 93 OutputFrameStateCombine state_combine); |
94 void BuildTranslationForFrameStateDescriptor( | 94 void BuildTranslationForFrameStateDescriptor( |
95 FrameStateDescriptor* descriptor, Instruction* instr, | 95 FrameStateDescriptor* descriptor, Instruction* instr, |
96 Translation* translation, int frame_state_offset, | 96 Translation* translation, size_t frame_state_offset, |
97 OutputFrameStateCombine state_combine); | 97 OutputFrameStateCombine state_combine); |
98 void AddTranslationForOperand(Translation* translation, Instruction* instr, | 98 void AddTranslationForOperand(Translation* translation, Instruction* instr, |
99 InstructionOperand* op); | 99 InstructionOperand* op); |
100 void AddNopForSmiCodeInlining(); | 100 void AddNopForSmiCodeInlining(); |
101 // =========================================================================== | 101 // =========================================================================== |
102 | 102 |
103 struct DeoptimizationState : ZoneObject { | 103 struct DeoptimizationState : ZoneObject { |
104 public: | 104 public: |
105 BailoutId bailout_id() const { return bailout_id_; } | 105 BailoutId bailout_id() const { return bailout_id_; } |
106 int translation_id() const { return translation_id_; } | 106 int translation_id() const { return translation_id_; } |
(...skipping 19 matching lines...) Expand all Loading... |
126 ZoneDeque<DeoptimizationState*> deoptimization_states_; | 126 ZoneDeque<DeoptimizationState*> deoptimization_states_; |
127 ZoneDeque<Handle<Object> > deoptimization_literals_; | 127 ZoneDeque<Handle<Object> > deoptimization_literals_; |
128 TranslationBuffer translations_; | 128 TranslationBuffer translations_; |
129 }; | 129 }; |
130 | 130 |
131 } // namespace compiler | 131 } // namespace compiler |
132 } // namespace internal | 132 } // namespace internal |
133 } // namespace v8 | 133 } // namespace v8 |
134 | 134 |
135 #endif // V8_COMPILER_CODE_GENERATOR_H | 135 #endif // V8_COMPILER_CODE_GENERATOR_H |
OLD | NEW |