| Index: src/ia32/lithium-ia32.h
|
| ===================================================================
|
| --- src/ia32/lithium-ia32.h (revision 7622)
|
| +++ src/ia32/lithium-ia32.h (working copy)
|
| @@ -107,6 +107,7 @@
|
| V(InstanceOfAndBranch) \
|
| V(InstanceOfKnownGlobal) \
|
| V(Integer32ToDouble) \
|
| + V(InvokeFunction) \
|
| V(IsNull) \
|
| V(IsNullAndBranch) \
|
| V(IsObject) \
|
| @@ -1452,6 +1453,25 @@
|
| };
|
|
|
|
|
| +class LInvokeFunction: public LTemplateInstruction<1, 2, 0> {
|
| + public:
|
| + LInvokeFunction(LOperand* context, LOperand* function) {
|
| + inputs_[0] = context;
|
| + inputs_[1] = function;
|
| + }
|
| +
|
| + DECLARE_CONCRETE_INSTRUCTION(InvokeFunction, "invoke-function")
|
| + DECLARE_HYDROGEN_ACCESSOR(InvokeFunction)
|
| +
|
| + LOperand* context() { return inputs_[0]; }
|
| + LOperand* function() { return inputs_[1]; }
|
| +
|
| + virtual void PrintDataTo(StringStream* stream);
|
| +
|
| + int arity() const { return hydrogen()->argument_count() - 1; }
|
| +};
|
| +
|
| +
|
| class LCallKeyed: public LTemplateInstruction<1, 2, 0> {
|
| public:
|
| LCallKeyed(LOperand* context, LOperand* key) {
|
|
|