[SCM] WebKit Debian packaging branch, debian/experimental, updated. debian/1.3.8-1-1049-g2e11a8e

aroben at apple.com aroben at apple.com
Fri Jan 21 15:16:50 UTC 2011


The following commit has been merged in the debian/experimental branch:
commit 44b13a5fc1706760b023ad2895728e91df747db5
Author: aroben at apple.com <aroben at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Jan 10 20:13:38 2011 +0000

    Roll out r75289
    
    It was causing assertion failures. See <http://webkit.org/b/52156>.
    
    * wtf/StackBounds.cpp:
    (WTF::StackBounds::initialize):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@75405 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/Source/JavaScriptCore/ChangeLog b/Source/JavaScriptCore/ChangeLog
index 41426f1..fddc05b 100644
--- a/Source/JavaScriptCore/ChangeLog
+++ b/Source/JavaScriptCore/ChangeLog
@@ -1,3 +1,12 @@
+2011-01-10  Adam Roben  <aroben at apple.com>
+
+        Roll out r75289
+
+        It was causing assertion failures. See <http://webkit.org/b/52156>.
+
+        * wtf/StackBounds.cpp:
+        (WTF::StackBounds::initialize):
+
 2011-01-08  Patrick Gansterer  <paroga at webkit.org>
 
         Reviewed by Darin Adler.
diff --git a/Source/JavaScriptCore/wtf/StackBounds.cpp b/Source/JavaScriptCore/wtf/StackBounds.cpp
index f83695e..be8ce84 100644
--- a/Source/JavaScriptCore/wtf/StackBounds.cpp
+++ b/Source/JavaScriptCore/wtf/StackBounds.cpp
@@ -60,12 +60,12 @@ namespace WTF {
 // Bug 26276 - Need a mechanism to determine stack extent
 //
 // These platforms should now be working correctly:
-//     DARWIN, WINDOWS-CPU(X86), QNX, UNIX, WINCE
+//     DARWIN, QNX, UNIX
 // These platforms are not:
-//     WINDOWS-CPU(X86_64), SOLARIS, OPENBSD, SYMBIAN, HAIKU
+//     WINDOWS, SOLARIS, OPENBSD, SYMBIAN, HAIKU, WINCE
 //
 // FIXME: remove this! - this code unsafely guesses at stack sizes!
-#if (OS(WINDOWS) && CPU(X86_64)) || OS(SOLARIS) || OS(OPENBSD) || OS(SYMBIAN) || OS(HAIKU)
+#if OS(WINDOWS) || OS(SOLARIS) || OS(OPENBSD) || OS(SYMBIAN) || OS(HAIKU)
 // Based on the current limit used by the JSC parser, guess the stack size.
 static const ptrdiff_t estimatedStackSize = 128 * sizeof(void*) * 1024;
 // This method assumes the stack is growing downwards.
@@ -247,37 +247,39 @@ void StackBounds::initialize()
     m_bound = isGrowingDownward ? lowerStackBound : upperStackBound;
 }
 
-#elif OS(WINDOWS) && (CPU(X86) || CPU(X86_64))
+#elif OS(WINDOWS)
 
 void StackBounds::initialize()
 {
-#if CPU(X86)
-    // Offset 0x18 from the FS segment register gives a pointer to
-    // the thread information block for the current thread.
+#if CPU(X86) && COMPILER(MSVC)
+    // offset 0x18 from the FS segment register gives a pointer to
+    // the thread information block for the current thread
     NT_TIB* pTib;
-#if COMPILER(MSVC)
     __asm {
         MOV EAX, FS:[18h]
         MOV pTib, EAX
     }
-#else
+    m_origin = static_cast<void*>(pTib->StackBase);
+#elif CPU(X86) && COMPILER(GCC)
+    // offset 0x18 from the FS segment register gives a pointer to
+    // the thread information block for the current thread
+    NT_TIB* pTib;
     asm ( "movl %%fs:0x18, %0\n"
           : "=r" (pTib)
         );
-#endif
-    // See http://en.wikipedia.org/wiki/Win32_Thread_Information_Block for more information!
-    void* pDeallocationStack = reinterpret_cast<char*>(pTib) + 0xE0C;
     m_origin = static_cast<void*>(pTib->StackBase);
-    m_bound = *static_cast<void**>(pDeallocationStack);
 #elif CPU(X86_64)
     PNT_TIB64 pTib = reinterpret_cast<PNT_TIB64>(NtCurrentTeb());
     m_origin = reinterpret_cast<void*>(pTib->StackBase);
-    m_bound = estimateStackBound(m_origin);
+#else
+#error Need a way to get the stack bounds on this platform (Windows)
 #endif
+    // Looks like we should be able to get pTib->StackLimit
+    m_bound = estimateStackBound(m_origin);
 }
 
 #else
-#error Need a way to get the stack bounds on this platform.
+#error Need a way to get the stack bounds on this platform
 #endif
 
 } // namespace WTF

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list