summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulien Brianceau <jbriance@cisco.com>2014-02-11 15:48:35 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-04-08 10:42:31 +0200
commit0546c8656a3728bf4375da39027e096beba4f111 (patch)
tree6cff69ec9715053e5580f559132e04a2385cecd2
parent605fbb17c1f37591f6893b48a78b058a1ccaf15e (diff)
[mips] Fix or32 implementation in macro assembler.
This patch fixes JavaScript issues for the mips backend, especially in the DFG stage when using (x|0) expressions. Change-Id: I4c7c7280735481dc06ca24745d2e42b2d8e13ef5 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
-rw-r--r--Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h b/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h
index 298a25c29..e13ae7b34 100644
--- a/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h
+++ b/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h
@@ -396,8 +396,10 @@ public:
void or32(TrustedImm32 imm, RegisterID src, RegisterID dest)
{
- if (!imm.m_value && !m_fixedWidth)
+ if (!imm.m_value && !m_fixedWidth) {
+ move(src, dest);
return;
+ }
if (imm.m_value > 0 && imm.m_value < 65535 && !m_fixedWidth) {
m_assembler.ori(dest, src, imm.m_value);