| Index: src/x64/assembler-x64.h
 | 
| ===================================================================
 | 
| --- src/x64/assembler-x64.h	(revision 9531)
 | 
| +++ src/x64/assembler-x64.h	(working copy)
 | 
| @@ -215,6 +215,12 @@
 | 
|      return names[index];
 | 
|    }
 | 
|  
 | 
| +  static XMMRegister from_code(int code) {
 | 
| +    ASSERT(code >= 0);
 | 
| +    ASSERT(code < kNumRegisters);
 | 
| +    XMMRegister r = { code };
 | 
| +    return r;
 | 
| +  }
 | 
|    bool is_valid() const { return 0 <= code_ && code_ < kNumRegisters; }
 | 
|    bool is(XMMRegister reg) const { return code_ == reg.code_; }
 | 
|    int code() const {
 | 
| @@ -735,6 +741,10 @@
 | 
|      immediate_arithmetic_op_32(0x0, dst, src);
 | 
|    }
 | 
|  
 | 
| +  void addl(const Operand& dst, Register src) {
 | 
| +    arithmetic_op_32(0x01, src, dst);
 | 
| +  }
 | 
| +
 | 
|    void addq(Register dst, Register src) {
 | 
|      arithmetic_op(0x03, dst, src);
 | 
|    }
 | 
| @@ -1394,13 +1404,14 @@
 | 
|    static const int kMaximalBufferSize = 512*MB;
 | 
|    static const int kMinimalBufferSize = 4*KB;
 | 
|  
 | 
| +  byte byte_at(int pos)  { return buffer_[pos]; }
 | 
| +  void set_byte_at(int pos, byte value) { buffer_[pos] = value; }
 | 
| +
 | 
|   protected:
 | 
|    bool emit_debug_code() const { return emit_debug_code_; }
 | 
|  
 | 
|   private:
 | 
|    byte* addr_at(int pos)  { return buffer_ + pos; }
 | 
| -  byte byte_at(int pos)  { return buffer_[pos]; }
 | 
| -  void set_byte_at(int pos, byte value) { buffer_[pos] = value; }
 | 
|    uint32_t long_at(int pos)  {
 | 
|      return *reinterpret_cast<uint32_t*>(addr_at(pos));
 | 
|    }
 | 
| 
 |