Ignore:
Timestamp:
Jul 11, 2011, 5:32:18 AM (14 years ago)
Author:
[email protected]
Message:

Fix the condition of the optimized code in doubleTransfer
https://bugs.webkit.org/show_bug.cgi?id=64261

Reviewed by Zoltan Herczeg.

The condition of the optimized code in doubleTransfer is wrong. The
data transfer should be executed with four bytes aligned address.
VFP cannot perform unaligned memory access.

Reported by Jacob Bramley.

  • assembler/ARMAssembler.cpp:

(JSC::ARMAssembler::doubleTransfer):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/assembler/ARMAssembler.cpp

    r90731 r90738  
    314314void ARMAssembler::doubleTransfer(bool isLoad, FPRegisterID srcDst, RegisterID base, int32_t offset)
    315315{
    316     if (offset & 0x3) {
     316    // VFP cannot directly access memory that is not four-byte-aligned
     317    if (!(offset & 0x3)) {
    317318        if (offset <= 0x3ff && offset >= 0) {
    318319            fdtr_u(isLoad, srcDst, base, offset >> 2);
Note: See TracChangeset for help on using the changeset viewer.