diff options
Diffstat (limited to 'chromium/v8/src/hydrogen.h')
-rw-r--r-- | chromium/v8/src/hydrogen.h | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/chromium/v8/src/hydrogen.h b/chromium/v8/src/hydrogen.h index 004aa16a878..20dc1a3e0ec 100644 --- a/chromium/v8/src/hydrogen.h +++ b/chromium/v8/src/hydrogen.h @@ -368,7 +368,7 @@ class HGraph: public ZoneObject { return NULL; } - bool Optimize(BailoutReason* bailout_reason); + bool Optimize(SmartArrayPointer<char>* bailout_reason); #ifdef DEBUG void Verify(bool do_full_verify) const; @@ -1266,8 +1266,7 @@ class HGraphBuilder { void PushAndAdd(HInstruction* instr); - void FinishExitWithHardDeoptimization(const char* reason, - HBasicBlock* continuation); + void FinishExitWithHardDeoptimization(HBasicBlock* continuation); void AddIncrementCounter(StatsCounter* counter, HValue* context); @@ -1371,10 +1370,10 @@ class HGraphBuilder { void Else(); void End(); - void Deopt(const char* reason); - void ElseDeopt(const char* reason) { + void Deopt(); + void ElseDeopt() { Else(); - Deopt(reason); + Deopt(); } void Return(HValue* value); @@ -1533,6 +1532,9 @@ class HGraphBuilder { ElementsKind kind, int length); + HInstruction* BuildUnaryMathOp( + HValue* value, Handle<Type> type, Token::Value token); + void BuildCompareNil( HValue* value, Handle<Type> type, @@ -1543,10 +1545,6 @@ class HGraphBuilder { int previous_object_size, HValue* payload); - void BuildConstantMapCheck(Handle<JSObject> constant, CompilationInfo* info); - void BuildCheckPrototypeMaps(Handle<JSObject> prototype, - Handle<JSObject> holder); - HInstruction* BuildGetNativeContext(); HInstruction* BuildGetArrayFunction(); @@ -1564,13 +1562,13 @@ class HGraphBuilder { template<> inline HInstruction* HGraphBuilder::AddUncasted<HDeoptimize>( - const char* reason, Deoptimizer::BailoutType type) { + Deoptimizer::BailoutType type) { if (type == Deoptimizer::SOFT) { isolate()->counters()->soft_deopts_requested()->Increment(); if (FLAG_always_opt) return NULL; } if (current_block()->IsDeoptimizing()) return NULL; - HDeoptimize* instr = New<HDeoptimize>(reason, type); + HDeoptimize* instr = New<HDeoptimize>(type); AddInstruction(instr); if (type == Deoptimizer::SOFT) { isolate()->counters()->soft_deopts_inserted()->Increment(); @@ -1583,8 +1581,8 @@ inline HInstruction* HGraphBuilder::AddUncasted<HDeoptimize>( template<> inline HDeoptimize* HGraphBuilder::Add<HDeoptimize>( - const char* reason, Deoptimizer::BailoutType type) { - return static_cast<HDeoptimize*>(AddUncasted<HDeoptimize>(reason, type)); + Deoptimizer::BailoutType type) { + return static_cast<HDeoptimize*>(AddUncasted<HDeoptimize>(type)); } @@ -1709,7 +1707,7 @@ class HOptimizedGraphBuilder: public HGraphBuilder, public AstVisitor { HValue* context() { return environment()->context(); } - void Bailout(BailoutReason reason); + void Bailout(const char* reason); HBasicBlock* CreateJoin(HBasicBlock* first, HBasicBlock* second, @@ -1790,6 +1788,8 @@ class HOptimizedGraphBuilder: public HGraphBuilder, public AstVisitor { void VisitDelete(UnaryOperation* expr); void VisitVoid(UnaryOperation* expr); void VisitTypeof(UnaryOperation* expr); + void VisitSub(UnaryOperation* expr); + void VisitBitNot(UnaryOperation* expr); void VisitNot(UnaryOperation* expr); void VisitComma(BinaryOperation* expr); |