| Index: src/arm/lithium-codegen-arm.h
|
| ===================================================================
|
| --- src/arm/lithium-codegen-arm.h (revision 7902)
|
| +++ src/arm/lithium-codegen-arm.h (working copy)
|
| @@ -51,6 +51,7 @@
|
| current_instruction_(-1),
|
| instructions_(chunk->instructions()),
|
| deoptimizations_(4),
|
| + deopt_jump_table_(4),
|
| deoptimization_literals_(8),
|
| inlined_function_count_(0),
|
| scope_(info->scope()),
|
| @@ -172,6 +173,7 @@
|
| bool GeneratePrologue();
|
| bool GenerateBody();
|
| bool GenerateDeferredCode();
|
| + bool GenerateDeoptJumpTable();
|
| bool GenerateSafepointTable();
|
|
|
| enum SafepointMode {
|
| @@ -289,6 +291,14 @@
|
| Handle<Map> type,
|
| Handle<String> name);
|
|
|
| + struct JumpTableEntry {
|
| + explicit inline JumpTableEntry(Address entry)
|
| + : label(),
|
| + address(entry) { }
|
| + Label label;
|
| + Address address;
|
| + };
|
| +
|
| LChunk* const chunk_;
|
| MacroAssembler* const masm_;
|
| CompilationInfo* const info_;
|
| @@ -297,6 +307,7 @@
|
| int current_instruction_;
|
| const ZoneList<LInstruction*>* instructions_;
|
| ZoneList<LEnvironment*> deoptimizations_;
|
| + ZoneList<JumpTableEntry> deopt_jump_table_;
|
| ZoneList<Handle<Object> > deoptimization_literals_;
|
| int inlined_function_count_;
|
| Scope* const scope_;
|
|
|