Ignore:
Timestamp:
Aug 18, 2010, 3:02:47 AM (15 years ago)
Author:
[email protected]
Message:

2010-08-18 Gabor Loki <[email protected]>

Reviewed by Gavin Barraclough.

The JITStackFrame is wrong using Thumb-2 JIT with JSVALUE32_64
https://bugs.webkit.org/show_bug.cgi?id=43897

A 64 bits wide member in a structure is aligned to 8 bytes on ARM by
default, but this is not taken into account in the offset defines of
JITStackFrame.

  • jit/JITStubs.cpp:
  • jit/JITStubs.h:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/jit/JITStubs.cpp

    r65588 r65596  
    231231#elif COMPILER(GCC) && CPU(ARM_THUMB2)
    232232
    233 #define THUNK_RETURN_ADDRESS_OFFSET      0x3C
    234 #define PRESERVED_RETURN_ADDRESS_OFFSET  0x40
    235 #define PRESERVED_R4_OFFSET              0x44
    236 #define PRESERVED_R5_OFFSET              0x48
    237 #define PRESERVED_R6_OFFSET              0x4C
    238 #define REGISTER_FILE_OFFSET             0x50
    239 #define CALLFRAME_OFFSET                 0x54
    240 #define EXCEPTION_OFFSET                 0x58
    241 #define ENABLE_PROFILER_REFERENCE_OFFSET 0x60
     233#define THUNK_RETURN_ADDRESS_OFFSET      0x40
     234#define PRESERVED_RETURN_ADDRESS_OFFSET  0x44
     235#define PRESERVED_R4_OFFSET              0x48
     236#define PRESERVED_R5_OFFSET              0x4C
     237#define PRESERVED_R6_OFFSET              0x50
     238#define REGISTER_FILE_OFFSET             0x54
     239#define CALLFRAME_OFFSET                 0x58
     240#define EXCEPTION_OFFSET                 0x5C
     241#define ENABLE_PROFILER_REFERENCE_OFFSET 0x64
    242242
    243243#elif (COMPILER(GCC) || COMPILER(RVCT)) && CPU(ARM_TRADITIONAL)
Note: See TracChangeset for help on using the changeset viewer.