[SCM] WebKit Debian packaging branch, debian/unstable, updated. upstream/1.1.11-738-g315de55

Gustavo Noronha Silva kov at debian.org
Tue Jul 28 16:51:58 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 999dbd8ba69d83be145c44f870090bfad4759112
Merge: 498bd0ef0e4fded90d14f170b206cb69e4ec0c32 fde64cd6e24b62773f957207a0df789c59d25fbf
Author: Gustavo Noronha Silva <kov at debian.org>
Date:   Tue Jul 28 18:11:16 2009 +0200

    Merge branch 'webkit-1.1' into debian/unstable

diff --combined JavaScriptCore/wtf/FastMalloc.cpp
index ec07afd,c855a41..b526da3
--- a/JavaScriptCore/wtf/FastMalloc.cpp
+++ b/JavaScriptCore/wtf/FastMalloc.cpp
@@@ -95,8 -95,6 +95,6 @@@
  #define FORCE_SYSTEM_MALLOC 1
  #endif
  
- #define TCMALLOC_TRACK_DECOMMITED_SPANS (HAVE(VIRTUALALLOC) || HAVE(MADV_FREE_REUSE))
- 
  #ifndef NDEBUG
  namespace WTF {
  
@@@ -1043,11 -1041,7 +1041,7 @@@ struct Span 
  #endif
  };
  
- #if TCMALLOC_TRACK_DECOMMITED_SPANS
  #define ASSERT_SPAN_COMMITTED(span) ASSERT(!span->decommitted)
