Changeset 64618 in webkit


Ignore:
Timestamp:
Aug 3, 2010 7:32:10 PM (14 years ago)
Author:
eric@webkit.org
Message:

2010-08-03 Patrick Gansterer <paroga@paroga.com>

Reviewed by Gavin Barraclough.

Implement DEFINE_STUB_FUNCTION for WinCE.
https://bugs.webkit.org/show_bug.cgi?id=34953

  • jit/JITStubs.cpp: (JSC::): (JSC::DEFINE_STUB_FUNCTION):
Location:
trunk/JavaScriptCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/ChangeLog

    r64608 r64618  
     12010-08-03  Patrick Gansterer  <paroga@paroga.com>
     2
     3        Reviewed by Gavin Barraclough.
     4
     5        Implement DEFINE_STUB_FUNCTION for WinCE.
     6        https://bugs.webkit.org/show_bug.cgi?id=34953
     7
     8        * jit/JITStubs.cpp:
     9        (JSC::):
     10        (JSC::DEFINE_STUB_FUNCTION):
     11
    1122010-08-02  Gavin Barraclough  <barraclough@apple.com>
    213
  • trunk/JavaScriptCore/jit/JITStubs.cpp

    r64608 r64618  
    304304    }
    305305}
     306
     307#elif COMPILER(MSVC) && CPU(ARM_TRADITIONAL)
     308
     309#define THUNK_RETURN_ADDRESS_OFFSET 64
     310#define PRESERVEDR4_OFFSET          68
     311// See DEFINE_STUB_FUNCTION for more information.
    306312
    307313#else
     
    650656}
    651657
     658#elif COMPILER(MSVC) && CPU(ARM_TRADITIONAL)
     659
     660#define THUNK_RETURN_ADDRESS_OFFSET 32
     661#define PRESERVEDR4_OFFSET          36
     662// See DEFINE_STUB_FUNCTION for more information.
     663
    652664#else
    653665    #error "JIT not supported on this platform."
     
    11361148/* Include the generated file */
    11371149#include "GeneratedJITStubs_RVCT.h"
     1150
     1151#elif CPU(ARM_TRADITIONAL) && COMPILER(MSVC)
     1152
     1153#define DEFINE_STUB_FUNCTION(rtype, op) extern "C" rtype JITStubThunked_##op(STUB_ARGS_DECLARATION)
     1154
     1155/* The following is a workaround for MSVC toolchain; inline assembler is not supported */
     1156
     1157/* The following section is a template to generate code for GeneratedJITStubs_MSVC.asm */
     1158/* The pattern "#xxx#" will be replaced with "xxx" */
     1159
     1160/*
     1161MSVC_BEGIN(    AREA Trampoline, CODE)
     1162MSVC_BEGIN()
     1163MSVC_BEGIN(    EXPORT ctiTrampoline)
     1164MSVC_BEGIN(    EXPORT ctiVMThrowTrampoline)
     1165MSVC_BEGIN(    EXPORT ctiOpThrowNotCaught)
     1166MSVC_BEGIN()
     1167MSVC_BEGIN(ctiTrampoline PROC)
     1168MSVC_BEGIN(    stmdb sp!, {r1-r3})
     1169MSVC_BEGIN(    stmdb sp!, {r4-r8, lr})
     1170MSVC_BEGIN(    sub sp, sp, ##offset#+4)
     1171MSVC_BEGIN(    mov r4, r2)
     1172MSVC_BEGIN(    mov r5, #512)
     1173MSVC_BEGIN(    ; r0 contains the code)
     1174MSVC_BEGIN(    mov lr, pc)
     1175MSVC_BEGIN(    bx r0)
     1176MSVC_BEGIN(    add sp, sp, ##offset#+4)
     1177MSVC_BEGIN(    ldmia sp!, {r4-r8, lr})
     1178MSVC_BEGIN(    add sp, sp, #12)
     1179MSVC_BEGIN(    bx lr)
     1180MSVC_BEGIN(ctiTrampoline ENDP)
     1181MSVC_BEGIN()
     1182MSVC_BEGIN(ctiVMThrowTrampoline PROC)
     1183MSVC_BEGIN(    mov r0, sp)
     1184MSVC_BEGIN(    mov lr, pc)
     1185MSVC_BEGIN(    bl cti_vm_throw)
     1186MSVC_BEGIN(ctiOpThrowNotCaught)
     1187MSVC_BEGIN(    add sp, sp, ##offset#+4)
     1188MSVC_BEGIN(    ldmia sp!, {r4-r8, lr})
     1189MSVC_BEGIN(    add sp, sp, #12)
     1190MSVC_BEGIN(    bx lr)
     1191MSVC_BEGIN(ctiVMThrowTrampoline ENDP)
     1192MSVC_BEGIN()
     1193
     1194MSVC(    EXPORT cti_#op#)
     1195MSVC(    IMPORT JITStubThunked_#op#)
     1196MSVC(cti_#op# PROC)
     1197MSVC(    str lr, [sp, ##offset#])
     1198MSVC(    bl JITStubThunked_#op#)
     1199MSVC(    ldr lr, [sp, ##offset#])
     1200MSVC(    bx lr)
     1201MSVC(cti_#op# ENDP)
     1202MSVC()
     1203
     1204MSVC_END(    END)
     1205*/
    11381206
    11391207#else
Note: See TracChangeset for help on using the changeset viewer.