summaryrefslogtreecommitdiff
path: root/chromium/v8/src/hydrogen.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/v8/src/hydrogen.h')
-rw-r--r--chromium/v8/src/hydrogen.h30
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);