Title: [289504] branches/safari-614.1.1-branch/Source/_javascript_Core
Revision
289504
Author
[email protected]
Date
2022-02-09 14:58:10 -0800 (Wed, 09 Feb 2022)

Log Message

Cherry-pick r289024. rdar://problem/88710933

    SecureARM64EHashPins should check g_jscConfig.useFastJITPermissions
    https://bugs.webkit.org/show_bug.cgi?id=236055
    <rdar://88222677>

    Reviewed by Mark Lam.

    * assembler/SecureARM64EHashPins.cpp:
    (JSC::SecureARM64EHashPins::initializeAtStartup):
    (JSC::SecureARM64EHashPins::allocatePinForCurrentThread):
    (JSC::SecureARM64EHashPins::deallocatePinForCurrentThread):
    * assembler/SecureARM64EHashPinsInlines.h:
    (JSC::SecureARM64EHashPins::pinForCurrentThread):

    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@289024 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Modified Paths

Diff

Modified: branches/safari-614.1.1-branch/Source/_javascript_Core/ChangeLog (289503 => 289504)


--- branches/safari-614.1.1-branch/Source/_javascript_Core/ChangeLog	2022-02-09 22:58:07 UTC (rev 289503)
+++ branches/safari-614.1.1-branch/Source/_javascript_Core/ChangeLog	2022-02-09 22:58:10 UTC (rev 289504)
@@ -1,5 +1,40 @@
 2022-02-09  Russell Epstein  <[email protected]>
 
+        Cherry-pick r289024. rdar://problem/88710933
+
+    SecureARM64EHashPins should check g_jscConfig.useFastJITPermissions
+    https://bugs.webkit.org/show_bug.cgi?id=236055
+    <rdar://88222677>
+    
+    Reviewed by Mark Lam.
+    
+    * assembler/SecureARM64EHashPins.cpp:
+    (JSC::SecureARM64EHashPins::initializeAtStartup):
+    (JSC::SecureARM64EHashPins::allocatePinForCurrentThread):
+    (JSC::SecureARM64EHashPins::deallocatePinForCurrentThread):
+    * assembler/SecureARM64EHashPinsInlines.h:
+    (JSC::SecureARM64EHashPins::pinForCurrentThread):
+    
+    
+    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@289024 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+    2022-02-02  Saam Barati  <[email protected]>
+
+            SecureARM64EHashPins should check g_jscConfig.useFastJITPermissions
+            https://bugs.webkit.org/show_bug.cgi?id=236055
+            <rdar://88222677>
+
+            Reviewed by Mark Lam.
+
+            * assembler/SecureARM64EHashPins.cpp:
+            (JSC::SecureARM64EHashPins::initializeAtStartup):
+            (JSC::SecureARM64EHashPins::allocatePinForCurrentThread):
+            (JSC::SecureARM64EHashPins::deallocatePinForCurrentThread):
+            * assembler/SecureARM64EHashPinsInlines.h:
+            (JSC::SecureARM64EHashPins::pinForCurrentThread):
+
+2022-02-09  Russell Epstein  <[email protected]>
+
         Cherry-pick r288970. rdar://problem/88710933
 
     Update computation of FAST_TLS base.

Modified: branches/safari-614.1.1-branch/Source/_javascript_Core/assembler/SecureARM64EHashPins.cpp (289503 => 289504)


--- branches/safari-614.1.1-branch/Source/_javascript_Core/assembler/SecureARM64EHashPins.cpp	2022-02-09 22:58:07 UTC (rev 289503)
+++ branches/safari-614.1.1-branch/Source/_javascript_Core/assembler/SecureARM64EHashPins.cpp	2022-02-09 22:58:10 UTC (rev 289504)
@@ -100,6 +100,9 @@
 
 void SecureARM64EHashPins::initializeAtStartup()
 {
+    if (!g_jscConfig.useFastJITPermissions)
+        return;
+
     VALIDATE_THIS_VALUE();
     RELEASE_ASSERT(!m_memory);
 
@@ -173,6 +176,9 @@
 
 void SecureARM64EHashPins::allocatePinForCurrentThread()
 {
+    if (!g_jscConfig.useFastJITPermissions)
+        return;
+
     VALIDATE_THIS_VALUE();
 
     Locker locker { hashPinsLock };
@@ -205,6 +211,9 @@
 
 void SecureARM64EHashPins::deallocatePinForCurrentThread()
 {
+    if (!g_jscConfig.useFastJITPermissions)
+        return;
+
     VALIDATE_THIS_VALUE();
 
     Locker locker { hashPinsLock };

Modified: branches/safari-614.1.1-branch/Source/_javascript_Core/assembler/SecureARM64EHashPinsInlines.h (289503 => 289504)


--- branches/safari-614.1.1-branch/Source/_javascript_Core/assembler/SecureARM64EHashPinsInlines.h	2022-02-09 22:58:07 UTC (rev 289503)
+++ branches/safari-614.1.1-branch/Source/_javascript_Core/assembler/SecureARM64EHashPinsInlines.h	2022-02-09 22:58:10 UTC (rev 289504)
@@ -101,7 +101,9 @@
 
 ALWAYS_INLINE uint64_t SecureARM64EHashPins::pinForCurrentThread()
 {
-    return findFirstEntry().entry->pin;
+    if (LIKELY(g_jscConfig.useFastJITPermissions))
+        return findFirstEntry().entry->pin;
+    return 1;
 }
 
 } // namespace JSC
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to