Title: [289439] branches/safari-613.1.16.31-branch/Source/_javascript_Core
Revision
289439
Author
[email protected]
Date
2022-02-08 15:06:35 -0800 (Tue, 08 Feb 2022)

Log Message

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

    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-613.1.16.31-branch/Source/_javascript_Core/ChangeLog (289438 => 289439)


--- branches/safari-613.1.16.31-branch/Source/_javascript_Core/ChangeLog	2022-02-08 22:55:04 UTC (rev 289438)
+++ branches/safari-613.1.16.31-branch/Source/_javascript_Core/ChangeLog	2022-02-08 23:06:35 UTC (rev 289439)
@@ -1,3 +1,38 @@
+2022-02-08  Russell Epstein  <[email protected]>
+
+        Cherry-pick r289024. rdar://problem/88654211
+
+    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-01-28  Russell Epstein  <[email protected]>
 
         Cherry-pick r287961. rdar://problem/86282584

Modified: branches/safari-613.1.16.31-branch/Source/_javascript_Core/assembler/SecureARM64EHashPins.cpp (289438 => 289439)


--- branches/safari-613.1.16.31-branch/Source/_javascript_Core/assembler/SecureARM64EHashPins.cpp	2022-02-08 22:55:04 UTC (rev 289438)
+++ branches/safari-613.1.16.31-branch/Source/_javascript_Core/assembler/SecureARM64EHashPins.cpp	2022-02-08 23:06:35 UTC (rev 289439)
@@ -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-613.1.16.31-branch/Source/_javascript_Core/assembler/SecureARM64EHashPinsInlines.h (289438 => 289439)


--- branches/safari-613.1.16.31-branch/Source/_javascript_Core/assembler/SecureARM64EHashPinsInlines.h	2022-02-08 22:55:04 UTC (rev 289438)
+++ branches/safari-613.1.16.31-branch/Source/_javascript_Core/assembler/SecureARM64EHashPinsInlines.h	2022-02-08 23:06:35 UTC (rev 289439)
@@ -98,7 +98,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