| Index: src/hydrogen-instructions.h
|
| ===================================================================
|
| --- src/hydrogen-instructions.h (revision 7299)
|
| +++ src/hydrogen-instructions.h (working copy)
|
| @@ -127,6 +127,7 @@
|
| V(LoadKeyedGeneric) \
|
| V(LoadNamedField) \
|
| V(LoadNamedGeneric) \
|
| + V(LoadNamedFieldPolymorphic) \
|
| V(LoadPixelArrayElement) \
|
| V(Mod) \
|
| V(Mul) \
|
| @@ -2971,6 +2972,35 @@
|
| };
|
|
|
|
|
| +class HLoadNamedFieldPolymorphic: public HUnaryOperation {
|
| + public:
|
| + HLoadNamedFieldPolymorphic(HValue* object,
|
| + ZoneMapList* types,
|
| + Handle<String> name);
|
| +
|
| + HValue* object() { return OperandAt(0); }
|
| + ZoneMapList* types() { return &types_; }
|
| + Handle<String> name() { return name_; }
|
| + bool need_generic() { return need_generic_; }
|
| +
|
| + virtual Representation RequiredInputRepresentation(int index) const {
|
| + return Representation::Tagged();
|
| + }
|
| +
|
| + DECLARE_CONCRETE_INSTRUCTION(LoadNamedFieldPolymorphic,
|
| + "load_named_field_polymorphic")
|
| +
|
| + protected:
|
| + virtual bool DataEquals(HValue* value);
|
| +
|
| + private:
|
| + ZoneMapList types_;
|
| + Handle<String> name_;
|
| + bool need_generic_;
|
| +};
|
| +
|
| +
|
| +
|
| class HLoadNamedGeneric: public HBinaryOperation {
|
| public:
|
| HLoadNamedGeneric(HValue* context, HValue* object, Handle<Object> name)
|
|
|