Title: [198060] releases/WebKitGTK/webkit-2.4/Source/_javascript_Core
Revision
198060
Author
[email protected]
Date
2016-03-12 02:50:53 -0800 (Sat, 12 Mar 2016)

Log Message

LLINT op_put_to_scope and op_get_from_scope should use loadpFromInstruction to get operand from instruction
https://bugs.webkit.org/show_bug.cgi?id=132333

Unreviewed.

When loading operand variable from instruction in
_llint_op_get_from_scope and _llint_op_put_to_scope use
loadpFromInstruction instead of loadisFromInstruction. Also when
saving the operand in LLIntSlowPaths.cpp use the same way as in
CodeBlock.cpp.

Patch by Tomas Popela <[email protected]> on 2016-03-12

* llint/LLIntSlowPaths.cpp:
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:

Modified Paths

Diff

Modified: releases/WebKitGTK/webkit-2.4/Source/_javascript_Core/ChangeLog (198059 => 198060)


--- releases/WebKitGTK/webkit-2.4/Source/_javascript_Core/ChangeLog	2016-03-12 10:50:38 UTC (rev 198059)
+++ releases/WebKitGTK/webkit-2.4/Source/_javascript_Core/ChangeLog	2016-03-12 10:50:53 UTC (rev 198060)
@@ -1,3 +1,20 @@
+2016-03-12  Tomas Popela  <[email protected]>
+
+        LLINT op_put_to_scope and op_get_from_scope should use loadpFromInstruction to get operand from instruction
+        https://bugs.webkit.org/show_bug.cgi?id=132333
+
+        Unreviewed.
+
+        When loading operand variable from instruction in
+        _llint_op_get_from_scope and _llint_op_put_to_scope use
+        loadpFromInstruction instead of loadisFromInstruction. Also when
+        saving the operand in LLIntSlowPaths.cpp use the same way as in
+        CodeBlock.cpp.
+
+        * llint/LLIntSlowPaths.cpp:
+        * llint/LowLevelInterpreter32_64.asm:
+        * llint/LowLevelInterpreter64.asm:
+
 2016-03-10  Carlos Garcia Campos  <[email protected]>
 
         Fix the build in Windows.

Modified: releases/WebKitGTK/webkit-2.4/Source/_javascript_Core/llint/LLIntSlowPaths.cpp (198059 => 198060)


--- releases/WebKitGTK/webkit-2.4/Source/_javascript_Core/llint/LLIntSlowPaths.cpp	2016-03-12 10:50:38 UTC (rev 198059)
+++ releases/WebKitGTK/webkit-2.4/Source/_javascript_Core/llint/LLIntSlowPaths.cpp	2016-03-12 10:50:53 UTC (rev 198060)
@@ -1354,7 +1354,7 @@
             CodeBlock* codeBlock = exec->codeBlock();
             ConcurrentJITLocker locker(codeBlock->m_lock);
             pc[5].u.structure.set(exec->vm(), codeBlock->ownerExecutable(), scope->structure());
-            pc[6].u.operand = slot.cachedOffset();
+            pc[6].u.pointer = reinterpret_cast<void*>(slot.cachedOffset());
         }
     }
 
@@ -1381,7 +1381,7 @@
         if (slot.isCacheable() && slot.base() == scope && scope->structure()->propertyAccessesAreCacheable()) {
             ConcurrentJITLocker locker(codeBlock->m_lock);
             pc[5].u.structure.set(exec->vm(), codeBlock->ownerExecutable(), scope->structure());
-            pc[6].u.operand = slot.cachedOffset();
+            pc[6].u.pointer = reinterpret_cast<void*>(slot.cachedOffset());
         }
     }
 

Modified: releases/WebKitGTK/webkit-2.4/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm (198059 => 198060)


--- releases/WebKitGTK/webkit-2.4/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm	2016-03-12 10:50:38 UTC (rev 198059)
+++ releases/WebKitGTK/webkit-2.4/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm	2016-03-12 10:50:53 UTC (rev 198060)
@@ -2277,7 +2277,7 @@
 end
 
 macro getProperty()
-    loadisFromInstruction(6, t3)
+    loadpFromInstruction(6, t3)
     loadPropertyAtVariableOffset(t3, t0, t1, t2)
     valueProfile(t1, t2, 28, t0)
     loadisFromInstruction(1, t0)
@@ -2297,7 +2297,7 @@
 
 macro getClosureVar()
     loadp JSVariableObject::m_registers[t0], t0
-    loadisFromInstruction(6, t3)
+    loadpFromInstruction(6, t3)
     loadp TagOffset[t0, t3, 8], t1
     loadp PayloadOffset[t0, t3, 8], t2
     valueProfile(t1, t2, 28, t0)
@@ -2356,7 +2356,7 @@
 macro putProperty()
     loadisFromInstruction(3, t1)
     loadConstantOrVariable(t1, t2, t3)
-    loadisFromInstruction(6, t1)
+    loadpFromInstruction(6, t1)
     storePropertyAtVariableOffset(t1, t0, t2, t3)
 end
 
@@ -2374,7 +2374,7 @@
     loadisFromInstruction(3, t1)
     loadConstantOrVariable(t1, t2, t3)
     loadp JSVariableObject::m_registers[t0], t0
-    loadisFromInstruction(6, t1)
+    loadpFromInstruction(6, t1)
     storei t2, TagOffset[t0, t1, 8]
     storei t3, PayloadOffset[t0, t1, 8]
 end

Modified: releases/WebKitGTK/webkit-2.4/Source/_javascript_Core/llint/LowLevelInterpreter64.asm (198059 => 198060)


--- releases/WebKitGTK/webkit-2.4/Source/_javascript_Core/llint/LowLevelInterpreter64.asm	2016-03-12 10:50:38 UTC (rev 198059)
+++ releases/WebKitGTK/webkit-2.4/Source/_javascript_Core/llint/LowLevelInterpreter64.asm	2016-03-12 10:50:53 UTC (rev 198060)
@@ -2047,7 +2047,7 @@
 end
 
 macro getProperty()
-    loadisFromInstruction(6, t1)
+    loadpFromInstruction(6, t1)
     loadPropertyAtVariableOffset(t1, t0, t2)
     valueProfile(t2, 7, t0)
     loadisFromInstruction(1, t0)
@@ -2064,7 +2064,7 @@
 
 macro getClosureVar()
     loadp JSVariableObject::m_registers[t0], t0
-    loadisFromInstruction(6, t1)
+    loadpFromInstruction(6, t1)
     loadq [t0, t1, 8], t0
     valueProfile(t0, 7, t1)
     loadisFromInstruction(1, t1)
@@ -2121,7 +2121,7 @@
 macro putProperty()
     loadisFromInstruction(3, t1)
     loadConstantOrVariable(t1, t2)
-    loadisFromInstruction(6, t1)
+    loadpFromInstruction(6, t1)
     storePropertyAtVariableOffset(t1, t0, t2)
 end
 
@@ -2138,7 +2138,7 @@
     loadisFromInstruction(3, t1)
     loadConstantOrVariable(t1, t2)
     loadp JSVariableObject::m_registers[t0], t0
-    loadisFromInstruction(6, t1)
+    loadpFromInstruction(6, t1)
     storeq t2, [t0, t1, 8]
 end
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to