Index: src/arm/lithium-arm.h |
diff --git a/src/arm/lithium-arm.h b/src/arm/lithium-arm.h |
index 35ed67d6e746f49758f6033207def8f675f9f335..3d144d306a70100004a25b1c823ac293a16f1fe5 100644 |
--- a/src/arm/lithium-arm.h |
+++ b/src/arm/lithium-arm.h |
@@ -177,7 +177,8 @@ class LCodeGen; |
V(ForInPrepareMap) \ |
V(ForInCacheArray) \ |
V(CheckMapValue) \ |
- V(LoadFieldByIndex) |
+ V(LoadFieldByIndex) \ |
+ V(WrapReceiver) |
@@ -468,6 +469,20 @@ class LControlInstruction: public LTemplateInstruction<0, I, T> { |
}; |
+class LWrapReceiver: public LTemplateInstruction<1, 2, 0> { |
+ public: |
+ LWrapReceiver(LOperand* receiver, LOperand* function) { |
+ inputs_[0] = receiver; |
+ inputs_[1] = function; |
+ } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(WrapReceiver, "wrap-receiver") |
+ |
+ LOperand* receiver() { return inputs_[0]; } |
+ LOperand* function() { return inputs_[1]; } |
+}; |
+ |
+ |
class LApplyArguments: public LTemplateInstruction<1, 4, 0> { |
public: |
LApplyArguments(LOperand* function, |