Title: [173886] trunk/Source/_javascript_Core
Revision
173886
Author
commit-qu...@webkit.org
Date
2014-09-23 13:21:51 -0700 (Tue, 23 Sep 2014)

Log Message

[CLoop] - Fix CLoop on the 32-bit Big-Endians
https://bugs.webkit.org/show_bug.cgi?id=137020

Patch by Tomas Popela <tpop...@redhat.com> on 2014-09-23
Reviewed by Mark Lam.

* llint/LowLevelInterpreter.asm:
* llint/LowLevelInterpreter32_64.asm:

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (173885 => 173886)


--- trunk/Source/_javascript_Core/ChangeLog	2014-09-23 19:53:08 UTC (rev 173885)
+++ trunk/Source/_javascript_Core/ChangeLog	2014-09-23 20:21:51 UTC (rev 173886)
@@ -1,3 +1,13 @@
+2014-09-23  Tomas Popela  <tpop...@redhat.com>
+
+        [CLoop] - Fix CLoop on the 32-bit Big-Endians
+        https://bugs.webkit.org/show_bug.cgi?id=137020
+
+        Reviewed by Mark Lam.
+
+        * llint/LowLevelInterpreter.asm:
+        * llint/LowLevelInterpreter32_64.asm:
+
 2014-09-23  Joseph Pecoraro  <pecor...@apple.com>
 
         Web Inspector: Should be able to attach a debugger to a JSContext before anything is executed

Modified: trunk/Source/_javascript_Core/llint/LowLevelInterpreter.asm (173885 => 173886)


--- trunk/Source/_javascript_Core/llint/LowLevelInterpreter.asm	2014-09-23 19:53:08 UTC (rev 173885)
+++ trunk/Source/_javascript_Core/llint/LowLevelInterpreter.asm	2014-09-23 20:21:51 UTC (rev 173886)
@@ -533,13 +533,21 @@
 end
 
 macro functionForCallCodeBlockGetter(targetRegister)
-    loadp Callee[cfr], targetRegister
+    if JSVALUE64
+        loadp Callee[cfr], targetRegister
+    else
+        loadp Callee + PayloadOffset[cfr], targetRegister
+    end
     loadp JSFunction::m_executable[targetRegister], targetRegister
     loadp FunctionExecutable::m_codeBlockForCall[targetRegister], targetRegister
 end
 
 macro functionForConstructCodeBlockGetter(targetRegister)
-    loadp Callee[cfr], targetRegister
+    if JSVALUE64
+        loadp Callee[cfr], targetRegister
+    else
+        loadp Callee + PayloadOffset[cfr], targetRegister
+    end
     loadp JSFunction::m_executable[targetRegister], targetRegister
     loadp FunctionExecutable::m_codeBlockForConstruct[targetRegister], targetRegister
 end

Modified: trunk/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm (173885 => 173886)


--- trunk/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm	2014-09-23 19:53:08 UTC (rev 173885)
+++ trunk/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm	2014-09-23 20:21:51 UTC (rev 173886)
@@ -392,7 +392,7 @@
     loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3
     loadp VM::callFrameForThrow[t3], cfr
 
-    loadp CallerFrame + PayloadOffset[cfr], cfr
+    loadp CallerFrame[cfr], cfr
 
     if ARMv7
         vmEntryRecord(cfr, t3)
@@ -689,7 +689,7 @@
 end
 
 macro branchIfException(label)
-    loadp Callee[cfr], t3
+    loadp Callee + PayloadOffset[cfr], t3
     andp MarkedBlockMask, t3
     loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3
     bieq VM::m_exception + TagOffset[t3], EmptyValueTag, .noException
@@ -2136,7 +2136,7 @@
         loadp JSFunction::m_executable[t1], t1
         checkStackPointerAlignment(t3, 0xdead0001)
         call executableOffsetToFunction[t1]
-        loadp Callee[cfr], t3
+        loadp Callee + PayloadOffset[cfr], t3
         andp MarkedBlockMask, t3
         loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3
         addp 8, sp
@@ -2159,7 +2159,7 @@
         else
             call executableOffsetToFunction[t1]
         end
-        loadp Callee[cfr], t3
+        loadp Callee + PayloadOffset[cfr], t3
         andp MarkedBlockMask, t3
         loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3
         addp 8, sp
@@ -2197,7 +2197,7 @@
     loadp CodeBlock[cfr], t0
     loadisFromInstruction(4, t2)
 
-    loadp ScopeChain[cfr], t0
+    loadp ScopeChain + PayloadOffset[cfr], t0
     btiz t2, .resolveScopeLoopEnd
 
 .resolveScopeLoop:
@@ -2256,7 +2256,7 @@
 
 macro loadWithStructureCheck(operand, slowPath)
     loadisFromInstruction(operand, t0)
-    loadp [cfr, t0, 8], t0
+    loadp PayloadOffset[cfr, t0, 8], t0
     loadpFromInstruction(5, t1)
     bpneq JSCell::m_structureID[t0], t1, slowPath
 end
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to