Ignore:
Timestamp:
Sep 21, 2011, 11:33:43 AM (14 years ago)
Author:
[email protected]
Message:

MacroAssembler fixes.
https://bugs.webkit.org/show_bug.cgi?id=68494

Reviewed by Sam Weinig.

Add X86-64's 3 operand or32 to other MacroAssembler, fix load32's [const] void* mismatch

  • assembler/MacroAssembler.h:

(JSC::MacroAssembler::orPtr):
(JSC::MacroAssembler::loadPtr):

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::or32):

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::or32):

  • assembler/MacroAssemblerMIPS.h:

(JSC::MacroAssemblerMIPS::or32):

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::or32):
(JSC::MacroAssemblerSH4::load32):

  • assembler/MacroAssemblerX86.h:

(JSC::MacroAssemblerX86::load32):

  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::load32):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/assembler/MacroAssemblerSH4.h

    r94981 r95652  
    222222    }
    223223
     224    void or32(RegisterID op1, RegisterID op2, RegisterID dest)
     225    {
     226        if (op1 == op2)
     227            move(op1, dest);
     228        else if (op1 == dest)
     229            or32(op2, dest);
     230        else {
     231            move(op2, dest);
     232            or32(op1, dest);
     233        }
     234    }
     235
    224236    void rshift32(RegisterID shiftamount, RegisterID dest)
    225237    {
     
    530542    }
    531543
    532     void load32(void* address, RegisterID dest)
    533     {
    534         m_assembler.loadConstant(reinterpret_cast<uint32_t>(address), dest);
     544    void load32(const void* address, RegisterID dest)
     545    {
     546        m_assembler.loadConstant(reinterpret_cast<uint32_t>(const_cast<void*>(address)), dest);
    535547        m_assembler.movlMemReg(dest, dest);
    536548    }
Note: See TracChangeset for help on using the changeset viewer.