Chromium Code Reviews| Index: src/ia32/lithium-codegen-ia32.h |
| =================================================================== |
| --- src/ia32/lithium-codegen-ia32.h (revision 6848) |
| +++ src/ia32/lithium-codegen-ia32.h (working copy) |
| @@ -60,6 +60,7 @@ |
| status_(UNUSED), |
| deferred_(8), |
| osr_pc_offset_(-1), |
| + reloc_padding_count_(0), |
| resolver_(this) { |
| PopulateDeoptimizationLiteralsWithInlinedFunctions(); |
| } |
| @@ -102,6 +103,8 @@ |
| // Emit frame translation commands for an environment. |
| void WriteTranslation(LEnvironment* environment, Translation* translation); |
| + void AddRelocPadding(int count) { reloc_padding_count_ += count; } |
|
Søren Thygesen Gjesse
2011/02/21 13:27:20
AddRelocPadding -> AddRelocPaddingForDeoptimizatio
|
| + |
| // Declare methods that deal with the individual node types. |
| #define DECLARE_DO(type) void Do##type(L##type* node); |
| LITHIUM_CONCRETE_INSTRUCTION_LIST(DECLARE_DO) |
| @@ -151,6 +154,9 @@ |
| bool GeneratePrologue(); |
| bool GenerateBody(); |
| bool GenerateDeferredCode(); |
| + // Pad the reloc info to ensure that we have enough space to patch during |
| + // deoptimization. |
| + bool GenerateRelocPadding(); |
| bool GenerateSafepointTable(); |
| void CallCode(Handle<Code> code, RelocInfo::Mode mode, LInstruction* instr, |
| @@ -250,6 +256,7 @@ |
| TranslationBuffer translations_; |
| ZoneList<LDeferredCode*> deferred_; |
| int osr_pc_offset_; |
| + int reloc_padding_count_; |
|
Søren Thygesen Gjesse
2011/02/21 13:27:20
reloc_padding_count_ -> reloc_padding_count_for_de
|
| // Builder that keeps track of safepoints in the code. The table |
| // itself is emitted at the end of the generated code. |