Changeset 36764 in webkit for trunk/JavaScriptCore/masm


Ignore:
Timestamp:
Sep 22, 2008, 6:59:06 AM (17 years ago)
Author:
[email protected]
Message:

JavaScriptCore:

2008-09-22 Maciej Stachowiak <[email protected]>

Reviewed by Dave Hyatt.


Based on initial work by Darin Adler.


0.5% speedup on SunSpider
~4% speedup on Richards benchmark


  • VM/CTI.cpp: (JSC::CTI::privateCompileMainPass):
  • VM/Machine.cpp: (JSC::jsTypeStringForValue): (JSC::jsIsObjectType): (JSC::Machine::privateExecute): (JSC::Machine::cti_op_is_undefined):
  • VM/Machine.h:
  • kjs/JSCell.h:
  • kjs/JSValue.h:
  • kjs/StringObjectThatMasqueradesAsUndefined.h: (JSC::StringObjectThatMasqueradesAsUndefined::create): (JSC::StringObjectThatMasqueradesAsUndefined::createStructureID):
  • kjs/StructureID.h: (JSC::StructureID::mutableTypeInfo):
  • kjs/TypeInfo.h: (JSC::TypeInfo::TypeInfo): (JSC::TypeInfo::masqueradesAsUndefined):
  • kjs/operations.cpp: (JSC::equal):
  • masm/X86Assembler.h: (JSC::X86Assembler::): (JSC::X86Assembler::setne_r): (JSC::X86Assembler::setnz_r): (JSC::X86Assembler::testl_i32m):

WebCore:

2008-09-22 Maciej Stachowiak <[email protected]>

Reviewed by Dave Hyatt.

Based on initial work by Darin Adler.



  • WebCore.xcodeproj/project.pbxproj:
  • WebCore.vcproj/WebCore.vcproj:
  • bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::nameGetter):
  • bindings/js/JSHTMLAllCollection.cpp: Added. (WebCore::):
  • bindings/js/JSHTMLAllCollection.h: (WebCore::JSHTMLAllCollection::createStructureID): (WebCore::JSHTMLAllCollection::toBoolean):
File:
1 edited

Legend:

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

    r36738 r36764  
    193193        OP_CDQ                          = 0x99,
    194194        OP_SETE                         = 0x94,
     195        OP_SETNE                        = 0x95,
    195196        OP_GROUP2_EvIb                  = 0xC1,
    196197        OP_RET                          = 0xC3,
     
    401402    }
    402403
     404    void setne_r(RegisterID dst)
     405    {
     406        m_buffer->putByte(OP_2BYTE_ESCAPE);
     407        m_buffer->putByte(OP_SETNE);
     408        m_buffer->putByte(MODRM(3, 0, dst));
     409    }
     410
     411    void setnz_r(RegisterID dst)
     412    {
     413        setne_r(dst);
     414    }
     415
    403416    void orl_rr(RegisterID src, RegisterID dst)
    404417    {
     
    453466        emitModRm_opr_Unchecked(GROUP3_OP_TEST, dst);
    454467        m_buffer->putIntUnchecked(imm);
     468    }
     469
     470    void testl_i32m(int imm, RegisterID dst)
     471    {
     472        m_buffer->putByte(OP_GROUP3_EvIz);
     473        emitModRm_opm(GROUP3_OP_TEST, dst);
     474        m_buffer->putInt(imm);
     475    }
     476
     477    void testl_i32m(int imm, int offset, RegisterID dst)
     478    {
     479        m_buffer->putByte(OP_GROUP3_EvIz);
     480        emitModRm_opm(GROUP3_OP_TEST, dst, offset);
     481        m_buffer->putInt(imm);
    455482    }
    456483
Note: See TracChangeset for help on using the changeset viewer.