Ignore:
Timestamp:
Mar 26, 2012, 7:03:47 PM (13 years ago)
Author:
[email protected]
Message:

Unaligned userspace access for SH4 platforms
https://bugs.webkit.org/show_bug.cgi?id=79104

Patch by Thouraya ANDOLSI <[email protected]> on 2012-03-26
Reviewed by Gavin Barraclough.

  • assembler/AbstractMacroAssembler.h:

(Jump):
(JSC::AbstractMacroAssembler::Jump::Jump):
(JSC::AbstractMacroAssembler::Jump::link):

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::load16Unaligned):
(JSC::MacroAssemblerSH4::load32WithUnalignedHalfWords):
(JSC::MacroAssemblerSH4::branchDouble):
(JSC::MacroAssemblerSH4::branchTrue):
(JSC::MacroAssemblerSH4::branchFalse):

  • assembler/SH4Assembler.h:

(JSC::SH4Assembler::extraInstrForBranch):
(SH4Assembler):
(JSC::SH4Assembler::bra):
(JSC::SH4Assembler::linkJump):

  • jit/JIT.h:

(JIT):

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::generatePatternCharacterOnce):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/yarr/YarrJIT.cpp

    r112143 r112192  
    730730            case 2: {
    731731                BaseIndex address(input, index, TimesOne, (startTermPosition - m_checked) * sizeof(LChar));
    732                 load16(address, character);
     732                load16Unaligned(address, character);
    733733                break;
    734734            }
    735735            case 3: {
    736736                BaseIndex highAddress(input, index, TimesOne, (startTermPosition - m_checked) * sizeof(LChar));
    737                 load16(highAddress, character);
     737                load16Unaligned(highAddress, character);
    738738                if (ignoreCaseMask)
    739739                    or32(Imm32(ignoreCaseMask), character);
Note: See TracChangeset for help on using the changeset viewer.