Changeset 36401 in webkit for trunk/JavaScriptCore/masm


Ignore:
Timestamp:
Sep 14, 2008, 1:18:49 AM (17 years ago)
Author:
[email protected]
Message:

Bug 20821: Cache property transitions to speed up object initialization
https://bugs.webkit.org/show_bug.cgi?id=20821

Reviewed by Cameron Zwarich.

Implement a transition cache to improve the performance of new properties
being added to objects. This is extremely beneficial in constructors and
shows up as a 34% improvement on access-binary-trees in SunSpider (0.8%
overall)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/masm/X86Assembler.h

    r36327 r36401  
    292292    }
    293293
     294    void addl_i8m(int imm, void* addr)
     295    {
     296        m_buffer->putByte(OP_GROUP1_EvIb);
     297        emitModRm_opm(GROUP1_OP_ADD, addr);
     298        m_buffer->putByte(imm);
     299    }
     300
    294301    void addl_i32r(int imm, RegisterID dst)
    295302    {
     
    395402        m_buffer->putByte(OP_GROUP1_EvIb);
    396403        emitModRm_opr(GROUP1_OP_SUB, dst);
     404        m_buffer->putByte(imm);
     405    }
     406   
     407    void subl_i8m(int imm, void* addr)
     408    {
     409        m_buffer->putByte(OP_GROUP1_EvIb);
     410        emitModRm_opm(GROUP1_OP_SUB, addr);
    397411        m_buffer->putByte(imm);
    398412    }
Note: See TracChangeset for help on using the changeset viewer.