| Index: src/ia32/lithium-ia32.h
 | 
| ===================================================================
 | 
| --- src/ia32/lithium-ia32.h	(revision 6891)
 | 
| +++ src/ia32/lithium-ia32.h	(working copy)
 | 
| @@ -1581,34 +1581,23 @@
 | 
|  };
 | 
|  
 | 
|  
 | 
| -class LStoreNamed: public LTemplateInstruction<0, 2, 1> {
 | 
| +class LStoreNamedField: public LTemplateInstruction<0, 2, 1> {
 | 
|   public:
 | 
| -  LStoreNamed(LOperand* obj, LOperand* val) {
 | 
| +  LStoreNamedField(LOperand* obj, LOperand* val, LOperand* temp) {
 | 
|      inputs_[0] = obj;
 | 
|      inputs_[1] = val;
 | 
| +    temps_[0] = temp;
 | 
|    }
 | 
|  
 | 
| -  DECLARE_INSTRUCTION(StoreNamed)
 | 
| -  DECLARE_HYDROGEN_ACCESSOR(StoreNamed)
 | 
| +  DECLARE_CONCRETE_INSTRUCTION(StoreNamedField, "store-named-field")
 | 
| +  DECLARE_HYDROGEN_ACCESSOR(StoreNamedField)
 | 
|  
 | 
|    virtual void PrintDataTo(StringStream* stream);
 | 
|  
 | 
|    LOperand* object() { return inputs_[0]; }
 | 
|    LOperand* value() { return inputs_[1]; }
 | 
| -  Handle<Object> name() const { return hydrogen()->name(); }
 | 
| -};
 | 
|  
 | 
| -
 | 
| -class LStoreNamedField: public LStoreNamed {
 | 
| - public:
 | 
| -  LStoreNamedField(LOperand* obj, LOperand* val, LOperand* temp)
 | 
| -      : LStoreNamed(obj, val) {
 | 
| -    temps_[0] = temp;
 | 
| -  }
 | 
| -
 | 
| -  DECLARE_CONCRETE_INSTRUCTION(StoreNamedField, "store-named-field")
 | 
| -  DECLARE_HYDROGEN_ACCESSOR(StoreNamedField)
 | 
| -
 | 
| +  Handle<Object> name() const { return hydrogen()->name(); }
 | 
|    bool is_in_object() { return hydrogen()->is_in_object(); }
 | 
|    int offset() { return hydrogen()->offset(); }
 | 
|    bool needs_write_barrier() { return hydrogen()->NeedsWriteBarrier(); }
 | 
| @@ -1627,6 +1616,8 @@
 | 
|    DECLARE_CONCRETE_INSTRUCTION(StoreNamedGeneric, "store-named-generic")
 | 
|    DECLARE_HYDROGEN_ACCESSOR(StoreNamedGeneric)
 | 
|  
 | 
| +  virtual void PrintDataTo(StringStream* stream);
 | 
| +
 | 
|    LOperand* context() { return inputs_[0]; }
 | 
|    LOperand* object() { return inputs_[1]; }
 | 
|    LOperand* value() { return inputs_[2]; }
 | 
| @@ -1634,15 +1625,17 @@
 | 
|  };
 | 
|  
 | 
|  
 | 
| -class LStoreKeyed: public LTemplateInstruction<0, 3, 0> {
 | 
| +class LStoreKeyedFastElement: public LTemplateInstruction<0, 3, 0> {
 | 
|   public:
 | 
| -  LStoreKeyed(LOperand* obj, LOperand* key, LOperand* val) {
 | 
| +  LStoreKeyedFastElement(LOperand* obj, LOperand* key, LOperand* val) {
 | 
|      inputs_[0] = obj;
 | 
|      inputs_[1] = key;
 | 
|      inputs_[2] = val;
 | 
|    }
 | 
|  
 | 
| -  DECLARE_INSTRUCTION(StoreKeyed)
 | 
| +  DECLARE_CONCRETE_INSTRUCTION(StoreKeyedFastElement,
 | 
| +                               "store-keyed-fast-element")
 | 
| +  DECLARE_HYDROGEN_ACCESSOR(StoreKeyedFastElement)
 | 
|  
 | 
|    virtual void PrintDataTo(StringStream* stream);
 | 
|  
 | 
| @@ -1652,17 +1645,6 @@
 | 
|  };
 | 
|  
 | 
|  
 | 
| -class LStoreKeyedFastElement: public LStoreKeyed {
 | 
| - public:
 | 
| -  LStoreKeyedFastElement(LOperand* obj, LOperand* key, LOperand* val)
 | 
| -      : LStoreKeyed(obj, key, val) {}
 | 
| -
 | 
| -  DECLARE_CONCRETE_INSTRUCTION(StoreKeyedFastElement,
 | 
| -                               "store-keyed-fast-element")
 | 
| -  DECLARE_HYDROGEN_ACCESSOR(StoreKeyedFastElement)
 | 
| -};
 | 
| -
 | 
| -
 | 
|  class LStorePixelArrayElement: public LTemplateInstruction<0, 3, 1> {
 | 
|   public:
 | 
|    LStorePixelArrayElement(LOperand* external_pointer,
 | 
| @@ -1699,6 +1681,8 @@
 | 
|  
 | 
|    DECLARE_CONCRETE_INSTRUCTION(StoreKeyedGeneric, "store-keyed-generic")
 | 
|  
 | 
| +  virtual void PrintDataTo(StringStream* stream);
 | 
| +
 | 
|    LOperand* context() { return inputs_[0]; }
 | 
|    LOperand* object() { return inputs_[1]; }
 | 
|    LOperand* key() { return inputs_[2]; }
 | 
| 
 |