| Index: src/ia32/lithium-codegen-ia32.h
|
| diff --git a/src/ia32/lithium-codegen-ia32.h b/src/ia32/lithium-codegen-ia32.h
|
| index 1fea25bdbf5e398971cd0546aa1f8b29e394dd24..bfccfbf0e50aa434d15e84953861bd164248b390 100644
|
| --- a/src/ia32/lithium-codegen-ia32.h
|
| +++ b/src/ia32/lithium-codegen-ia32.h
|
| @@ -201,6 +201,10 @@ class LCodeGen BASE_EMBEDDED {
|
| Scope* scope() const { return scope_; }
|
| HGraph* graph() const { return chunk()->graph(); }
|
|
|
| + void DeoptimizeIf(Condition cc,
|
| + LEnvironment* environment,
|
| + Deoptimizer::BailoutType bailout_type);
|
| +
|
| int GetNextEmittedBlock() const;
|
|
|
| void EmitClassOfTest(Label* if_true,
|
| @@ -277,6 +281,7 @@ class LCodeGen BASE_EMBEDDED {
|
| void RegisterEnvironmentForDeoptimization(LEnvironment* environment,
|
| Safepoint::DeoptMode mode);
|
| void DeoptimizeIf(Condition cc, LEnvironment* environment);
|
| + void SoftDeoptimizeIf(Condition cc, LEnvironment* environment);
|
|
|
| void AddToTranslation(Translation* translation,
|
| LOperand* op,
|
| @@ -397,23 +402,11 @@ class LCodeGen BASE_EMBEDDED {
|
| MacroAssembler* const masm_;
|
| CompilationInfo* const info_;
|
|
|
| - struct JumpTableEntry {
|
| - inline JumpTableEntry(Address entry, bool frame, bool is_lazy)
|
| - : label(),
|
| - address(entry),
|
| - needs_frame(frame),
|
| - is_lazy_deopt(is_lazy) { }
|
| - Label label;
|
| - Address address;
|
| - bool needs_frame;
|
| - bool is_lazy_deopt;
|
| - };
|
| -
|
| int current_block_;
|
| int current_instruction_;
|
| const ZoneList<LInstruction*>* instructions_;
|
| ZoneList<LEnvironment*> deoptimizations_;
|
| - ZoneList<JumpTableEntry> jump_table_;
|
| + ZoneList<Deoptimizer::JumpTableEntry> jump_table_;
|
| ZoneList<Handle<Object> > deoptimization_literals_;
|
| ZoneList<Handle<Map> > prototype_maps_;
|
| ZoneList<Handle<Map> > transition_maps_;
|
|
|