| Index: src/hydrogen-instructions.h
|
| diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h
|
| index 733347b5b5fc87a07f0f0630be20d30df21418ab..4aad5fec49d4bc67e5a2ccacfc22ca995cece80c 100644
|
| --- a/src/hydrogen-instructions.h
|
| +++ b/src/hydrogen-instructions.h
|
| @@ -4324,12 +4324,10 @@ class HIsConstructCallAndBranch : public HTemplateControlInstruction<2, 0> {
|
|
|
| class HHasInstanceTypeAndBranch V8_FINAL : public HUnaryControlInstruction {
|
| public:
|
| - HHasInstanceTypeAndBranch(HValue* value, InstanceType type)
|
| - : HUnaryControlInstruction(value, NULL, NULL), from_(type), to_(type) { }
|
| - HHasInstanceTypeAndBranch(HValue* value, InstanceType from, InstanceType to)
|
| - : HUnaryControlInstruction(value, NULL, NULL), from_(from), to_(to) {
|
| - ASSERT(to == LAST_TYPE); // Others not implemented yet in backend.
|
| - }
|
| + DECLARE_INSTRUCTION_FACTORY_P2(
|
| + HHasInstanceTypeAndBranch, HValue*, InstanceType);
|
| + DECLARE_INSTRUCTION_FACTORY_P3(
|
| + HHasInstanceTypeAndBranch, HValue*, InstanceType, InstanceType);
|
|
|
| InstanceType from() { return from_; }
|
| InstanceType to() { return to_; }
|
| @@ -4343,6 +4341,13 @@ class HHasInstanceTypeAndBranch V8_FINAL : public HUnaryControlInstruction {
|
| DECLARE_CONCRETE_INSTRUCTION(HasInstanceTypeAndBranch)
|
|
|
| private:
|
| + HHasInstanceTypeAndBranch(HValue* value, InstanceType type)
|
| + : HUnaryControlInstruction(value, NULL, NULL), from_(type), to_(type) { }
|
| + HHasInstanceTypeAndBranch(HValue* value, InstanceType from, InstanceType to)
|
| + : HUnaryControlInstruction(value, NULL, NULL), from_(from), to_(to) {
|
| + ASSERT(to == LAST_TYPE); // Others not implemented yet in backend.
|
| + }
|
| +
|
| InstanceType from_;
|
| InstanceType to_; // Inclusive range, not all combinations work.
|
| };
|
|
|