Title: [240524] branches/safari-607-branch
Revision
240524
Author
[email protected]
Date
2019-01-25 15:49:38 -0800 (Fri, 25 Jan 2019)

Log Message

Cherry-pick r240329. rdar://problem/47458354

This is for a follow up fix that was missed in the cherry-pick for rdar://problem/47458354.

    2019-01-22  Yusuke Suzuki  <[email protected]>

    Unreviewed, fix initial global lexical binding epoch
    https://bugs.webkit.org/show_bug.cgi?id=193603
    <rdar://problem/47380869>

JSTests:

    * stress/global-lexical-binding-epoch-should-be-correct-one.js: Added.
    (f1.f2.f3.f4):
    (f1.f2.f3):
    (f1.f2):
    (f1):

Source/_javascript_Core:

    * bytecode/CodeBlock.cpp:
    (JSC::CodeBlock::finishCreation):

Modified Paths

Added Paths

Property Changed

Diff

Index: branches/safari-607-branch =================================================================== --- branches/safari-607-branch 2019-01-25 23:48:18 UTC (rev 240523) +++ branches/safari-607-branch 2019-01-25 23:49:38 UTC (rev 240524)

Property changes: branches/safari-607-branch


Modified: svn:mergeinfo

-/trunk:53455,239940 \ No newline at end of property +/trunk:53455,239940,240329 \ No newline at end of property

Modified: branches/safari-607-branch/JSTests/ChangeLog (240523 => 240524)


--- branches/safari-607-branch/JSTests/ChangeLog	2019-01-25 23:48:18 UTC (rev 240523)
+++ branches/safari-607-branch/JSTests/ChangeLog	2019-01-25 23:49:38 UTC (rev 240524)
@@ -1,5 +1,23 @@
 2019-01-25  Mark Lam  <[email protected]>
 
+        Cherry-pick r240329. rdar://problem/47458354
+
+        This is for a follow up fix that was missed in the cherry-pick for rdar://problem/47458354.
+
+    2019-01-22  Yusuke Suzuki  <[email protected]>
+
+            Unreviewed, fix initial global lexical binding epoch
+            https://bugs.webkit.org/show_bug.cgi?id=193603
+            <rdar://problem/47380869>
+
+            * stress/global-lexical-binding-epoch-should-be-correct-one.js: Added.
+            (f1.f2.f3.f4):
+            (f1.f2.f3):
+            (f1.f2):
+            (f1):
+
+2019-01-25  Mark Lam  <[email protected]>
+
         Cherry-pick r239940. rdar://problem/47295340
 
     2019-01-14  Mark Lam  <[email protected]>

Copied: branches/safari-607-branch/JSTests/stress/global-lexical-binding-epoch-should-be-correct-one.js (from rev 240329, trunk/JSTests/stress/global-lexical-binding-epoch-should-be-correct-one.js) (0 => 240524)


--- branches/safari-607-branch/JSTests/stress/global-lexical-binding-epoch-should-be-correct-one.js	                        (rev 0)
+++ branches/safari-607-branch/JSTests/stress/global-lexical-binding-epoch-should-be-correct-one.js	2019-01-25 23:49:38 UTC (rev 240524)
@@ -0,0 +1,31 @@
+globalThis.a = 0;
+function f1(v)
+{
+    let x = 40;
+    function f2() {
+        x;
+        let y = 41;
+        function f3() {
+            let z = 44;
+            function f4() {
+                z;
+                if (v)
+                    return a;
+                return 1;
+            }
+            return f4();
+        }
+        return f3();
+    }
+    return f2();
+}
+var N = 2;
+for (var i = 0; i < N; ++i) {
+    $.evalScript(`let i${i} = 42`);
+}
+if (f1(false) !== 1) {
+    throw new Error('first');
+}
+$.evalScript(`let a = 42`);
+if (f1(true) !== 42)
+    throw new Error('second');

Modified: branches/safari-607-branch/Source/_javascript_Core/ChangeLog (240523 => 240524)


--- branches/safari-607-branch/Source/_javascript_Core/ChangeLog	2019-01-25 23:48:18 UTC (rev 240523)
+++ branches/safari-607-branch/Source/_javascript_Core/ChangeLog	2019-01-25 23:49:38 UTC (rev 240524)
@@ -1,5 +1,20 @@
 2019-01-25  Mark Lam  <[email protected]>
 
+        Cherry-pick r240329. rdar://problem/47458354
+
+        This is for a follow up fix that was missed in the cherry-pick for rdar://problem/47458354.
+
+    2019-01-22  Yusuke Suzuki  <[email protected]>
+
+            Unreviewed, fix initial global lexical binding epoch
+            https://bugs.webkit.org/show_bug.cgi?id=193603
+            <rdar://problem/47380869>
+
+            * bytecode/CodeBlock.cpp:
+            (JSC::CodeBlock::finishCreation):
+
+2019-01-25  Mark Lam  <[email protected]>
+
         Cherry-pick r239940. rdar://problem/47295340
 
         Also picked up a few missing changes in JITPropertyAccess32_64.cpp from the

Modified: branches/safari-607-branch/Source/_javascript_Core/bytecode/CodeBlock.cpp (240523 => 240524)


--- branches/safari-607-branch/Source/_javascript_Core/bytecode/CodeBlock.cpp	2019-01-25 23:48:18 UTC (rev 240523)
+++ branches/safari-607-branch/Source/_javascript_Core/bytecode/CodeBlock.cpp	2019-01-25 23:49:38 UTC (rev 240524)
@@ -625,7 +625,7 @@
                     metadata.m_symbolTable.set(vm, this, op.lexicalEnvironment->symbolTable());
             } else if (JSScope* constantScope = JSScope::constantScopeForCodeBlock(op.type, this)) {
                 metadata.m_constantScope.set(vm, this, constantScope);
-                if (op.type == GlobalLexicalVar || op.type == GlobalLexicalVarWithVarInjectionChecks)
+                if (op.type == GlobalProperty || op.type == GlobalPropertyWithVarInjectionChecks)
                     metadata.m_globalLexicalBindingEpoch = m_globalObject->globalLexicalBindingEpoch();
             } else
                 metadata.m_globalObject = nullptr;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to