- #else
- #define ASSERT_SPAN_COMMITTED(span)
- #endif
  
  #ifdef SPAN_HISTORY
  void Event(Span* span, char op, int v = 0) {
@@@ -1369,12 -1363,10 +1363,10 @@@ inline Span* TCMalloc_PageHeap::New(Len
  
      Span* result = ll->next;
      Carve(result, n, released);
- #if TCMALLOC_TRACK_DECOMMITED_SPANS
      if (result->decommitted) {
          TCMalloc_SystemCommit(reinterpret_cast<void*>(result->start << kPageShift), static_cast<size_t>(n << kPageShift));
          result->decommitted = false;
      }
- #endif
      ASSERT(Check());
      free_pages_ -= n;
      return result;
@@@ -1431,12 -1423,10 +1423,10 @@@ Span* TCMalloc_PageHeap::AllocLarge(Len
  
    if (best != NULL) {
      Carve(best, n, from_released);
- #if TCMALLOC_TRACK_DECOMMITED_SPANS
      if (best->decommitted) {
          TCMalloc_SystemCommit(reinterpret_cast<void*>(best->start << kPageShift), static_cast<size_t>(n << kPageShift));
          best->decommitted = false;
      }
- #endif
      ASSERT(Check());
      free_pages_ -= n;
      return best;
@@@ -1461,14 -1451,10 +1451,10 @@@ Span* TCMalloc_PageHeap::Split(Span* sp
    return leftover;
  }
  
- #if !TCMALLOC_TRACK_DECOMMITED_SPANS
- static ALWAYS_INLINE void propagateDecommittedState(Span*, Span*) { }
- #else
  static ALWAYS_INLINE void propagateDecommittedState(Span* destination, Span* source)
  {
      destination->decommitted = source->decommitted;
  }
- #endif
  
  inline void TCMalloc_PageHeap::Carve(Span* span, Length n, bool released) {
    ASSERT(n > 0);
@@@ -1495,9 -1481,6 +1481,6 @@@
    }
  }
  
- #if !TCMALLOC_TRACK_DECOMMITED_SPANS
- static ALWAYS_INLINE void mergeDecommittedStates(Span*, Span*) { }
- #else
  static ALWAYS_INLINE void mergeDecommittedStates(Span* destination, Span* other)
  {
      if (destination->decommitted && !other->decommitted) {
@@@ -1509,7 -1492,6 +1492,6 @@@
          destination->decommitted = true;
      }
  }
- #endif
  
  inline void TCMalloc_PageHeap::Delete(Span* span) {
    ASSERT(Check());
@@@ -1526,10 -1508,6 +1508,6 @@@
    // necessary.  We do not bother resetting the stale pagemap
    // entries for the pieces we are merging together because we only
    // care about the pagemap entries for the boundaries.
-   //
-   // Note that the spans we merge into "span" may come out of
-   // a "returned" list.  For simplicity, we move these into the
-   // "normal" list of the appropriate size class.
    const PageID p = span->start;
    const Length n = span->length;
    Span* prev = GetDescriptor(p-1);
@@@ -1560,10 -1538,16 +1538,16 @@@
  
    Event(span, 'D', span->length);
    span->free = 1;
-   if (span->length < kMaxPages) {
-     DLL_Prepend(&free_[span->length].normal, span);
+   if (span->decommitted) {
+     if (span->length < kMaxPages)
+       DLL_Prepend(&free_[span->length].returned, span);
+     else
+       DLL_Prepend(&large_.returned, span);
    } else {
-     DLL_Prepend(&large_.normal, span);
+     if (span->length < kMaxPages)
+       DLL_Prepend(&free_[span->length].normal, span);
+     else
+       DLL_Prepend(&large_.normal, span);
    }
    free_pages_ += n;
  
@@@ -1591,9 -1575,7 +1575,7 @@@ void TCMalloc_PageHeap::IncrementalScav
        DLL_Remove(s);
        TCMalloc_SystemRelease(reinterpret_cast<void*>(s->start << kPageShift),
                               static_cast<size_t>(s->length << kPageShift));
- #if TCMALLOC_TRACK_DECOMMITED_SPANS
        s->decommitted = true;
- #endif
        DLL_Prepend(&slist->returned, s);
  
        scavenge_counter_ = std::max<size_t>(64UL, std::min<size_t>(kDefaultReleaseDelay, kDefaultReleaseDelay - (free_pages_ / kDefaultReleaseDelay)));
@@@ -2083,13 -2065,13 +2065,13 @@@ static TCMalloc_Central_FreeListPadded 
  
  // Page-level allocator
  static SpinLock pageheap_lock = SPINLOCK_INITIALIZER;
 -static void* pageheap_memory[(sizeof(TCMalloc_PageHeap) + sizeof(void*) - 1) / sizeof(void*)];
 +static uint64_t pageheap_memory[(sizeof(TCMalloc_PageHeap) + sizeof(uint64_t) - 1) / sizeof(uint64_t)];
  static bool phinited = false;
  
  // Avoid extra level of indirection by making "pageheap" be just an alias
  // of pageheap_memory.
  typedef union {
 -    void* m_memory;
 +    uint64_t* m_memory;
      TCMalloc_PageHeap* m_pageHeap;
  } PageHeapUnion;
  
diff --combined JavaScriptCore/wtf/Platform.h
index ddfc73f,3f64c77..7132cc4
--- a/JavaScriptCore/wtf/Platform.h
+++ b/JavaScriptCore/wtf/Platform.h
@@@ -1,5 -1,6 +1,6 @@@
  /*
   * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc.  All rights reserved.
+  * Copyright (C) 2007-2009 Torch Mobile, Inc.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
@@@ -27,11 -28,11 +28,11 @@@
  #define WTF_Platform_h
  
  /* PLATFORM handles OS, operating environment, graphics API, and CPU */
- #define PLATFORM(WTF_FEATURE) (defined( WTF_PLATFORM_##WTF_FEATURE ) && WTF_PLATFORM_##WTF_FEATURE)
- #define COMPILER(WTF_FEATURE) (defined( WTF_COMPILER_##WTF_FEATURE ) && WTF_COMPILER_##WTF_FEATURE)
- #define HAVE(WTF_FEATURE) (defined( HAVE_##WTF_FEATURE ) && HAVE_##WTF_FEATURE)
- #define USE(WTF_FEATURE) (defined( WTF_USE_##WTF_FEATURE ) && WTF_USE_##WTF_FEATURE)
- #define ENABLE(WTF_FEATURE) (defined( ENABLE_##WTF_FEATURE ) && ENABLE_##WTF_FEATURE)
+ #define PLATFORM(WTF_FEATURE) (defined WTF_PLATFORM_##WTF_FEATURE  && WTF_PLATFORM_##WTF_FEATURE)
+ #define COMPILER(WTF_FEATURE) (defined WTF_COMPILER_##WTF_FEATURE  && WTF_COMPILER_##WTF_FEATURE)
+ #define HAVE(WTF_FEATURE) (defined HAVE_##WTF_FEATURE  && HAVE_##WTF_FEATURE)
+ #define USE(WTF_FEATURE) (defined WTF_USE_##WTF_FEATURE  && WTF_USE_##WTF_FEATURE)
+ #define ENABLE(WTF_FEATURE) (defined ENABLE_##WTF_FEATURE  && ENABLE_##WTF_FEATURE)
  
  /* Operating systems - low-level dependencies */
  
@@@ -56,12 -57,12 +57,12 @@@
  #define WTF_PLATFORM_WIN_OS 1
  #endif
  
- /* PLATFORM(WIN_CE) */
+ /* PLATFORM(WINCE) */
  /* Operating system level dependencies for Windows CE that should be used */
  /* regardless of operating environment */
  /* Note that for this platform PLATFORM(WIN_OS) is also defined. */
  #if defined(_WIN32_WCE)
- #define WTF_PLATFORM_WIN_CE 1
+ #define WTF_PLATFORM_WINCE 1
  #endif
  
  /* PLATFORM(LINUX) */
@@@ -92,12 -93,10 +93,10 @@@
  #define WTF_PLATFORM_SOLARIS 1
  #endif
  
- #if defined (__S60__) || defined (__SYMBIAN32__)
+ #if defined (__SYMBIAN32__)
  /* we are cross-compiling, it is not really windows */
  #undef WTF_PLATFORM_WIN_OS
  #undef WTF_PLATFORM_WIN
- #undef WTF_PLATFORM_CAIRO
- #define WTF_PLATFORM_S60 1
  #define WTF_PLATFORM_SYMBIAN 1
  #endif
  
@@@ -114,7 -113,7 +113,7 @@@
  /* should be used regardless of operating environment */
  #if   PLATFORM(DARWIN)     \
     || PLATFORM(FREEBSD)    \
-    || PLATFORM(S60)        \
+    || PLATFORM(SYMBIAN)    \
     || PLATFORM(NETBSD)     \
     || defined(unix)        \
     || defined(__unix)      \
@@@ -190,7 -189,7 +189,7 @@@
  
  /* Makes PLATFORM(WIN) default to PLATFORM(CAIRO) */
  /* FIXME: This should be changed from a blacklist to a whitelist */
- #if !PLATFORM(MAC) && !PLATFORM(QT) && !PLATFORM(WX) && !PLATFORM(CHROMIUM)
+ #if !PLATFORM(MAC) && !PLATFORM(QT) && !PLATFORM(WX) && !PLATFORM(CHROMIUM) && !PLATFORM(WINCE)
  #define WTF_PLATFORM_CAIRO 1
  #endif
  
@@@ -227,10 -226,29 +226,29 @@@
  #if !defined(__ARM_EABI__)
  #define WTF_PLATFORM_FORCE_PACK 1
  #endif
+ #define ARM_ARCH_VERSION 3
+ #if defined(__ARM_ARCH_4__) || defined(__ARM_ARCH_4T__)
+ #undef ARM_ARCH_VERSION
+ #define ARM_ARCH_VERSION 4
+ #endif
+ #if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) \
+         || defined(__ARM_ARCH_5E__) || defined(__ARM_ARCH_5TE__) \
+         || defined(__ARM_ARCH_5TEJ__)
+ #undef ARM_ARCH_VERSION
+ #define ARM_ARCH_VERSION 5
+ #endif
+ #if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) \
+      || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) \
+      || defined(__ARM_ARCH_6ZK__)
+ #undef ARM_ARCH_VERSION
+ #define ARM_ARCH_VERSION 6
  #endif
  #if defined(__ARM_ARCH_7A__)
- #define WTF_PLATFORM_ARM_V7 1
+ #undef ARM_ARCH_VERSION
+ #define ARM_ARCH_VERSION 7
  #endif
+ #endif /* ARM */
+ #define PLATFORM_ARM_ARCH(N) (PLATFORM(ARM) && ARM_ARCH_VERSION >= N)
  
  /* PLATFORM(X86) */
  #if   defined(__i386__) \
@@@ -247,13 -265,6 +265,13 @@@
  #define WTF_PLATFORM_X86_64 1
  #endif
  
 +/* PLATFORM(SPARC) */
 +#if   defined(__sparc__) \
 +   || defined(__sparc)
 +#define WTF_PLATFORM_SPARC 1
 +#define WTF_PLATFORM_BIG_ENDIAN 1
 +#endif
 +
  /* PLATFORM(SH4) */
  #if defined(__SH4__)
  #define WTF_PLATFORM_SH4 1
@@@ -265,12 -276,12 +283,12 @@@
  #define WTF_PLATFORM_BIG_ENDIAN 1
  #endif
  
- /* PLATFORM(WIN_CE) && PLATFORM(QT)
+ /* PLATFORM(WINCE) && PLATFORM(QT)
     We can not determine the endianess at compile time. For
     Qt for Windows CE the endianess is specified in the
     device specific makespec
  */
- #if PLATFORM(WIN_CE) && PLATFORM(QT)
+ #if PLATFORM(WINCE) && PLATFORM(QT)
  #   include <QtGlobal>
  #   undef WTF_PLATFORM_BIG_ENDIAN
  #   undef WTF_PLATFORM_MIDDLE_ENDIAN
@@@ -279,16 -290,6 +297,16 @@@
  #   endif
  #endif
  
 +/* For undefined platforms */
 +#if !defined(WTF_PLATFORM_BIG_ENDIAN) && !defined(WTF_PLATFORM_MIDDLE_ENDIAN)
 +#include <sys/param.h>
 +#if __BYTE_ORDER == __BIG_ENDIAN
 +#define WTF_PLATFORM_BIG_ENDIAN 1
 +#elif  __BYTE_ORDER == __PDP_ENDIAN
 +#define WTF_PLATFORM_MIDDLE_ENDIAN 1
 +#endif
 +#endif
 +
  /* Compiler */
  
  /* COMPILER(MSVC) */
@@@ -308,6 -309,7 +326,7 @@@
  /* --gnu option of the RVCT compiler also defines __GNUC__ */
  #if defined(__GNUC__) && !COMPILER(RVCT)
  #define WTF_COMPILER_GCC 1
+ #define GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
  #endif
  
  /* COMPILER(MINGW) */
@@@ -336,11 -338,36 +355,36 @@@
  #define ENABLE_JSC_MULTIPLE_THREADS 1
  #endif
  
+ #if PLATFORM(WINCE) && !PLATFORM(QT)
+ #undef ENABLE_JSC_MULTIPLE_THREADS
+ #define ENABLE_JSC_MULTIPLE_THREADS        0
+ #define USE_SYSTEM_MALLOC                  0
+ #define ENABLE_ICONDATABASE                0
+ #define ENABLE_JAVASCRIPT_DEBUGGER         0
+ #define ENABLE_FTPDIR                      0
+ #define ENABLE_PAN_SCROLLING               0
+ #define ENABLE_WML                         1
+ #define HAVE_ACCESSIBILITY                 0
+ 
+ #define NOMINMAX       // Windows min and max conflict with standard macros
+ #define NOSHLWAPI      // shlwapi.h not available on WinCe
+ 
+ // MSDN documentation says these functions are provided with uspce.lib.  But we cannot find this file.
+ #define __usp10__      // disable "usp10.h"
+ 
+ #define _INC_ASSERT    // disable "assert.h"
+ #define assert(x)
+ 
+ // _countof is only included in CE6; for CE5 we need to define it ourself
+ #ifndef _countof
+ #define _countof(x) (sizeof(x) / sizeof((x)[0]))
+ #endif
+ 
+ #endif  /* PLATFORM(WINCE) && !PLATFORM(QT) */
+ 
  /* for Unicode, KDE uses Qt */
  #if PLATFORM(KDE) || PLATFORM(QT)
  #define WTF_USE_QT4_UNICODE 1
- #elif PLATFORM(SYMBIAN)
- #define WTF_USE_SYMBIAN_UNICODE 1
  #elif PLATFORM(GTK)
  /* The GTK+ Unicode backend is configurable */
  #else
@@@ -399,6 -426,16 +443,16 @@@
  #endif
  #endif /* !defined(HAVE_ACCESSIBILITY) */
  
+ #if PLATFORM(UNIX) && !PLATFORM(SYMBIAN)
+ #define HAVE_SIGNAL_H 1
+ #endif
+ 
+ #if !PLATFORM(WIN_OS) && !PLATFORM(SOLARIS) && !PLATFORM(SYMBIAN) && !COMPILER(RVCT)
+ #define HAVE_TM_GMTOFF 1
+ #define HAVE_TM_ZONE 1
+ #define HAVE_TIMEGM 1
+ #endif     
+ 
  #if PLATFORM(DARWIN)
  
  #define HAVE_ERRNO_H 1
@@@ -423,7 -460,7 +477,7 @@@
  #elif PLATFORM(WIN_OS)
  
  #define HAVE_FLOAT_H 1
- #if PLATFORM(WIN_CE)
+ #if PLATFORM(WINCE)
  #define HAVE_ERRNO_H 0
  #else
  #define HAVE_SYS_TIMEB_H 1
@@@ -529,6 -566,7 +583,7 @@@
  #endif
  
  #if !defined(ENABLE_JIT)
+ 
  /* The JIT is tested & working on x86_64 Mac */
  #if PLATFORM(X86_64) && PLATFORM(MAC)
      #define ENABLE_JIT 1
@@@ -536,7 -574,7 +591,7 @@@
  #elif PLATFORM(X86) && PLATFORM(MAC)
      #define ENABLE_JIT 1
      #define WTF_USE_JIT_STUB_ARGUMENT_VA_LIST 1
- #elif PLATFORM(ARM_V7) && PLATFORM(IPHONE) 
+ #elif PLATFORM_ARM_ARCH(7) && PLATFORM(IPHONE)
      /* Under development, temporarily disabled until 16Mb link range limit in assembler is fixed. */
      #define ENABLE_JIT 0
      #define ENABLE_JIT_OPTIMIZE_NATIVE_CALL 0
@@@ -544,8 -582,23 +599,23 @@@
  #elif PLATFORM(X86) && PLATFORM(WIN)
      #define ENABLE_JIT 1
  #endif
+ 
+ #if PLATFORM(X86) && PLATFORM(QT)
+ #if PLATFORM(WIN_OS) && COMPILER(MINGW) && GCC_VERSION >= 40100
+     #define ENABLE_JIT 1
+     #define WTF_USE_JIT_STUB_ARGUMENT_VA_LIST 1
+ #elif PLATFORM(WIN_OS) && COMPILER(MSVC)
+     #define ENABLE_JIT 1
+     #define WTF_USE_JIT_STUB_ARGUMENT_REGISTER 1
+ #elif PLATFORM(LINUX) && GCC_VERSION >= 40100
+     #define ENABLE_JIT 1
+     #define WTF_USE_JIT_STUB_ARGUMENT_VA_LIST 1
  #endif
+ #endif /* PLATFORM(QT) && PLATFORM(X86) */
+ 
+ #endif /* !defined(ENABLE_JIT) */
  
+ #if ENABLE(JIT)
  #ifndef ENABLE_JIT_OPTIMIZE_CALL
  #define ENABLE_JIT_OPTIMIZE_CALL 1
  #endif
@@@ -561,6 -614,7 +631,7 @@@
  #ifndef ENABLE_JIT_OPTIMIZE_METHOD_CALLS
  #define ENABLE_JIT_OPTIMIZE_METHOD_CALLS 1
  #endif
+ #endif
  
  #if PLATFORM(X86) && COMPILER(MSVC)
  #define JSC_HOST_CALL __fastcall
@@@ -581,15 -635,29 +652,29 @@@
  #endif
  
  /* Yet Another Regex Runtime. */
+ #if !defined(ENABLE_YARR_JIT)
+ 
  /* YARR supports x86 & x86-64, and has been tested on Mac and Windows. */
- #if (!defined(ENABLE_YARR_JIT) && PLATFORM(X86) && PLATFORM(MAC)) \
-  || (!defined(ENABLE_YARR_JIT) && PLATFORM(X86_64) && PLATFORM(MAC)) \
+ #if (PLATFORM(X86) && PLATFORM(MAC)) \
+  || (PLATFORM(X86_64) && PLATFORM(MAC)) \
   /* Under development, temporarily disabled until 16Mb link range limit in assembler is fixed. */ \
-  || (!defined(ENABLE_YARR_JIT) && PLATFORM(ARM_V7) && PLATFORM(IPHONE) && 0) \
-  || (!defined(ENABLE_YARR_JIT) && PLATFORM(X86) && PLATFORM(WIN))
+  || (PLATFORM_ARM_ARCH(7) && PLATFORM(IPHONE) && 0) \
+  || (PLATFORM(X86) && PLATFORM(WIN))
+ #define ENABLE_YARR 1
+ #define ENABLE_YARR_JIT 1
+ #endif
+ 
+ #if PLATFORM(X86) && PLATFORM(QT)
+ #if (PLATFORM(WIN_OS) && COMPILER(MINGW) && GCC_VERSION >= 40100) \
+  || (PLATFORM(WIN_OS) && COMPILER(MSVC)) \
+  || (PLATFORM(LINUX) && GCC_VERSION >= 40100)
  #define ENABLE_YARR 1
  #define ENABLE_YARR_JIT 1
  #endif
+ #endif
+ 
+ #endif /* !defined(ENABLE_YARR_JIT) */
+ 
  /* Sanity Check */
  #if ENABLE(YARR_JIT) && !ENABLE(YARR)
  #error "YARR_JIT requires YARR"
@@@ -600,7 -668,7 +685,7 @@@
  #endif
  /* Setting this flag prevents the assembler from using RWX memory; this may improve
     security but currectly comes at a significant performance cost. */
- #if PLATFORM(ARM_V7) && PLATFORM(IPHONE)
+ #if PLATFORM(ARM)
  #define ENABLE_ASSEMBLER_WX_EXCLUSIVE 1
  #else
  #define ENABLE_ASSEMBLER_WX_EXCLUSIVE 0
@@@ -625,4 -693,15 +710,15 @@@
  #define WTF_USE_FONT_FAST_PATH 1
  #endif
  
+ /* Accelerated compositing */
+ #if PLATFORM(MAC)
+ #if !defined(BUILDING_ON_TIGER)
+ #define WTF_USE_ACCELERATED_COMPOSITING 1
+ #endif
+ #endif
+ 
+ #if PLATFORM(IPHONE)
+ #define WTF_USE_ACCELERATED_COMPOSITING 1
+ #endif
+ 
  #endif /* WTF_Platform_h */

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list