Changeset 148134 in webkit


Ignore:
Timestamp:
Apr 10, 2013 1:30:19 PM (11 years ago)
Author:
Patrick Gansterer
Message:

Remove code duplicates from MacroAssemblerARM
https://bugs.webkit.org/show_bug.cgi?id=104457

Reviewed by Oliver Hunt.

Reuse some existing methods to avoid duplicated code.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::store8):
(JSC::MacroAssemblerARM::store32):
(JSC::MacroAssemblerARM::swap):
(JSC::MacroAssemblerARM::add32):
(JSC::MacroAssemblerARM::sub32):

Location:
trunk/Source/JavaScriptCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r148130 r148134  
     12013-04-10  Patrick Gansterer  <paroga@webkit.org>
     2
     3        Remove code duplicates from MacroAssemblerARM
     4        https://bugs.webkit.org/show_bug.cgi?id=104457
     5
     6        Reviewed by Oliver Hunt.
     7
     8        Reuse some existing methods to avoid duplicated code.
     9
     10        * assembler/MacroAssemblerARM.h:
     11        (JSC::MacroAssemblerARM::store8):
     12        (JSC::MacroAssemblerARM::store32):
     13        (JSC::MacroAssemblerARM::swap):
     14        (JSC::MacroAssemblerARM::add32):
     15        (JSC::MacroAssemblerARM::sub32):
     16
    1172013-04-10  Michael Saboff  <msaboff@apple.com>
    218
  • trunk/Source/JavaScriptCore/assembler/MacroAssemblerARM.h

    r146195 r148134  
    452452    }
    453453
    454     void store8(TrustedImm32 imm, void* address)
     454    void store8(TrustedImm32 imm, const void* address)
    455455    {
    456456        move(TrustedImm32(reinterpret_cast<ARMWord>(address)), ARMRegisters::S0);
    457         m_assembler.moveImm(imm.m_value, ARMRegisters::S1);
     457        move(imm, ARMRegisters::S1);
    458458        m_assembler.dtrUp(ARMAssembler::StoreUint8, ARMRegisters::S1, ARMRegisters::S0, 0);
    459459    }
     
    486486    }
    487487
    488     void store32(RegisterID src, void* address)
     488    void store32(RegisterID src, const void* address)
    489489    {
    490490        m_assembler.ldrUniqueImmediate(ARMRegisters::S0, reinterpret_cast<ARMWord>(address));
     
    492492    }
    493493
    494     void store32(TrustedImm32 imm, void* address)
     494    void store32(TrustedImm32 imm, const void* address)
    495495    {
    496496        m_assembler.ldrUniqueImmediate(ARMRegisters::S0, reinterpret_cast<ARMWord>(address));
     
    539539    void swap(RegisterID reg1, RegisterID reg2)
    540540    {
    541         m_assembler.mov(ARMRegisters::S0, reg1);
    542         m_assembler.mov(reg1, reg2);
    543         m_assembler.mov(reg2, ARMRegisters::S0);
     541        move(reg1, ARMRegisters::S0);
     542        move(reg2, reg1);
     543        move(ARMRegisters::S0, reg2);
    544544    }
    545545
     
    892892    void add32(TrustedImm32 imm, AbsoluteAddress address)
    893893    {
    894         m_assembler.ldrUniqueImmediate(ARMRegisters::S1, reinterpret_cast<ARMWord>(address.m_ptr));
    895         m_assembler.dtrUp(ARMAssembler::LoadUint32, ARMRegisters::S1, ARMRegisters::S1, 0);
     894        load32(address.m_ptr, ARMRegisters::S1);
    896895        add32(imm, ARMRegisters::S1);
    897         m_assembler.ldrUniqueImmediate(ARMRegisters::S0, reinterpret_cast<ARMWord>(address.m_ptr));
    898         m_assembler.dtrUp(ARMAssembler::StoreUint32, ARMRegisters::S1, ARMRegisters::S0, 0);
     896        store32(ARMRegisters::S1, address.m_ptr);
    899897    }
    900898
     
    926924    void sub32(TrustedImm32 imm, AbsoluteAddress address)
    927925    {
    928         m_assembler.ldrUniqueImmediate(ARMRegisters::S1, reinterpret_cast<ARMWord>(address.m_ptr));
    929         m_assembler.dtrUp(ARMAssembler::LoadUint32, ARMRegisters::S1, ARMRegisters::S1, 0);
     926        load32(address.m_ptr, ARMRegisters::S1);
    930927        sub32(imm, ARMRegisters::S1);
    931         m_assembler.ldrUniqueImmediate(ARMRegisters::S0, reinterpret_cast<ARMWord>(address.m_ptr));
    932         m_assembler.dtrUp(ARMAssembler::StoreUint32, ARMRegisters::S1, ARMRegisters::S0, 0);
     928        store32(ARMRegisters::S1, address.m_ptr);
    933929    }
    934930
Note: See TracChangeset for help on using the changeset viewer.