Index: src/ia32/lithium-ia32.h |
diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h |
index 7ae87a08c8dd72c377475eb2d50332f18699b90b..f35c7776b21d64eb6135f7cff1a498bd0b56a2b5 100644 |
--- a/src/ia32/lithium-ia32.h |
+++ b/src/ia32/lithium-ia32.h |
@@ -188,13 +188,17 @@ class LCodeGen; |
V(WrapReceiver) |
-#define DECLARE_CONCRETE_INSTRUCTION(type, mnemonic) \ |
- virtual Opcode opcode() const { return LInstruction::k##type; } \ |
- virtual void CompileToNative(LCodeGen* generator); \ |
- virtual const char* Mnemonic() const { return mnemonic; } \ |
- static L##type* cast(LInstruction* instr) { \ |
- ASSERT(instr->Is##type()); \ |
- return reinterpret_cast<L##type*>(instr); \ |
+#define DECLARE_CONCRETE_INSTRUCTION(type, mnemonic) \ |
+ virtual Opcode opcode() const V8_FINAL V8_OVERRIDE { \ |
+ return LInstruction::k##type; \ |
+ } \ |
+ virtual void CompileToNative(LCodeGen* generator) V8_FINAL V8_OVERRIDE; \ |
+ virtual const char* Mnemonic() const V8_FINAL V8_OVERRIDE { \ |
+ return mnemonic; \ |
+ } \ |
+ static L##type* cast(LInstruction* instr) { \ |
+ ASSERT(instr->Is##type()); \ |
+ return reinterpret_cast<L##type*>(instr); \ |
} |
@@ -204,7 +208,7 @@ class LCodeGen; |
} |
-class LInstruction: public ZoneObject { |
+class LInstruction : public ZoneObject { |
public: |
LInstruction() |
: environment_(NULL), |
@@ -213,7 +217,7 @@ class LInstruction: public ZoneObject { |
set_position(RelocInfo::kNoPosition); |
} |
- virtual ~LInstruction() { } |
+ virtual ~LInstruction() {} |
virtual void CompileToNative(LCodeGen* generator) = 0; |
virtual const char* Mnemonic() const = 0; |
@@ -319,11 +323,13 @@ class LInstruction: public ZoneObject { |
// I = number of input operands. |
// T = number of temporary operands. |
template<int R, int I, int T> |
-class LTemplateInstruction: public LInstruction { |
+class LTemplateInstruction : public LInstruction { |
public: |
// Allow 0 or 1 output operands. |
STATIC_ASSERT(R == 0 || R == 1); |
- virtual bool HasResult() const { return R != 0 && result() != NULL; } |
+ virtual bool HasResult() const V8_FINAL V8_OVERRIDE { |
+ return R != 0 && result() != NULL; |
+ } |
void set_result(LOperand* operand) { results_[0] = operand; } |
LOperand* result() const { return results_[0]; } |
@@ -334,15 +340,15 @@ class LTemplateInstruction: public LInstruction { |
private: |
// Iterator support. |
- virtual int InputCount() { return I; } |
- virtual LOperand* InputAt(int i) { return inputs_[i]; } |
+ virtual int InputCount() V8_FINAL V8_OVERRIDE { return I; } |
+ virtual LOperand* InputAt(int i) V8_FINAL V8_OVERRIDE { return inputs_[i]; } |
- virtual int TempCount() { return T; } |
- virtual LOperand* TempAt(int i) { return temps_[i]; } |
+ virtual int TempCount() V8_FINAL V8_OVERRIDE { return T; } |
+ virtual LOperand* TempAt(int i) V8_FINAL V8_OVERRIDE { return temps_[i]; } |
}; |
-class LGap: public LTemplateInstruction<0, 0, 0> { |
+class LGap : public LTemplateInstruction<0, 0, 0> { |
public: |
explicit LGap(HBasicBlock* block) : block_(block) { |
parallel_moves_[BEFORE] = NULL; |
@@ -352,8 +358,8 @@ class LGap: public LTemplateInstruction<0, 0, 0> { |
} |
// Can't use the DECLARE-macro here because of sub-classes. |
- virtual bool IsGap() const { return true; } |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual bool IsGap() const V8_FINAL V8_OVERRIDE { return true; } |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
static LGap* cast(LInstruction* instr) { |
ASSERT(instr->IsGap()); |
return reinterpret_cast<LGap*>(instr); |
@@ -389,11 +395,11 @@ class LGap: public LTemplateInstruction<0, 0, 0> { |
}; |
-class LInstructionGap: public LGap { |
+class LInstructionGap V8_FINAL : public LGap { |
public: |
explicit LInstructionGap(HBasicBlock* block) : LGap(block) { } |
- virtual bool HasInterestingComment(LCodeGen* gen) const { |
+ virtual bool HasInterestingComment(LCodeGen* gen) const V8_OVERRIDE { |
return !IsRedundant(); |
} |
@@ -401,14 +407,14 @@ class LInstructionGap: public LGap { |
}; |
-class LGoto: public LTemplateInstruction<0, 0, 0> { |
+class LGoto V8_FINAL : public LTemplateInstruction<0, 0, 0> { |
public: |
explicit LGoto(int block_id) : block_id_(block_id) { } |
- virtual bool HasInterestingComment(LCodeGen* gen) const; |
+ virtual bool HasInterestingComment(LCodeGen* gen) const V8_OVERRIDE; |
DECLARE_CONCRETE_INSTRUCTION(Goto, "goto") |
- virtual void PrintDataTo(StringStream* stream); |
- virtual bool IsControl() const { return true; } |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
+ virtual bool IsControl() const V8_OVERRIDE { return true; } |
int block_id() const { return block_id_; } |
@@ -417,13 +423,13 @@ class LGoto: public LTemplateInstruction<0, 0, 0> { |
}; |
-class LLazyBailout: public LTemplateInstruction<0, 0, 0> { |
+class LLazyBailout V8_FINAL : public LTemplateInstruction<0, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(LazyBailout, "lazy-bailout") |
}; |
-class LDummyUse: public LTemplateInstruction<1, 1, 0> { |
+class LDummyUse V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LDummyUse(LOperand* value) { |
inputs_[0] = value; |
@@ -432,22 +438,24 @@ class LDummyUse: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LDeoptimize: public LTemplateInstruction<0, 0, 0> { |
+class LDeoptimize V8_FINAL : public LTemplateInstruction<0, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(Deoptimize, "deoptimize") |
DECLARE_HYDROGEN_ACCESSOR(Deoptimize) |
}; |
-class LLabel: public LGap { |
+class LLabel V8_FINAL : public LGap { |
public: |
explicit LLabel(HBasicBlock* block) |
: LGap(block), replacement_(NULL) { } |
- virtual bool HasInterestingComment(LCodeGen* gen) const { return false; } |
+ virtual bool HasInterestingComment(LCodeGen* gen) const V8_OVERRIDE { |
+ return false; |
+ } |
DECLARE_CONCRETE_INSTRUCTION(Label, "label") |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
int block_id() const { return block()->block_id(); } |
bool is_loop_header() const { return block()->IsLoopHeader(); } |
@@ -463,14 +471,16 @@ class LLabel: public LGap { |
}; |
-class LParameter: public LTemplateInstruction<1, 0, 0> { |
+class LParameter V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
- virtual bool HasInterestingComment(LCodeGen* gen) const { return false; } |
+ virtual bool HasInterestingComment(LCodeGen* gen) const V8_OVERRIDE { |
+ return false; |
+ } |
DECLARE_CONCRETE_INSTRUCTION(Parameter, "parameter") |
}; |
-class LCallStub: public LTemplateInstruction<1, 1, 0> { |
+class LCallStub V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LCallStub(LOperand* context) { |
inputs_[0] = context; |
@@ -487,9 +497,11 @@ class LCallStub: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LUnknownOSRValue: public LTemplateInstruction<1, 0, 0> { |
+class LUnknownOSRValue V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
- virtual bool HasInterestingComment(LCodeGen* gen) const { return false; } |
+ virtual bool HasInterestingComment(LCodeGen* gen) const V8_OVERRIDE { |
+ return false; |
+ } |
DECLARE_CONCRETE_INSTRUCTION(UnknownOSRValue, "unknown-osr-value") |
}; |
@@ -499,7 +511,7 @@ class LControlInstruction: public LTemplateInstruction<0, I, T> { |
public: |
LControlInstruction() : false_label_(NULL), true_label_(NULL) { } |
- virtual bool IsControl() const { return true; } |
+ virtual bool IsControl() const V8_FINAL V8_OVERRIDE { return true; } |
int SuccessorCount() { return hydrogen()->SuccessorCount(); } |
HBasicBlock* SuccessorAt(int i) { return hydrogen()->SuccessorAt(i); } |
@@ -538,7 +550,7 @@ class LControlInstruction: public LTemplateInstruction<0, I, T> { |
}; |
-class LWrapReceiver: public LTemplateInstruction<1, 2, 1> { |
+class LWrapReceiver V8_FINAL : public LTemplateInstruction<1, 2, 1> { |
public: |
LWrapReceiver(LOperand* receiver, |
LOperand* function, |
@@ -556,7 +568,7 @@ class LWrapReceiver: public LTemplateInstruction<1, 2, 1> { |
}; |
-class LApplyArguments: public LTemplateInstruction<1, 4, 0> { |
+class LApplyArguments V8_FINAL : public LTemplateInstruction<1, 4, 0> { |
public: |
LApplyArguments(LOperand* function, |
LOperand* receiver, |
@@ -577,7 +589,7 @@ class LApplyArguments: public LTemplateInstruction<1, 4, 0> { |
}; |
-class LAccessArgumentsAt: public LTemplateInstruction<1, 3, 0> { |
+class LAccessArgumentsAt V8_FINAL : public LTemplateInstruction<1, 3, 0> { |
public: |
LAccessArgumentsAt(LOperand* arguments, LOperand* length, LOperand* index) { |
inputs_[0] = arguments; |
@@ -591,11 +603,11 @@ class LAccessArgumentsAt: public LTemplateInstruction<1, 3, 0> { |
DECLARE_CONCRETE_INSTRUCTION(AccessArgumentsAt, "access-arguments-at") |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
}; |
-class LArgumentsLength: public LTemplateInstruction<1, 1, 0> { |
+class LArgumentsLength V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LArgumentsLength(LOperand* elements) { |
inputs_[0] = elements; |
@@ -607,20 +619,20 @@ class LArgumentsLength: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LArgumentsElements: public LTemplateInstruction<1, 0, 0> { |
+class LArgumentsElements V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(ArgumentsElements, "arguments-elements") |
DECLARE_HYDROGEN_ACCESSOR(ArgumentsElements) |
}; |
-class LDebugBreak: public LTemplateInstruction<0, 0, 0> { |
+class LDebugBreak V8_FINAL : public LTemplateInstruction<0, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(DebugBreak, "break") |
}; |
-class LModI: public LTemplateInstruction<1, 2, 1> { |
+class LModI V8_FINAL : public LTemplateInstruction<1, 2, 1> { |
public: |
LModI(LOperand* left, LOperand* right, LOperand* temp) { |
inputs_[0] = left; |
@@ -637,7 +649,7 @@ class LModI: public LTemplateInstruction<1, 2, 1> { |
}; |
-class LDivI: public LTemplateInstruction<1, 2, 1> { |
+class LDivI V8_FINAL : public LTemplateInstruction<1, 2, 1> { |
public: |
LDivI(LOperand* left, LOperand* right, LOperand* temp) { |
inputs_[0] = left; |
@@ -655,7 +667,7 @@ class LDivI: public LTemplateInstruction<1, 2, 1> { |
}; |
-class LMathFloorOfDiv: public LTemplateInstruction<1, 2, 1> { |
+class LMathFloorOfDiv V8_FINAL : public LTemplateInstruction<1, 2, 1> { |
public: |
LMathFloorOfDiv(LOperand* left, |
LOperand* right, |
@@ -674,7 +686,7 @@ class LMathFloorOfDiv: public LTemplateInstruction<1, 2, 1> { |
}; |
-class LMulI: public LTemplateInstruction<1, 2, 1> { |
+class LMulI V8_FINAL : public LTemplateInstruction<1, 2, 1> { |
public: |
LMulI(LOperand* left, LOperand* right, LOperand* temp) { |
inputs_[0] = left; |
@@ -691,7 +703,7 @@ class LMulI: public LTemplateInstruction<1, 2, 1> { |
}; |
-class LCompareNumericAndBranch: public LControlInstruction<2, 0> { |
+class LCompareNumericAndBranch V8_FINAL : public LControlInstruction<2, 0> { |
public: |
LCompareNumericAndBranch(LOperand* left, LOperand* right) { |
inputs_[0] = left; |
@@ -714,7 +726,7 @@ class LCompareNumericAndBranch: public LControlInstruction<2, 0> { |
}; |
-class LMathFloor: public LTemplateInstruction<1, 1, 0> { |
+class LMathFloor V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LMathFloor(LOperand* value) { |
inputs_[0] = value; |
@@ -727,7 +739,7 @@ class LMathFloor: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LMathRound: public LTemplateInstruction<1, 2, 1> { |
+class LMathRound V8_FINAL : public LTemplateInstruction<1, 2, 1> { |
public: |
LMathRound(LOperand* context, LOperand* value, LOperand* temp) { |
inputs_[1] = context; |
@@ -744,7 +756,7 @@ class LMathRound: public LTemplateInstruction<1, 2, 1> { |
}; |
-class LMathAbs: public LTemplateInstruction<1, 2, 0> { |
+class LMathAbs V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LMathAbs(LOperand* context, LOperand* value) { |
inputs_[1] = context; |
@@ -759,7 +771,7 @@ class LMathAbs: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LMathLog: public LTemplateInstruction<1, 1, 0> { |
+class LMathLog V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LMathLog(LOperand* value) { |
inputs_[0] = value; |
@@ -771,7 +783,7 @@ class LMathLog: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LMathSin: public LTemplateInstruction<1, 1, 0> { |
+class LMathSin V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LMathSin(LOperand* value) { |
inputs_[0] = value; |
@@ -783,7 +795,7 @@ class LMathSin: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LMathCos: public LTemplateInstruction<1, 1, 0> { |
+class LMathCos V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LMathCos(LOperand* value) { |
inputs_[0] = value; |
@@ -795,7 +807,7 @@ class LMathCos: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LMathTan: public LTemplateInstruction<1, 1, 0> { |
+class LMathTan V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LMathTan(LOperand* value) { |
inputs_[0] = value; |
@@ -807,7 +819,7 @@ class LMathTan: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LMathExp: public LTemplateInstruction<1, 1, 2> { |
+class LMathExp V8_FINAL : public LTemplateInstruction<1, 1, 2> { |
public: |
LMathExp(LOperand* value, |
LOperand* temp1, |
@@ -826,7 +838,7 @@ class LMathExp: public LTemplateInstruction<1, 1, 2> { |
}; |
-class LMathSqrt: public LTemplateInstruction<1, 1, 0> { |
+class LMathSqrt V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LMathSqrt(LOperand* value) { |
inputs_[0] = value; |
@@ -838,7 +850,7 @@ class LMathSqrt: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LMathPowHalf: public LTemplateInstruction<1, 2, 1> { |
+class LMathPowHalf V8_FINAL : public LTemplateInstruction<1, 2, 1> { |
public: |
LMathPowHalf(LOperand* context, LOperand* value, LOperand* temp) { |
inputs_[1] = context; |
@@ -854,7 +866,7 @@ class LMathPowHalf: public LTemplateInstruction<1, 2, 1> { |
}; |
-class LCmpObjectEqAndBranch: public LControlInstruction<2, 0> { |
+class LCmpObjectEqAndBranch V8_FINAL : public LControlInstruction<2, 0> { |
public: |
LCmpObjectEqAndBranch(LOperand* left, LOperand* right) { |
inputs_[0] = left; |
@@ -868,7 +880,7 @@ class LCmpObjectEqAndBranch: public LControlInstruction<2, 0> { |
}; |
-class LCmpHoleAndBranch: public LControlInstruction<1, 0> { |
+class LCmpHoleAndBranch V8_FINAL : public LControlInstruction<1, 0> { |
public: |
explicit LCmpHoleAndBranch(LOperand* object) { |
inputs_[0] = object; |
@@ -881,7 +893,7 @@ class LCmpHoleAndBranch: public LControlInstruction<1, 0> { |
}; |
-class LIsObjectAndBranch: public LControlInstruction<1, 1> { |
+class LIsObjectAndBranch V8_FINAL : public LControlInstruction<1, 1> { |
public: |
LIsObjectAndBranch(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -893,11 +905,11 @@ class LIsObjectAndBranch: public LControlInstruction<1, 1> { |
DECLARE_CONCRETE_INSTRUCTION(IsObjectAndBranch, "is-object-and-branch") |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
}; |
-class LIsNumberAndBranch: public LControlInstruction<1, 0> { |
+class LIsNumberAndBranch V8_FINAL : public LControlInstruction<1, 0> { |
public: |
explicit LIsNumberAndBranch(LOperand* value) { |
inputs_[0] = value; |
@@ -910,7 +922,7 @@ class LIsNumberAndBranch: public LControlInstruction<1, 0> { |
}; |
-class LIsStringAndBranch: public LControlInstruction<1, 1> { |
+class LIsStringAndBranch V8_FINAL : public LControlInstruction<1, 1> { |
public: |
LIsStringAndBranch(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -923,11 +935,11 @@ class LIsStringAndBranch: public LControlInstruction<1, 1> { |
DECLARE_CONCRETE_INSTRUCTION(IsStringAndBranch, "is-string-and-branch") |
DECLARE_HYDROGEN_ACCESSOR(IsStringAndBranch) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
}; |
-class LIsSmiAndBranch: public LControlInstruction<1, 0> { |
+class LIsSmiAndBranch V8_FINAL : public LControlInstruction<1, 0> { |
public: |
explicit LIsSmiAndBranch(LOperand* value) { |
inputs_[0] = value; |
@@ -938,11 +950,11 @@ class LIsSmiAndBranch: public LControlInstruction<1, 0> { |
DECLARE_CONCRETE_INSTRUCTION(IsSmiAndBranch, "is-smi-and-branch") |
DECLARE_HYDROGEN_ACCESSOR(IsSmiAndBranch) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
}; |
-class LIsUndetectableAndBranch: public LControlInstruction<1, 1> { |
+class LIsUndetectableAndBranch V8_FINAL : public LControlInstruction<1, 1> { |
public: |
LIsUndetectableAndBranch(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -956,11 +968,11 @@ class LIsUndetectableAndBranch: public LControlInstruction<1, 1> { |
"is-undetectable-and-branch") |
DECLARE_HYDROGEN_ACCESSOR(IsUndetectableAndBranch) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
}; |
-class LStringCompareAndBranch: public LControlInstruction<3, 0> { |
+class LStringCompareAndBranch V8_FINAL : public LControlInstruction<3, 0> { |
public: |
LStringCompareAndBranch(LOperand* context, LOperand* left, LOperand* right) { |
inputs_[0] = context; |
@@ -975,13 +987,13 @@ class LStringCompareAndBranch: public LControlInstruction<3, 0> { |
"string-compare-and-branch") |
DECLARE_HYDROGEN_ACCESSOR(StringCompareAndBranch) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
Token::Value op() const { return hydrogen()->token(); } |
}; |
-class LHasInstanceTypeAndBranch: public LControlInstruction<1, 1> { |
+class LHasInstanceTypeAndBranch V8_FINAL : public LControlInstruction<1, 1> { |
public: |
LHasInstanceTypeAndBranch(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -995,11 +1007,11 @@ class LHasInstanceTypeAndBranch: public LControlInstruction<1, 1> { |
"has-instance-type-and-branch") |
DECLARE_HYDROGEN_ACCESSOR(HasInstanceTypeAndBranch) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
}; |
-class LGetCachedArrayIndex: public LTemplateInstruction<1, 1, 0> { |
+class LGetCachedArrayIndex V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LGetCachedArrayIndex(LOperand* value) { |
inputs_[0] = value; |
@@ -1012,7 +1024,8 @@ class LGetCachedArrayIndex: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LHasCachedArrayIndexAndBranch: public LControlInstruction<1, 0> { |
+class LHasCachedArrayIndexAndBranch V8_FINAL |
+ : public LControlInstruction<1, 0> { |
public: |
explicit LHasCachedArrayIndexAndBranch(LOperand* value) { |
inputs_[0] = value; |
@@ -1023,11 +1036,11 @@ class LHasCachedArrayIndexAndBranch: public LControlInstruction<1, 0> { |
DECLARE_CONCRETE_INSTRUCTION(HasCachedArrayIndexAndBranch, |
"has-cached-array-index-and-branch") |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
}; |
-class LIsConstructCallAndBranch: public LControlInstruction<0, 1> { |
+class LIsConstructCallAndBranch V8_FINAL : public LControlInstruction<0, 1> { |
public: |
explicit LIsConstructCallAndBranch(LOperand* temp) { |
temps_[0] = temp; |
@@ -1040,7 +1053,7 @@ class LIsConstructCallAndBranch: public LControlInstruction<0, 1> { |
}; |
-class LClassOfTestAndBranch: public LControlInstruction<1, 2> { |
+class LClassOfTestAndBranch V8_FINAL : public LControlInstruction<1, 2> { |
public: |
LClassOfTestAndBranch(LOperand* value, LOperand* temp, LOperand* temp2) { |
inputs_[0] = value; |
@@ -1056,11 +1069,11 @@ class LClassOfTestAndBranch: public LControlInstruction<1, 2> { |
"class-of-test-and-branch") |
DECLARE_HYDROGEN_ACCESSOR(ClassOfTestAndBranch) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
}; |
-class LCmpT: public LTemplateInstruction<1, 3, 0> { |
+class LCmpT V8_FINAL : public LTemplateInstruction<1, 3, 0> { |
public: |
LCmpT(LOperand* context, LOperand* left, LOperand* right) { |
inputs_[0] = context; |
@@ -1075,7 +1088,7 @@ class LCmpT: public LTemplateInstruction<1, 3, 0> { |
}; |
-class LInstanceOf: public LTemplateInstruction<1, 3, 0> { |
+class LInstanceOf V8_FINAL : public LTemplateInstruction<1, 3, 0> { |
public: |
LInstanceOf(LOperand* context, LOperand* left, LOperand* right) { |
inputs_[0] = context; |
@@ -1089,7 +1102,7 @@ class LInstanceOf: public LTemplateInstruction<1, 3, 0> { |
}; |
-class LInstanceOfKnownGlobal: public LTemplateInstruction<1, 2, 1> { |
+class LInstanceOfKnownGlobal V8_FINAL : public LTemplateInstruction<1, 2, 1> { |
public: |
LInstanceOfKnownGlobal(LOperand* context, LOperand* value, LOperand* temp) { |
inputs_[0] = context; |
@@ -1108,7 +1121,8 @@ class LInstanceOfKnownGlobal: public LTemplateInstruction<1, 2, 1> { |
LEnvironment* GetDeferredLazyDeoptimizationEnvironment() { |
return lazy_deopt_env_; |
} |
- virtual void SetDeferredLazyDeoptimizationEnvironment(LEnvironment* env) { |
+ virtual void SetDeferredLazyDeoptimizationEnvironment( |
+ LEnvironment* env) V8_OVERRIDE { |
lazy_deopt_env_ = env; |
} |
@@ -1117,7 +1131,7 @@ class LInstanceOfKnownGlobal: public LTemplateInstruction<1, 2, 1> { |
}; |
-class LInstanceSize: public LTemplateInstruction<1, 1, 0> { |
+class LInstanceSize V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LInstanceSize(LOperand* object) { |
inputs_[0] = object; |
@@ -1130,7 +1144,7 @@ class LInstanceSize: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LBoundsCheck: public LTemplateInstruction<0, 2, 0> { |
+class LBoundsCheck V8_FINAL : public LTemplateInstruction<0, 2, 0> { |
public: |
LBoundsCheck(LOperand* index, LOperand* length) { |
inputs_[0] = index; |
@@ -1145,7 +1159,7 @@ class LBoundsCheck: public LTemplateInstruction<0, 2, 0> { |
}; |
-class LBitI: public LTemplateInstruction<1, 2, 0> { |
+class LBitI V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LBitI(LOperand* left, LOperand* right) { |
inputs_[0] = left; |
@@ -1162,7 +1176,7 @@ class LBitI: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LShiftI: public LTemplateInstruction<1, 2, 0> { |
+class LShiftI V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LShiftI(Token::Value op, LOperand* left, LOperand* right, bool can_deopt) |
: op_(op), can_deopt_(can_deopt) { |
@@ -1184,7 +1198,7 @@ class LShiftI: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LSubI: public LTemplateInstruction<1, 2, 0> { |
+class LSubI V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LSubI(LOperand* left, LOperand* right) { |
inputs_[0] = left; |
@@ -1199,7 +1213,7 @@ class LSubI: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LConstantI: public LTemplateInstruction<1, 0, 0> { |
+class LConstantI V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(ConstantI, "constant-i") |
DECLARE_HYDROGEN_ACCESSOR(Constant) |
@@ -1208,7 +1222,7 @@ class LConstantI: public LTemplateInstruction<1, 0, 0> { |
}; |
-class LConstantS: public LTemplateInstruction<1, 0, 0> { |
+class LConstantS V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(ConstantS, "constant-s") |
DECLARE_HYDROGEN_ACCESSOR(Constant) |
@@ -1217,7 +1231,7 @@ class LConstantS: public LTemplateInstruction<1, 0, 0> { |
}; |
-class LConstantD: public LTemplateInstruction<1, 0, 1> { |
+class LConstantD V8_FINAL : public LTemplateInstruction<1, 0, 1> { |
public: |
explicit LConstantD(LOperand* temp) { |
temps_[0] = temp; |
@@ -1232,7 +1246,7 @@ class LConstantD: public LTemplateInstruction<1, 0, 1> { |
}; |
-class LConstantE: public LTemplateInstruction<1, 0, 0> { |
+class LConstantE V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(ConstantE, "constant-e") |
DECLARE_HYDROGEN_ACCESSOR(Constant) |
@@ -1243,7 +1257,7 @@ class LConstantE: public LTemplateInstruction<1, 0, 0> { |
}; |
-class LConstantT: public LTemplateInstruction<1, 0, 0> { |
+class LConstantT V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(ConstantT, "constant-t") |
DECLARE_HYDROGEN_ACCESSOR(Constant) |
@@ -1252,7 +1266,7 @@ class LConstantT: public LTemplateInstruction<1, 0, 0> { |
}; |
-class LBranch: public LControlInstruction<1, 1> { |
+class LBranch V8_FINAL : public LControlInstruction<1, 1> { |
public: |
LBranch(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -1265,11 +1279,11 @@ class LBranch: public LControlInstruction<1, 1> { |
DECLARE_CONCRETE_INSTRUCTION(Branch, "branch") |
DECLARE_HYDROGEN_ACCESSOR(Branch) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
}; |
-class LCmpMapAndBranch: public LControlInstruction<1, 0> { |
+class LCmpMapAndBranch V8_FINAL : public LControlInstruction<1, 0> { |
public: |
explicit LCmpMapAndBranch(LOperand* value) { |
inputs_[0] = value; |
@@ -1284,7 +1298,7 @@ class LCmpMapAndBranch: public LControlInstruction<1, 0> { |
}; |
-class LMapEnumLength: public LTemplateInstruction<1, 1, 0> { |
+class LMapEnumLength V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LMapEnumLength(LOperand* value) { |
inputs_[0] = value; |
@@ -1296,7 +1310,7 @@ class LMapEnumLength: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LElementsKind: public LTemplateInstruction<1, 1, 0> { |
+class LElementsKind V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LElementsKind(LOperand* value) { |
inputs_[0] = value; |
@@ -1309,7 +1323,7 @@ class LElementsKind: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LValueOf: public LTemplateInstruction<1, 1, 1> { |
+class LValueOf V8_FINAL : public LTemplateInstruction<1, 1, 1> { |
public: |
LValueOf(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -1324,7 +1338,7 @@ class LValueOf: public LTemplateInstruction<1, 1, 1> { |
}; |
-class LDateField: public LTemplateInstruction<1, 1, 1> { |
+class LDateField V8_FINAL : public LTemplateInstruction<1, 1, 1> { |
public: |
LDateField(LOperand* date, LOperand* temp, Smi* index) |
: index_(index) { |
@@ -1345,7 +1359,7 @@ class LDateField: public LTemplateInstruction<1, 1, 1> { |
}; |
-class LSeqStringSetChar: public LTemplateInstruction<1, 3, 0> { |
+class LSeqStringSetChar V8_FINAL : public LTemplateInstruction<1, 3, 0> { |
public: |
LSeqStringSetChar(String::Encoding encoding, |
LOperand* string, |
@@ -1369,7 +1383,7 @@ class LSeqStringSetChar: public LTemplateInstruction<1, 3, 0> { |
}; |
-class LThrow: public LTemplateInstruction<0, 2, 0> { |
+class LThrow V8_FINAL : public LTemplateInstruction<0, 2, 0> { |
public: |
LThrow(LOperand* context, LOperand* value) { |
inputs_[0] = context; |
@@ -1383,7 +1397,7 @@ class LThrow: public LTemplateInstruction<0, 2, 0> { |
}; |
-class LAddI: public LTemplateInstruction<1, 2, 0> { |
+class LAddI V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LAddI(LOperand* left, LOperand* right) { |
inputs_[0] = left; |
@@ -1403,7 +1417,7 @@ class LAddI: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LMathMinMax: public LTemplateInstruction<1, 2, 0> { |
+class LMathMinMax V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LMathMinMax(LOperand* left, LOperand* right) { |
inputs_[0] = left; |
@@ -1418,7 +1432,7 @@ class LMathMinMax: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LPower: public LTemplateInstruction<1, 2, 0> { |
+class LPower V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LPower(LOperand* left, LOperand* right) { |
inputs_[0] = left; |
@@ -1433,7 +1447,7 @@ class LPower: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LRandom: public LTemplateInstruction<1, 1, 0> { |
+class LRandom V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LRandom(LOperand* global_object) { |
inputs_[0] = global_object; |
@@ -1446,7 +1460,7 @@ class LRandom: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LArithmeticD: public LTemplateInstruction<1, 2, 0> { |
+class LArithmeticD V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LArithmeticD(Token::Value op, LOperand* left, LOperand* right) |
: op_(op) { |
@@ -1459,16 +1473,18 @@ class LArithmeticD: public LTemplateInstruction<1, 2, 0> { |
Token::Value op() const { return op_; } |
- virtual Opcode opcode() const { return LInstruction::kArithmeticD; } |
- virtual void CompileToNative(LCodeGen* generator); |
- virtual const char* Mnemonic() const; |
+ virtual Opcode opcode() const V8_OVERRIDE { |
+ return LInstruction::kArithmeticD; |
+ } |
+ virtual void CompileToNative(LCodeGen* generator) V8_OVERRIDE; |
+ virtual const char* Mnemonic() const V8_OVERRIDE; |
private: |
Token::Value op_; |
}; |
-class LArithmeticT: public LTemplateInstruction<1, 3, 0> { |
+class LArithmeticT V8_FINAL : public LTemplateInstruction<1, 3, 0> { |
public: |
LArithmeticT(Token::Value op, |
LOperand* context, |
@@ -1484,9 +1500,11 @@ class LArithmeticT: public LTemplateInstruction<1, 3, 0> { |
LOperand* left() { return inputs_[1]; } |
LOperand* right() { return inputs_[2]; } |
- virtual Opcode opcode() const { return LInstruction::kArithmeticT; } |
- virtual void CompileToNative(LCodeGen* generator); |
- virtual const char* Mnemonic() const; |
+ virtual Opcode opcode() const V8_OVERRIDE { |
+ return LInstruction::kArithmeticT; |
+ } |
+ virtual void CompileToNative(LCodeGen* generator) V8_OVERRIDE; |
+ virtual const char* Mnemonic() const V8_OVERRIDE; |
Token::Value op() const { return op_; } |
@@ -1495,7 +1513,7 @@ class LArithmeticT: public LTemplateInstruction<1, 3, 0> { |
}; |
-class LReturn: public LTemplateInstruction<0, 3, 0> { |
+class LReturn V8_FINAL : public LTemplateInstruction<0, 3, 0> { |
public: |
explicit LReturn(LOperand* value, LOperand* context, |
LOperand* parameter_count) { |
@@ -1518,7 +1536,7 @@ class LReturn: public LTemplateInstruction<0, 3, 0> { |
}; |
-class LLoadNamedField: public LTemplateInstruction<1, 1, 0> { |
+class LLoadNamedField V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LLoadNamedField(LOperand* object) { |
inputs_[0] = object; |
@@ -1536,7 +1554,7 @@ class LLoadNamedField: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LLoadNamedGeneric: public LTemplateInstruction<1, 2, 0> { |
+class LLoadNamedGeneric V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LLoadNamedGeneric(LOperand* context, LOperand* object) { |
inputs_[0] = context; |
@@ -1553,7 +1571,7 @@ class LLoadNamedGeneric: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LLoadFunctionPrototype: public LTemplateInstruction<1, 1, 1> { |
+class LLoadFunctionPrototype V8_FINAL : public LTemplateInstruction<1, 1, 1> { |
public: |
LLoadFunctionPrototype(LOperand* function, LOperand* temp) { |
inputs_[0] = function; |
@@ -1568,7 +1586,8 @@ class LLoadFunctionPrototype: public LTemplateInstruction<1, 1, 1> { |
}; |
-class LLoadExternalArrayPointer: public LTemplateInstruction<1, 1, 0> { |
+class LLoadExternalArrayPointer V8_FINAL |
+ : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LLoadExternalArrayPointer(LOperand* object) { |
inputs_[0] = object; |
@@ -1581,7 +1600,7 @@ class LLoadExternalArrayPointer: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LLoadKeyed: public LTemplateInstruction<1, 2, 0> { |
+class LLoadKeyed V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LLoadKeyed(LOperand* elements, LOperand* key) { |
inputs_[0] = elements; |
@@ -1596,7 +1615,7 @@ class LLoadKeyed: public LTemplateInstruction<1, 2, 0> { |
return hydrogen()->is_external(); |
} |
- virtual bool ClobbersDoubleRegisters() const { |
+ virtual bool ClobbersDoubleRegisters() const V8_OVERRIDE { |
return !CpuFeatures::IsSupported(SSE2) && |
!IsDoubleOrFloatElementsKind(hydrogen()->elements_kind()); |
} |
@@ -1604,7 +1623,7 @@ class LLoadKeyed: public LTemplateInstruction<1, 2, 0> { |
DECLARE_CONCRETE_INSTRUCTION(LoadKeyed, "load-keyed") |
DECLARE_HYDROGEN_ACCESSOR(LoadKeyed) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
uint32_t additional_index() const { return hydrogen()->index_offset(); } |
bool key_is_smi() { |
return hydrogen()->key()->representation().IsTagged(); |
@@ -1625,7 +1644,7 @@ inline static bool ExternalArrayOpRequiresTemp( |
} |
-class LLoadKeyedGeneric: public LTemplateInstruction<1, 3, 0> { |
+class LLoadKeyedGeneric V8_FINAL : public LTemplateInstruction<1, 3, 0> { |
public: |
LLoadKeyedGeneric(LOperand* context, LOperand* obj, LOperand* key) { |
inputs_[0] = context; |
@@ -1641,14 +1660,14 @@ class LLoadKeyedGeneric: public LTemplateInstruction<1, 3, 0> { |
}; |
-class LLoadGlobalCell: public LTemplateInstruction<1, 0, 0> { |
+class LLoadGlobalCell V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(LoadGlobalCell, "load-global-cell") |
DECLARE_HYDROGEN_ACCESSOR(LoadGlobalCell) |
}; |
-class LLoadGlobalGeneric: public LTemplateInstruction<1, 2, 0> { |
+class LLoadGlobalGeneric V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LLoadGlobalGeneric(LOperand* context, LOperand* global_object) { |
inputs_[0] = context; |
@@ -1666,7 +1685,7 @@ class LLoadGlobalGeneric: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LStoreGlobalCell: public LTemplateInstruction<0, 1, 0> { |
+class LStoreGlobalCell V8_FINAL : public LTemplateInstruction<0, 1, 0> { |
public: |
explicit LStoreGlobalCell(LOperand* value) { |
inputs_[0] = value; |
@@ -1679,7 +1698,7 @@ class LStoreGlobalCell: public LTemplateInstruction<0, 1, 0> { |
}; |
-class LStoreGlobalGeneric: public LTemplateInstruction<0, 3, 0> { |
+class LStoreGlobalGeneric V8_FINAL : public LTemplateInstruction<0, 3, 0> { |
public: |
LStoreGlobalGeneric(LOperand* context, |
LOperand* global_object, |
@@ -1701,7 +1720,7 @@ class LStoreGlobalGeneric: public LTemplateInstruction<0, 3, 0> { |
}; |
-class LLoadContextSlot: public LTemplateInstruction<1, 1, 0> { |
+class LLoadContextSlot V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LLoadContextSlot(LOperand* context) { |
inputs_[0] = context; |
@@ -1714,11 +1733,11 @@ class LLoadContextSlot: public LTemplateInstruction<1, 1, 0> { |
int slot_index() { return hydrogen()->slot_index(); } |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
}; |
-class LStoreContextSlot: public LTemplateInstruction<0, 2, 1> { |
+class LStoreContextSlot V8_FINAL : public LTemplateInstruction<0, 2, 1> { |
public: |
LStoreContextSlot(LOperand* context, LOperand* value, LOperand* temp) { |
inputs_[0] = context; |
@@ -1735,11 +1754,11 @@ class LStoreContextSlot: public LTemplateInstruction<0, 2, 1> { |
int slot_index() { return hydrogen()->slot_index(); } |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
}; |
-class LPushArgument: public LTemplateInstruction<0, 1, 0> { |
+class LPushArgument V8_FINAL : public LTemplateInstruction<0, 1, 0> { |
public: |
explicit LPushArgument(LOperand* value) { |
inputs_[0] = value; |
@@ -1751,7 +1770,7 @@ class LPushArgument: public LTemplateInstruction<0, 1, 0> { |
}; |
-class LDrop: public LTemplateInstruction<0, 0, 0> { |
+class LDrop V8_FINAL : public LTemplateInstruction<0, 0, 0> { |
public: |
explicit LDrop(int count) : count_(count) { } |
@@ -1764,7 +1783,7 @@ class LDrop: public LTemplateInstruction<0, 0, 0> { |
}; |
-class LInnerAllocatedObject: public LTemplateInstruction<1, 1, 0> { |
+class LInnerAllocatedObject V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LInnerAllocatedObject(LOperand* base_object) { |
inputs_[0] = base_object; |
@@ -1780,21 +1799,21 @@ class LInnerAllocatedObject: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LThisFunction: public LTemplateInstruction<1, 0, 0> { |
+class LThisFunction V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(ThisFunction, "this-function") |
DECLARE_HYDROGEN_ACCESSOR(ThisFunction) |
}; |
-class LContext: public LTemplateInstruction<1, 0, 0> { |
+class LContext V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(Context, "context") |
DECLARE_HYDROGEN_ACCESSOR(Context) |
}; |
-class LOuterContext: public LTemplateInstruction<1, 1, 0> { |
+class LOuterContext V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LOuterContext(LOperand* context) { |
inputs_[0] = context; |
@@ -1806,7 +1825,7 @@ class LOuterContext: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LDeclareGlobals: public LTemplateInstruction<0, 1, 0> { |
+class LDeclareGlobals V8_FINAL : public LTemplateInstruction<0, 1, 0> { |
public: |
explicit LDeclareGlobals(LOperand* context) { |
inputs_[0] = context; |
@@ -1819,7 +1838,7 @@ class LDeclareGlobals: public LTemplateInstruction<0, 1, 0> { |
}; |
-class LGlobalObject: public LTemplateInstruction<1, 1, 0> { |
+class LGlobalObject V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LGlobalObject(LOperand* context) { |
inputs_[0] = context; |
@@ -1831,7 +1850,7 @@ class LGlobalObject: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LGlobalReceiver: public LTemplateInstruction<1, 1, 0> { |
+class LGlobalReceiver V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LGlobalReceiver(LOperand* global_object) { |
inputs_[0] = global_object; |
@@ -1843,19 +1862,19 @@ class LGlobalReceiver: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LCallConstantFunction: public LTemplateInstruction<1, 0, 0> { |
+class LCallConstantFunction V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(CallConstantFunction, "call-constant-function") |
DECLARE_HYDROGEN_ACCESSOR(CallConstantFunction) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
Handle<JSFunction> function() { return hydrogen()->function(); } |
int arity() const { return hydrogen()->argument_count() - 1; } |
}; |
-class LInvokeFunction: public LTemplateInstruction<1, 2, 0> { |
+class LInvokeFunction V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LInvokeFunction(LOperand* context, LOperand* function) { |
inputs_[0] = context; |
@@ -1868,13 +1887,13 @@ class LInvokeFunction: public LTemplateInstruction<1, 2, 0> { |
DECLARE_CONCRETE_INSTRUCTION(InvokeFunction, "invoke-function") |
DECLARE_HYDROGEN_ACCESSOR(InvokeFunction) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
int arity() const { return hydrogen()->argument_count() - 1; } |
}; |
-class LCallKeyed: public LTemplateInstruction<1, 2, 0> { |
+class LCallKeyed V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LCallKeyed(LOperand* context, LOperand* key) { |
inputs_[0] = context; |
@@ -1887,13 +1906,13 @@ class LCallKeyed: public LTemplateInstruction<1, 2, 0> { |
DECLARE_CONCRETE_INSTRUCTION(CallKeyed, "call-keyed") |
DECLARE_HYDROGEN_ACCESSOR(CallKeyed) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
int arity() const { return hydrogen()->argument_count() - 1; } |
}; |
-class LCallNamed: public LTemplateInstruction<1, 1, 0> { |
+class LCallNamed V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LCallNamed(LOperand* context) { |
inputs_[0] = context; |
@@ -1904,14 +1923,14 @@ class LCallNamed: public LTemplateInstruction<1, 1, 0> { |
DECLARE_CONCRETE_INSTRUCTION(CallNamed, "call-named") |
DECLARE_HYDROGEN_ACCESSOR(CallNamed) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
Handle<String> name() const { return hydrogen()->name(); } |
int arity() const { return hydrogen()->argument_count() - 1; } |
}; |
-class LCallFunction: public LTemplateInstruction<1, 2, 0> { |
+class LCallFunction V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
explicit LCallFunction(LOperand* context, LOperand* function) { |
inputs_[0] = context; |
@@ -1928,7 +1947,7 @@ class LCallFunction: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LCallGlobal: public LTemplateInstruction<1, 1, 0> { |
+class LCallGlobal V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LCallGlobal(LOperand* context) { |
inputs_[0] = context; |
@@ -1939,25 +1958,25 @@ class LCallGlobal: public LTemplateInstruction<1, 1, 0> { |
DECLARE_CONCRETE_INSTRUCTION(CallGlobal, "call-global") |
DECLARE_HYDROGEN_ACCESSOR(CallGlobal) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
Handle<String> name() const {return hydrogen()->name(); } |
int arity() const { return hydrogen()->argument_count() - 1; } |
}; |
-class LCallKnownGlobal: public LTemplateInstruction<1, 0, 0> { |
+class LCallKnownGlobal V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(CallKnownGlobal, "call-known-global") |
DECLARE_HYDROGEN_ACCESSOR(CallKnownGlobal) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
int arity() const { return hydrogen()->argument_count() - 1; } |
}; |
-class LCallNew: public LTemplateInstruction<1, 2, 0> { |
+class LCallNew V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LCallNew(LOperand* context, LOperand* constructor) { |
inputs_[0] = context; |
@@ -1970,13 +1989,13 @@ class LCallNew: public LTemplateInstruction<1, 2, 0> { |
DECLARE_CONCRETE_INSTRUCTION(CallNew, "call-new") |
DECLARE_HYDROGEN_ACCESSOR(CallNew) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
int arity() const { return hydrogen()->argument_count() - 1; } |
}; |
-class LCallNewArray: public LTemplateInstruction<1, 2, 0> { |
+class LCallNewArray V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LCallNewArray(LOperand* context, LOperand* constructor) { |
inputs_[0] = context; |
@@ -1989,13 +2008,13 @@ class LCallNewArray: public LTemplateInstruction<1, 2, 0> { |
DECLARE_CONCRETE_INSTRUCTION(CallNewArray, "call-new-array") |
DECLARE_HYDROGEN_ACCESSOR(CallNewArray) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
int arity() const { return hydrogen()->argument_count() - 1; } |
}; |
-class LCallRuntime: public LTemplateInstruction<1, 1, 0> { |
+class LCallRuntime V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LCallRuntime(LOperand* context) { |
inputs_[0] = context; |
@@ -2011,7 +2030,7 @@ class LCallRuntime: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LInteger32ToDouble: public LTemplateInstruction<1, 1, 0> { |
+class LInteger32ToDouble V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LInteger32ToDouble(LOperand* value) { |
inputs_[0] = value; |
@@ -2023,7 +2042,7 @@ class LInteger32ToDouble: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LInteger32ToSmi: public LTemplateInstruction<1, 1, 0> { |
+class LInteger32ToSmi V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LInteger32ToSmi(LOperand* value) { |
inputs_[0] = value; |
@@ -2036,7 +2055,7 @@ class LInteger32ToSmi: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LUint32ToDouble: public LTemplateInstruction<1, 1, 1> { |
+class LUint32ToDouble V8_FINAL : public LTemplateInstruction<1, 1, 1> { |
public: |
explicit LUint32ToDouble(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -2050,7 +2069,7 @@ class LUint32ToDouble: public LTemplateInstruction<1, 1, 1> { |
}; |
-class LNumberTagI: public LTemplateInstruction<1, 1, 0> { |
+class LNumberTagI V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LNumberTagI(LOperand* value) { |
inputs_[0] = value; |
@@ -2062,7 +2081,7 @@ class LNumberTagI: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LNumberTagU: public LTemplateInstruction<1, 1, 1> { |
+class LNumberTagU V8_FINAL : public LTemplateInstruction<1, 1, 1> { |
public: |
LNumberTagU(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -2076,7 +2095,7 @@ class LNumberTagU: public LTemplateInstruction<1, 1, 1> { |
}; |
-class LNumberTagD: public LTemplateInstruction<1, 1, 1> { |
+class LNumberTagD V8_FINAL : public LTemplateInstruction<1, 1, 1> { |
public: |
LNumberTagD(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -2092,7 +2111,7 @@ class LNumberTagD: public LTemplateInstruction<1, 1, 1> { |
// Sometimes truncating conversion from a tagged value to an int32. |
-class LDoubleToI: public LTemplateInstruction<1, 1, 1> { |
+class LDoubleToI V8_FINAL : public LTemplateInstruction<1, 1, 1> { |
public: |
LDoubleToI(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -2109,7 +2128,7 @@ class LDoubleToI: public LTemplateInstruction<1, 1, 1> { |
}; |
-class LDoubleToSmi: public LTemplateInstruction<1, 1, 0> { |
+class LDoubleToSmi V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LDoubleToSmi(LOperand* value) { |
inputs_[0] = value; |
@@ -2123,7 +2142,7 @@ class LDoubleToSmi: public LTemplateInstruction<1, 1, 0> { |
// Truncating conversion from a tagged value to an int32. |
-class LTaggedToI: public LTemplateInstruction<1, 1, 1> { |
+class LTaggedToI V8_FINAL : public LTemplateInstruction<1, 1, 1> { |
public: |
LTaggedToI(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -2141,7 +2160,7 @@ class LTaggedToI: public LTemplateInstruction<1, 1, 1> { |
// Truncating conversion from a tagged value to an int32. |
-class LTaggedToINoSSE2: public LTemplateInstruction<1, 1, 3> { |
+class LTaggedToINoSSE2 V8_FINAL : public LTemplateInstruction<1, 1, 3> { |
public: |
LTaggedToINoSSE2(LOperand* value, |
LOperand* temp1, |
@@ -2165,7 +2184,7 @@ class LTaggedToINoSSE2: public LTemplateInstruction<1, 1, 3> { |
}; |
-class LSmiTag: public LTemplateInstruction<1, 1, 0> { |
+class LSmiTag V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LSmiTag(LOperand* value) { |
inputs_[0] = value; |
@@ -2177,7 +2196,7 @@ class LSmiTag: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LNumberUntagD: public LTemplateInstruction<1, 1, 1> { |
+class LNumberUntagD V8_FINAL : public LTemplateInstruction<1, 1, 1> { |
public: |
explicit LNumberUntagD(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -2187,14 +2206,14 @@ class LNumberUntagD: public LTemplateInstruction<1, 1, 1> { |
LOperand* value() { return inputs_[0]; } |
LOperand* temp() { return temps_[0]; } |
- virtual bool ClobbersDoubleRegisters() const { return false; } |
+ virtual bool ClobbersDoubleRegisters() const V8_OVERRIDE { return false; } |
DECLARE_CONCRETE_INSTRUCTION(NumberUntagD, "double-untag") |
DECLARE_HYDROGEN_ACCESSOR(Change); |
}; |
-class LSmiUntag: public LTemplateInstruction<1, 1, 0> { |
+class LSmiUntag V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
LSmiUntag(LOperand* value, bool needs_check) |
: needs_check_(needs_check) { |
@@ -2212,7 +2231,7 @@ class LSmiUntag: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LStoreNamedField: public LTemplateInstruction<0, 2, 2> { |
+class LStoreNamedField V8_FINAL : public LTemplateInstruction<0, 2, 2> { |
public: |
LStoreNamedField(LOperand* obj, |
LOperand* val, |
@@ -2232,7 +2251,7 @@ class LStoreNamedField: public LTemplateInstruction<0, 2, 2> { |
DECLARE_CONCRETE_INSTRUCTION(StoreNamedField, "store-named-field") |
DECLARE_HYDROGEN_ACCESSOR(StoreNamedField) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
Handle<Map> transition() const { return hydrogen()->transition_map(); } |
Representation representation() const { |
@@ -2241,7 +2260,7 @@ class LStoreNamedField: public LTemplateInstruction<0, 2, 2> { |
}; |
-class LStoreNamedGeneric: public LTemplateInstruction<0, 3, 0> { |
+class LStoreNamedGeneric V8_FINAL : public LTemplateInstruction<0, 3, 0> { |
public: |
LStoreNamedGeneric(LOperand* context, LOperand* object, LOperand* value) { |
inputs_[0] = context; |
@@ -2256,13 +2275,13 @@ class LStoreNamedGeneric: public LTemplateInstruction<0, 3, 0> { |
DECLARE_CONCRETE_INSTRUCTION(StoreNamedGeneric, "store-named-generic") |
DECLARE_HYDROGEN_ACCESSOR(StoreNamedGeneric) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
Handle<Object> name() const { return hydrogen()->name(); } |
StrictModeFlag strict_mode_flag() { return hydrogen()->strict_mode_flag(); } |
}; |
-class LStoreKeyed: public LTemplateInstruction<0, 3, 0> { |
+class LStoreKeyed V8_FINAL : public LTemplateInstruction<0, 3, 0> { |
public: |
LStoreKeyed(LOperand* obj, LOperand* key, LOperand* val) { |
inputs_[0] = obj; |
@@ -2281,13 +2300,13 @@ class LStoreKeyed: public LTemplateInstruction<0, 3, 0> { |
DECLARE_CONCRETE_INSTRUCTION(StoreKeyed, "store-keyed") |
DECLARE_HYDROGEN_ACCESSOR(StoreKeyed) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
uint32_t additional_index() const { return hydrogen()->index_offset(); } |
bool NeedsCanonicalization() { return hydrogen()->NeedsCanonicalization(); } |
}; |
-class LStoreKeyedGeneric: public LTemplateInstruction<0, 4, 0> { |
+class LStoreKeyedGeneric V8_FINAL : public LTemplateInstruction<0, 4, 0> { |
public: |
LStoreKeyedGeneric(LOperand* context, |
LOperand* object, |
@@ -2307,13 +2326,13 @@ class LStoreKeyedGeneric: public LTemplateInstruction<0, 4, 0> { |
DECLARE_CONCRETE_INSTRUCTION(StoreKeyedGeneric, "store-keyed-generic") |
DECLARE_HYDROGEN_ACCESSOR(StoreKeyedGeneric) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
StrictModeFlag strict_mode_flag() { return hydrogen()->strict_mode_flag(); } |
}; |
-class LTransitionElementsKind: public LTemplateInstruction<0, 2, 2> { |
+class LTransitionElementsKind V8_FINAL : public LTemplateInstruction<0, 2, 2> { |
public: |
LTransitionElementsKind(LOperand* object, |
LOperand* context, |
@@ -2334,7 +2353,7 @@ class LTransitionElementsKind: public LTemplateInstruction<0, 2, 2> { |
"transition-elements-kind") |
DECLARE_HYDROGEN_ACCESSOR(TransitionElementsKind) |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
Handle<Map> original_map() { return hydrogen()->original_map(); } |
Handle<Map> transitioned_map() { return hydrogen()->transitioned_map(); } |
@@ -2343,7 +2362,7 @@ class LTransitionElementsKind: public LTemplateInstruction<0, 2, 2> { |
}; |
-class LTrapAllocationMemento : public LTemplateInstruction<0, 1, 1> { |
+class LTrapAllocationMemento V8_FINAL : public LTemplateInstruction<0, 1, 1> { |
public: |
LTrapAllocationMemento(LOperand* object, |
LOperand* temp) { |
@@ -2359,7 +2378,7 @@ class LTrapAllocationMemento : public LTemplateInstruction<0, 1, 1> { |
}; |
-class LStringAdd: public LTemplateInstruction<1, 3, 0> { |
+class LStringAdd V8_FINAL : public LTemplateInstruction<1, 3, 0> { |
public: |
LStringAdd(LOperand* context, LOperand* left, LOperand* right) { |
inputs_[0] = context; |
@@ -2376,7 +2395,7 @@ class LStringAdd: public LTemplateInstruction<1, 3, 0> { |
}; |
-class LStringCharCodeAt: public LTemplateInstruction<1, 3, 0> { |
+class LStringCharCodeAt V8_FINAL : public LTemplateInstruction<1, 3, 0> { |
public: |
LStringCharCodeAt(LOperand* context, LOperand* string, LOperand* index) { |
inputs_[0] = context; |
@@ -2393,7 +2412,7 @@ class LStringCharCodeAt: public LTemplateInstruction<1, 3, 0> { |
}; |
-class LStringCharFromCode: public LTemplateInstruction<1, 2, 0> { |
+class LStringCharFromCode V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LStringCharFromCode(LOperand* context, LOperand* char_code) { |
inputs_[0] = context; |
@@ -2408,7 +2427,7 @@ class LStringCharFromCode: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LCheckFunction: public LTemplateInstruction<0, 1, 0> { |
+class LCheckFunction V8_FINAL : public LTemplateInstruction<0, 1, 0> { |
public: |
explicit LCheckFunction(LOperand* value) { |
inputs_[0] = value; |
@@ -2421,7 +2440,7 @@ class LCheckFunction: public LTemplateInstruction<0, 1, 0> { |
}; |
-class LCheckInstanceType: public LTemplateInstruction<0, 1, 1> { |
+class LCheckInstanceType V8_FINAL : public LTemplateInstruction<0, 1, 1> { |
public: |
LCheckInstanceType(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -2436,7 +2455,7 @@ class LCheckInstanceType: public LTemplateInstruction<0, 1, 1> { |
}; |
-class LCheckMaps: public LTemplateInstruction<0, 1, 0> { |
+class LCheckMaps V8_FINAL : public LTemplateInstruction<0, 1, 0> { |
public: |
explicit LCheckMaps(LOperand* value) { |
inputs_[0] = value; |
@@ -2449,7 +2468,7 @@ class LCheckMaps: public LTemplateInstruction<0, 1, 0> { |
}; |
-class LCheckSmi: public LTemplateInstruction<1, 1, 0> { |
+class LCheckSmi V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LCheckSmi(LOperand* value) { |
inputs_[0] = value; |
@@ -2461,7 +2480,7 @@ class LCheckSmi: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LClampDToUint8: public LTemplateInstruction<1, 1, 0> { |
+class LClampDToUint8 V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LClampDToUint8(LOperand* value) { |
inputs_[0] = value; |
@@ -2473,7 +2492,7 @@ class LClampDToUint8: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LClampIToUint8: public LTemplateInstruction<1, 1, 0> { |
+class LClampIToUint8 V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LClampIToUint8(LOperand* value) { |
inputs_[0] = value; |
@@ -2485,7 +2504,7 @@ class LClampIToUint8: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LClampTToUint8: public LTemplateInstruction<1, 1, 1> { |
+class LClampTToUint8 V8_FINAL : public LTemplateInstruction<1, 1, 1> { |
public: |
LClampTToUint8(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
@@ -2499,7 +2518,7 @@ class LClampTToUint8: public LTemplateInstruction<1, 1, 1> { |
// Truncating conversion from a tagged value to an int32. |
-class LClampTToUint8NoSSE2: public LTemplateInstruction<1, 1, 3> { |
+class LClampTToUint8NoSSE2 V8_FINAL : public LTemplateInstruction<1, 1, 3> { |
public: |
LClampTToUint8NoSSE2(LOperand* unclamped, |
LOperand* temp1, |
@@ -2522,7 +2541,7 @@ class LClampTToUint8NoSSE2: public LTemplateInstruction<1, 1, 3> { |
}; |
-class LCheckNonSmi: public LTemplateInstruction<0, 1, 0> { |
+class LCheckNonSmi V8_FINAL : public LTemplateInstruction<0, 1, 0> { |
public: |
explicit LCheckNonSmi(LOperand* value) { |
inputs_[0] = value; |
@@ -2535,7 +2554,7 @@ class LCheckNonSmi: public LTemplateInstruction<0, 1, 0> { |
}; |
-class LAllocate: public LTemplateInstruction<1, 2, 1> { |
+class LAllocate V8_FINAL : public LTemplateInstruction<1, 2, 1> { |
public: |
LAllocate(LOperand* context, LOperand* size, LOperand* temp) { |
inputs_[0] = context; |
@@ -2552,7 +2571,7 @@ class LAllocate: public LTemplateInstruction<1, 2, 1> { |
}; |
-class LRegExpLiteral: public LTemplateInstruction<1, 1, 0> { |
+class LRegExpLiteral V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LRegExpLiteral(LOperand* context) { |
inputs_[0] = context; |
@@ -2565,7 +2584,7 @@ class LRegExpLiteral: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LFunctionLiteral: public LTemplateInstruction<1, 1, 0> { |
+class LFunctionLiteral V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LFunctionLiteral(LOperand* context) { |
inputs_[0] = context; |
@@ -2578,7 +2597,7 @@ class LFunctionLiteral: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LToFastProperties: public LTemplateInstruction<1, 1, 0> { |
+class LToFastProperties V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LToFastProperties(LOperand* value) { |
inputs_[0] = value; |
@@ -2591,7 +2610,7 @@ class LToFastProperties: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LTypeof: public LTemplateInstruction<1, 2, 0> { |
+class LTypeof V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LTypeof(LOperand* context, LOperand* value) { |
inputs_[0] = context; |
@@ -2605,7 +2624,7 @@ class LTypeof: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LTypeofIsAndBranch: public LControlInstruction<1, 0> { |
+class LTypeofIsAndBranch V8_FINAL : public LControlInstruction<1, 0> { |
public: |
explicit LTypeofIsAndBranch(LOperand* value) { |
inputs_[0] = value; |
@@ -2618,20 +2637,20 @@ class LTypeofIsAndBranch: public LControlInstruction<1, 0> { |
Handle<String> type_literal() { return hydrogen()->type_literal(); } |
- virtual void PrintDataTo(StringStream* stream); |
+ virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
}; |
-class LOsrEntry: public LTemplateInstruction<0, 0, 0> { |
+class LOsrEntry V8_FINAL : public LTemplateInstruction<0, 0, 0> { |
public: |
- LOsrEntry() {} |
- |
- virtual bool HasInterestingComment(LCodeGen* gen) const { return false; } |
+ virtual bool HasInterestingComment(LCodeGen* gen) const V8_OVERRIDE { |
+ return false; |
+ } |
DECLARE_CONCRETE_INSTRUCTION(OsrEntry, "osr-entry") |
}; |
-class LStackCheck: public LTemplateInstruction<0, 1, 0> { |
+class LStackCheck V8_FINAL : public LTemplateInstruction<0, 1, 0> { |
public: |
explicit LStackCheck(LOperand* context) { |
inputs_[0] = context; |
@@ -2649,7 +2668,7 @@ class LStackCheck: public LTemplateInstruction<0, 1, 0> { |
}; |
-class LForInPrepareMap: public LTemplateInstruction<1, 2, 0> { |
+class LForInPrepareMap V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LForInPrepareMap(LOperand* context, LOperand* object) { |
inputs_[0] = context; |
@@ -2663,7 +2682,7 @@ class LForInPrepareMap: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LForInCacheArray: public LTemplateInstruction<1, 1, 0> { |
+class LForInCacheArray V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LForInCacheArray(LOperand* map) { |
inputs_[0] = map; |
@@ -2679,7 +2698,7 @@ class LForInCacheArray: public LTemplateInstruction<1, 1, 0> { |
}; |
-class LCheckMapValue: public LTemplateInstruction<0, 2, 0> { |
+class LCheckMapValue V8_FINAL : public LTemplateInstruction<0, 2, 0> { |
public: |
LCheckMapValue(LOperand* value, LOperand* map) { |
inputs_[0] = value; |
@@ -2693,7 +2712,7 @@ class LCheckMapValue: public LTemplateInstruction<0, 2, 0> { |
}; |
-class LLoadFieldByIndex: public LTemplateInstruction<1, 2, 0> { |
+class LLoadFieldByIndex V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LLoadFieldByIndex(LOperand* object, LOperand* index) { |
inputs_[0] = object; |
@@ -2708,7 +2727,7 @@ class LLoadFieldByIndex: public LTemplateInstruction<1, 2, 0> { |
class LChunkBuilder; |
-class LPlatformChunk: public LChunk { |
+class LPlatformChunk V8_FINAL : public LChunk { |
public: |
LPlatformChunk(CompilationInfo* info, HGraph* graph) |
: LChunk(info, graph), |
@@ -2724,7 +2743,7 @@ class LPlatformChunk: public LChunk { |
}; |
-class LChunkBuilder BASE_EMBEDDED { |
+class LChunkBuilder V8_FINAL BASE_EMBEDDED { |
public: |
LChunkBuilder(CompilationInfo* info, HGraph* graph, LAllocator* allocator) |
: chunk_(NULL), |