Title: [90425] trunk/Source/_javascript_Core
Revision
90425
Author
[email protected]
Date
2011-07-05 18:20:27 -0700 (Tue, 05 Jul 2011)

Log Message

2011-07-05  Zoltan Herczeg  <[email protected]>

        Make "Add optimised paths for a few maths functions" work on Qt
        https://bugs.webkit.org/show_bug.cgi?id=63893

        Reviewed by Oliver Hunt.

        Move the generated code to the .text section instead of .data section.
        Fix alignment for the 32 bit thunk code.

        * jit/ThunkGenerators.cpp:

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (90424 => 90425)


--- trunk/Source/_javascript_Core/ChangeLog	2011-07-06 01:18:20 UTC (rev 90424)
+++ trunk/Source/_javascript_Core/ChangeLog	2011-07-06 01:20:27 UTC (rev 90425)
@@ -1,3 +1,15 @@
+2011-07-05  Zoltan Herczeg  <[email protected]>
+
+        Make "Add optimised paths for a few maths functions" work on Qt
+        https://bugs.webkit.org/show_bug.cgi?id=63893
+
+        Reviewed by Oliver Hunt.
+
+        Move the generated code to the .text section instead of .data section.
+        Fix alignment for the 32 bit thunk code.
+
+        * jit/ThunkGenerators.cpp:
+
 2011-07-05  Filip Pizlo  <[email protected]>
 
         DFG JIT does not implement op_call.

Modified: trunk/Source/_javascript_Core/jit/ThunkGenerators.cpp (90424 => 90425)


--- trunk/Source/_javascript_Core/jit/ThunkGenerators.cpp	2011-07-06 01:18:20 UTC (rev 90424)
+++ trunk/Source/_javascript_Core/jit/ThunkGenerators.cpp	2011-07-06 01:20:27 UTC (rev 90425)
@@ -132,10 +132,11 @@
 
 }
     
-#if CPU(X86_64) && COMPILER(GCC) && PLATFORM(MAC)
+#if CPU(X86_64) && COMPILER(GCC) && (PLATFORM(MAC) || OS(LINUX))
 
 #define defineUnaryDoubleOpWrapper(function) \
     asm( \
+        ".text\n" \
         ".globl " SYMBOL_STRING(function##Thunk) "\n" \
         SYMBOL_STRING(function##Thunk) ":" "\n" \
         "call " SYMBOL_STRING_RELOCATION(function) "\n" \
@@ -146,18 +147,19 @@
     } \
     static MathThunk UnaryDoubleOpWrapper(function) = &function##Thunk;
 
-#elif CPU(X86) && COMPILER(GCC) && PLATFORM(MAC)
+#elif CPU(X86) && COMPILER(GCC) && (PLATFORM(MAC) || OS(LINUX))
 #define defineUnaryDoubleOpWrapper(function) \
     asm( \
-         ".globl " SYMBOL_STRING(function##Thunk) "\n" \
-         SYMBOL_STRING(function##Thunk) ":" "\n" \
-         "subl $8, %esp\n" \
-         "movsd %xmm0, (%esp) \n" \
-         "call " SYMBOL_STRING_RELOCATION(function) "\n" \
-         "fstpl (%esp) \n" \
-         "movsd (%esp), %xmm0 \n" \
-         "addl $8, %esp\n" \
-         "ret\n" \
+        ".text\n" \
+        ".globl " SYMBOL_STRING(function##Thunk) "\n" \
+        SYMBOL_STRING(function##Thunk) ":" "\n" \
+        "subl $8, %esp\n" \
+        "movsd %xmm0, (%esp) \n" \
+        "call " SYMBOL_STRING_RELOCATION(function) "\n" \
+        "fstpl (%esp) \n" \
+        "movsd (%esp), %xmm0 \n" \
+        "addl $8, %esp\n" \
+        "ret\n" \
     );\
     extern "C" { \
         MathThunkCallingConvention function##Thunk(MathThunkCallingConvention); \
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to