Index: src/x64/lithium-x64.h |
=================================================================== |
--- src/x64/lithium-x64.h (revision 9531) |
+++ src/x64/lithium-x64.h (working copy) |
@@ -107,7 +107,7 @@ |
V(Integer32ToDouble) \ |
V(InvokeFunction) \ |
V(IsConstructCallAndBranch) \ |
- V(IsNullAndBranch) \ |
+ V(IsNilAndBranch) \ |
V(IsObjectAndBranch) \ |
V(IsSmiAndBranch) \ |
V(IsUndetectableAndBranch) \ |
@@ -609,17 +609,18 @@ |
}; |
-class LIsNullAndBranch: public LControlInstruction<1, 1> { |
+class LIsNilAndBranch: public LControlInstruction<1, 1> { |
public: |
- LIsNullAndBranch(LOperand* value, LOperand* temp) { |
+ LIsNilAndBranch(LOperand* value, LOperand* temp) { |
inputs_[0] = value; |
temps_[0] = temp; |
} |
- DECLARE_CONCRETE_INSTRUCTION(IsNullAndBranch, "is-null-and-branch") |
- DECLARE_HYDROGEN_ACCESSOR(IsNullAndBranch) |
+ DECLARE_CONCRETE_INSTRUCTION(IsNilAndBranch, "is-nil-and-branch") |
+ DECLARE_HYDROGEN_ACCESSOR(IsNilAndBranch) |
- bool is_strict() const { return hydrogen()->is_strict(); } |
+ EqualityKind kind() const { return hydrogen()->kind(); } |
+ NilValue nil() const { return hydrogen()->nil(); } |
virtual void PrintDataTo(StringStream* stream); |
}; |
@@ -705,11 +706,12 @@ |
}; |
-class LClassOfTestAndBranch: public LControlInstruction<1, 1> { |
+class LClassOfTestAndBranch: public LControlInstruction<1, 2> { |
public: |
- LClassOfTestAndBranch(LOperand* value, LOperand* temp) { |
+ LClassOfTestAndBranch(LOperand* value, LOperand* temp, LOperand* temp2) { |
inputs_[0] = value; |
temps_[0] = temp; |
+ temps_[1] = temp2; |
} |
DECLARE_CONCRETE_INSTRUCTION(ClassOfTestAndBranch, |
@@ -1197,11 +1199,12 @@ |
}; |
-class LStoreGlobalCell: public LTemplateInstruction<0, 1, 1> { |
+class LStoreGlobalCell: public LTemplateInstruction<0, 1, 2> { |
public: |
- explicit LStoreGlobalCell(LOperand* value, LOperand* temp) { |
+ explicit LStoreGlobalCell(LOperand* value, LOperand* temp1, LOperand* temp2) { |
inputs_[0] = value; |
- temps_[0] = temp; |
+ temps_[0] = temp1; |
+ temps_[1] = temp2; |
} |
DECLARE_CONCRETE_INSTRUCTION(StoreGlobalCell, "store-global-cell") |
@@ -2146,7 +2149,8 @@ |
LInstruction* instr, int ast_id); |
void ClearInstructionPendingDeoptimizationEnvironment(); |
- LEnvironment* CreateEnvironment(HEnvironment* hydrogen_env); |
+ LEnvironment* CreateEnvironment(HEnvironment* hydrogen_env, |
+ int* argument_index_accumulator); |
void VisitInstruction(HInstruction* current); |