Changeset 58167 in webkit for trunk/JavaScriptCore


Ignore:
Timestamp:
Apr 23, 2010, 8:38:43 AM (15 years ago)
Author:
[email protected]
Message:

2010-04-23 Gabor Rapcsanyi <[email protected]>

Reviewed by Laszlo Gombos.

Add RVCT support for Linux

Developed in cooperation with Gabor Loki.

  • API/JSStringRef.h:
  • jit/ExecutableAllocator.h:
  • jit/ExecutableAllocatorPosix.cpp: (JSC::ExecutableAllocator::cacheFlush):
  • jit/JITStubs.cpp:
  • wtf/MathExtras.h:
  • wtf/unicode/qt4/UnicodeQt4.h:
Location:
trunk/JavaScriptCore
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/API/JSStringRef.h

    r54717 r58167  
    3939
    4040#if !defined(WIN32) && !defined(_WIN32) && !defined(__WINSCW__) \
    41     && !(defined(__CC_ARM) || defined(__ARMCC__)) /* RVCT */
     41    && !((defined(__CC_ARM) || defined(__ARMCC__)) && defined(__SYMBIAN32__)) /* RVCT */
    4242/*!
    4343@typedef JSChar
  • trunk/JavaScriptCore/ChangeLog

    r58165 r58167  
     12010-04-23  Gabor Rapcsanyi  <[email protected]>
     2
     3        Reviewed by Laszlo Gombos.
     4
     5        Add RVCT support for Linux
     6
     7        Developed in cooperation with Gabor Loki.
     8
     9        * API/JSStringRef.h:
     10        * jit/ExecutableAllocator.h:
     11        * jit/ExecutableAllocatorPosix.cpp:
     12        (JSC::ExecutableAllocator::cacheFlush):
     13        * jit/JITStubs.cpp:
     14        * wtf/MathExtras.h:
     15        * wtf/unicode/qt4/UnicodeQt4.h:
     16
    1172010-04-23  Patrick Gansterer  <[email protected]>
    218
  • trunk/JavaScriptCore/jit/ExecutableAllocator.h

    r55500 r58167  
    248248        User::IMB_Range(code, static_cast<char*>(code) + size);
    249249    }
    250 #elif CPU(ARM_TRADITIONAL) && OS(LINUX)
     250#elif CPU(ARM_TRADITIONAL) && OS(LINUX) && COMPILER(RVCT)
     251    static __asm void cacheFlush(void* code, size_t size);
     252#elif CPU(ARM_TRADITIONAL) && OS(LINUX) && COMPILER(GCC)
    251253    static void cacheFlush(void* code, size_t size)
    252254    {
  • trunk/JavaScriptCore/jit/ExecutableAllocatorPosix.cpp

    r52791 r58167  
    8181#endif
    8282
     83#if CPU(ARM_TRADITIONAL) && OS(LINUX) && COMPILER(RVCT)
     84__asm void ExecutableAllocator::cacheFlush(void* code, size_t size)
     85{
     86    ARM
     87    push {r7}
     88    add r1, r1, r0
     89    mov r7, #0xf0000
     90    add r7, r7, #0x2
     91    mov r2, #0x0
     92    svc #0x0
     93    pop {r7}
     94    bx lr
     95}
     96#endif
     97
    8398}
    8499
  • trunk/JavaScriptCore/jit/JITStubs.cpp

    r57955 r58167  
    578578
    579579#elif COMPILER(RVCT) && CPU(ARM_TRADITIONAL)
     580
     581#define THUNK_RETURN_ADDRESS_OFFSET 32
     582#define PRESERVEDR4_OFFSET          36
    580583
    581584__asm EncodedJSValue ctiTrampoline(void*, RegisterFile*, CallFrame*, JSValue*, Profiler**, JSGlobalData*)
  • trunk/JavaScriptCore/wtf/MathExtras.h

    r58142 r58167  
    189189inline float grad2rad(float g) { return g * piFloat / 200.0f; }
    190190
    191 #if !COMPILER(MSVC) && !COMPILER(RVCT) && !COMPILER(WINSCW)
     191#if !COMPILER(MSVC) && !COMPILER(WINSCW) && !(COMPILER(RVCT) && OS(SYMBIAN))
    192192using std::isfinite;
    193193using std::isinf;
  • trunk/JavaScriptCore/wtf/unicode/qt4/UnicodeQt4.h

    r54717 r58167  
    5757
    5858// ugly hack to make UChar compatible with JSChar in API/JSStringRef.h
    59 #if defined(Q_OS_WIN) || COMPILER(WINSCW) || COMPILER(RVCT)
     59#if defined(Q_OS_WIN) || COMPILER(WINSCW) || (COMPILER(RVCT) && OS(SYMBIAN))
    6060typedef wchar_t UChar;
    6161#else
Note: See TracChangeset for help on using the changeset viewer.