Title: [285173] trunk/Source/_javascript_Core
Revision
285173
Author
ross.kirsl...@sony.com
Date
2021-11-02 12:26:52 -0700 (Tue, 02 Nov 2021)

Log Message

[JSC][LLInt] Reverse unintended effects of r285152
https://bugs.webkit.org/show_bug.cgi?id=232633

Reviewed by Saam Barati.

The previous patch was not intended to change the generated assembly whatsoever,
but it turns out that 3-argument syntax produces, e.g. `vsub` instead of `sub` on x86.

As such, this patch does away with the 3-arg cases and merely clarifies names as `rhs, lhs` across the board.

(Also: Fix a line from the previous patch where a macro was not referring to a passed label properly.)

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

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (285172 => 285173)


--- trunk/Source/_javascript_Core/ChangeLog	2021-11-02 19:20:13 UTC (rev 285172)
+++ trunk/Source/_javascript_Core/ChangeLog	2021-11-02 19:26:52 UTC (rev 285173)
@@ -1,3 +1,20 @@
+2021-11-02  Ross Kirsling  <ross.kirsl...@sony.com>
+
+        [JSC][LLInt] Reverse unintended effects of r285152
+        https://bugs.webkit.org/show_bug.cgi?id=232633
+
+        Reviewed by Saam Barati.
+
+        The previous patch was not intended to change the generated assembly whatsoever,
+        but it turns out that 3-argument syntax produces, e.g. `vsub` instead of `sub` on x86.
+
+        As such, this patch does away with the 3-arg cases and merely clarifies names as `rhs, lhs` across the board.
+
+        (Also: Fix a line from the previous patch where a macro was not referring to a passed label properly.)
+
+        * llint/LowLevelInterpreter32_64.asm:
+        * llint/LowLevelInterpreter64.asm:
+
 2021-11-02  Saam Barati  <sbar...@apple.com>
 
         EnumeratorGetByVal for IndexedMode+OwnStructureMode doesn't always recover the property name

Modified: trunk/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm (285172 => 285173)


--- trunk/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm	2021-11-02 19:20:13 UTC (rev 285172)
+++ trunk/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm	2021-11-02 19:26:52 UTC (rev 285173)
@@ -1135,7 +1135,7 @@
     .op1NotIntReady:
         get(m_dst, t1)
         fii2d t0, t2, ft0
-        doubleOperation(ft0, ft1, ft0)
+        doubleOperation(ft0, ft1)
         stored ft0, [cfr, t1, 8]
         dispatch()
 
@@ -1146,7 +1146,7 @@
         get(m_dst, t2)
         ci2ds t0, ft0
         fii2d t1, t3, ft1
-        doubleOperation(ft0, ft1, ft0)
+        doubleOperation(ft0, ft1)
         stored ft0, [cfr, t2, 8]
         dispatch()
 
@@ -1168,7 +1168,7 @@
 
 binaryOp(add, OpAdd,
     macro (lhs, rhs, slow) baddio rhs, lhs, slow end,
-    macro (left, right, result) addd left, right, result end)
+    macro (lhs, rhs) addd rhs, lhs end)
 
 
 binaryOpCustomStore(mul, OpMul,
@@ -1183,12 +1183,12 @@
         storei Int32Tag, TagOffset[cfr, index, 8]
         storei scratch, PayloadOffset[cfr, index, 8]
     end,
-    macro (left, right, result) muld left, right, result end)
+    macro (lhs, rhs) muld rhs, lhs end)
 
 
 binaryOp(sub, OpSub,
     macro (lhs, rhs, slow) bsubio rhs, lhs, slow end,
-    macro (left, right, result) subd left, right, result end)
+    macro (lhs, rhs) subd rhs, lhs end)
 
 
 binaryOpCustomStore(div, OpDiv,
@@ -1204,7 +1204,7 @@
         stored ft1, [cfr, index, 8]
     .done:
     end,
-    macro (left, right, result) divd left, right, result end)
+    macro (lhs, rhs) divd rhs, lhs end)
 
 
 llintOpWithReturn(op_unsigned, OpUnsigned, macro (size, get, dispatch, return)

Modified: trunk/Source/_javascript_Core/llint/LowLevelInterpreter64.asm (285172 => 285173)


--- trunk/Source/_javascript_Core/llint/LowLevelInterpreter64.asm	2021-11-02 19:20:13 UTC (rev 285172)
+++ trunk/Source/_javascript_Core/llint/LowLevelInterpreter64.asm	2021-11-02 19:26:52 UTC (rev 285173)
@@ -1199,7 +1199,7 @@
         get(m_dst, t2)
         addq numberTag, t0
         fq2d t0, ft0
-        doubleOperation(ft0, ft1, ft0)
+        doubleOperation(ft0, ft1)
         fd2q ft0, t0
         subq numberTag, t0
         storeq t0, [cfr, t2, 8]
@@ -1213,7 +1213,7 @@
         ci2ds t0, ft0
         addq numberTag, t1
         fq2d t1, ft1
-        doubleOperation(ft0, ft1, ft0)
+        doubleOperation(ft0, ft1)
         fd2q ft0, t0
         subq numberTag, t0
         storeq t0, [cfr, t2, 8]
@@ -1231,7 +1231,7 @@
             # Assume t3 is scratchable.
             btiz rhs, slow
             bineq rhs, -1, .notNeg2TwoThe31DivByNeg1
-            bieq lhs, -2147483648, .slow
+            bieq lhs, -2147483648, slow
         .notNeg2TwoThe31DivByNeg1:
             btinz lhs, .intOK
             bilt rhs, 0, slow
@@ -1244,7 +1244,7 @@
             orq numberTag, t0
             storeq t0, [cfr, index, 8]
         end,
-        macro (left, right, result) divd left, right, result end)
+        macro (lhs, rhs) divd rhs, lhs end)
 else
     slowPathOp(div)
 end
@@ -1262,7 +1262,7 @@
         orq numberTag, t3
         storeq t3, [cfr, index, 8]
     end,
-    macro (left, right, result) muld left, right, result end)
+    macro (lhs, rhs) muld rhs, lhs end)
 
 
 macro binaryOp(opcodeName, opcodeStruct, integerOperation, doubleOperation)
@@ -1277,12 +1277,12 @@
 
 binaryOp(add, OpAdd,
     macro (lhs, rhs, slow) baddio rhs, lhs, slow end,
-    macro (left, right, result) addd left, right, result end)
+    macro (lhs, rhs) addd rhs, lhs end)
 
 
 binaryOp(sub, OpSub,
     macro (lhs, rhs, slow) bsubio rhs, lhs, slow end,
-    macro (left, right, result) subd left, right, result end)
+    macro (lhs, rhs) subd rhs, lhs end)
 
 
 llintOpWithReturn(op_unsigned, OpUnsigned, macro (size, get, dispatch, return)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to