Title: [149172] trunk/Source/_javascript_Core
Revision
149172
Author
commit-qu...@webkit.org
Date
2013-04-26 02:36:38 -0700 (Fri, 26 Apr 2013)

Log Message

Fix SH4 build broken since r149159.
https://bugs.webkit.org/show_bug.cgi?id=115229

Add BranchTruncateType enum in SH4 port and handle it in branchTruncateDoubleToInt32.

Patch by Julien Brianceau <jbrianc...@nds.com> on 2013-04-26
Reviewed by Allan Sandfeld Jensen.

* assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::branchTruncateDoubleToInt32):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (149171 => 149172)


--- trunk/Source/_javascript_Core/ChangeLog	2013-04-26 09:16:34 UTC (rev 149171)
+++ trunk/Source/_javascript_Core/ChangeLog	2013-04-26 09:36:38 UTC (rev 149172)
@@ -1,3 +1,15 @@
+2013-04-26  Julien Brianceau  <jbrianc...@nds.com>
+
+        Fix SH4 build broken since r149159.
+        https://bugs.webkit.org/show_bug.cgi?id=115229
+
+        Add BranchTruncateType enum in SH4 port and handle it in branchTruncateDoubleToInt32.
+
+        Reviewed by Allan Sandfeld Jensen.
+
+        * assembler/MacroAssemblerSH4.h:
+        (JSC::MacroAssemblerSH4::branchTruncateDoubleToInt32):
+
 2013-04-25  Mark Hahnenberg  <mhahnenb...@apple.com>
 
         SuperRegion doesn't call deallocate() on its PageReservation

Modified: trunk/Source/_javascript_Core/assembler/MacroAssemblerSH4.h (149171 => 149172)


--- trunk/Source/_javascript_Core/assembler/MacroAssemblerSH4.h	2013-04-26 09:16:34 UTC (rev 149171)
+++ trunk/Source/_javascript_Core/assembler/MacroAssemblerSH4.h	2013-04-26 09:36:38 UTC (rev 149172)
@@ -1518,16 +1518,17 @@
         releaseScratch(addressTempRegister);
     }
 
-    Jump branchTruncateDoubleToInt32(FPRegisterID src, RegisterID dest)
+    enum BranchTruncateType { BranchIfTruncateFailed, BranchIfTruncateSuccessful };
+    Jump branchTruncateDoubleToInt32(FPRegisterID src, RegisterID dest, BranchTruncateType branchType = BranchIfTruncateFailed)
     {
         m_assembler.ftrcdrmfpul(src);
         m_assembler.stsfpulReg(dest);
         m_assembler.loadConstant(0x7fffffff, scratchReg3);
-        m_assembler.cmplRegReg(dest, scratchReg3, SH4Condition(Equal));
+        m_assembler.cmplRegReg(dest, scratchReg3, SH4Condition(branchType == BranchIfTruncateFailed ? Equal : NotEqual));
         m_assembler.ensureSpace(m_assembler.maxInstructionSize + 14, sizeof(uint32_t));
         m_assembler.branch(BT_OPCODE, 2);
         m_assembler.addlImm8r(1, scratchReg3);
-        m_assembler.cmplRegReg(dest, scratchReg3, SH4Condition(Equal));
+        m_assembler.cmplRegReg(dest, scratchReg3, SH4Condition(branchType == BranchIfTruncateFailed ? Equal : NotEqual));
         return branchTrue();
     }
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to