Title: [167392] trunk/Source/_javascript_Core
Revision
167392
Author
fpi...@apple.com
Date
2014-04-16 15:39:05 -0700 (Wed, 16 Apr 2014)

Log Message

Enable system library calls in FTL for ARM64
https://bugs.webkit.org/show_bug.cgi?id=130154

Patch by Juergen Ributzka <juer...@apple.com> on 2014-04-16
Reviewed by Geoffrey Garen and Filip Pizlo.

* ftl/FTLIntrinsicRepository.h:
* ftl/FTLOutput.h:
(JSC::FTL::Output::doubleRem):
(JSC::FTL::Output::doubleSin):
(JSC::FTL::Output::doubleCos):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (167391 => 167392)


--- trunk/Source/_javascript_Core/ChangeLog	2014-04-16 22:21:43 UTC (rev 167391)
+++ trunk/Source/_javascript_Core/ChangeLog	2014-04-16 22:39:05 UTC (rev 167392)
@@ -1,3 +1,16 @@
+2014-04-16  Juergen Ributzka  <juer...@apple.com>
+
+        Enable system library calls in FTL for ARM64
+        https://bugs.webkit.org/show_bug.cgi?id=130154
+
+        Reviewed by Geoffrey Garen and Filip Pizlo.
+
+        * ftl/FTLIntrinsicRepository.h:
+        * ftl/FTLOutput.h:
+        (JSC::FTL::Output::doubleRem):
+        (JSC::FTL::Output::doubleSin):
+        (JSC::FTL::Output::doubleCos):
+
 2014-04-16  pe...@outlook.com  <pe...@outlook.com>
 
         Fix JSC Debug Regressions on Windows

Modified: trunk/Source/_javascript_Core/ftl/FTLIntrinsicRepository.h (167391 => 167392)


--- trunk/Source/_javascript_Core/ftl/FTLIntrinsicRepository.h	2014-04-16 22:21:43 UTC (rev 167391)
+++ trunk/Source/_javascript_Core/ftl/FTLIntrinsicRepository.h	2014-04-16 22:39:05 UTC (rev 167392)
@@ -59,7 +59,6 @@
     macro(C_JITOperation_EJssJssJss, functionType(intPtr, intPtr, intPtr, intPtr, intPtr)) \
     macro(C_JITOperation_ESt, functionType(intPtr, intPtr, intPtr)) \
     macro(D_JITOperation_D, functionType(doubleType, doubleType)) \
-    macro(D_JITOperation_DD, functionType(doubleType, doubleType, doubleType)) \
     macro(I_JITOperation_EJss, functionType(intPtr, intPtr, intPtr)) \
     macro(J_JITOperation_E, functionType(int64, intPtr)) \
     macro(J_JITOperation_EA, functionType(int64, intPtr, intPtr)) \

Modified: trunk/Source/_javascript_Core/ftl/FTLOutput.h (167391 => 167392)


--- trunk/Source/_javascript_Core/ftl/FTLOutput.h	2014-04-16 22:21:43 UTC (rev 167391)
+++ trunk/Source/_javascript_Core/ftl/FTLOutput.h	2014-04-16 22:39:05 UTC (rev 167392)
@@ -126,13 +126,7 @@
     LValue doubleSub(LValue left, LValue right) { return buildFSub(m_builder, left, right); }
     LValue doubleMul(LValue left, LValue right) { return buildFMul(m_builder, left, right); }
     LValue doubleDiv(LValue left, LValue right) { return buildFDiv(m_builder, left, right); }
-    LValue doubleRem(LValue left, LValue right)
-    {
-        // FIXME: LLVM may soften float operations by expanding them to libcalls.
-        // We cannot allow that on all platforms yet.
-        // <rdar://16196412> MachO large code model support.
-        return isX86() ? buildFRem(m_builder, left, right) : call(operation(fmod), left, right);
-    }
+    LValue doubleRem(LValue left, LValue right) { return buildFRem(m_builder, left, right); }
     LValue doubleNeg(LValue value) { return buildFNeg(m_builder, value); }
 
     LValue bitAnd(LValue left, LValue right) { return buildAnd(m_builder, left, right); }
@@ -176,12 +170,11 @@
 
     LValue doubleSin(LValue value)
     {
-        return call(isX86() ? doubleSinIntrinsic() : operation(sin), value);
-        
+        return call(doubleSinIntrinsic(), value);
     }
     LValue doubleCos(LValue value)
     {
-        return call(isX86() ? doubleCosIntrinsic() : operation(cos), value);
+        return call(doubleCosIntrinsic(), value);
     }
 
     LValue doubleSqrt(LValue value)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to