From f644083c64c7837f6d8cdc1b102e52c762ee93b0 Mon Sep 17 00:00:00 2001 From: "dusan.milosavljevic@imgtec.com" Date: Wed, 29 Oct 2014 16:16:03 +0000 Subject: [PATCH] MIPS: Remove madd.d usage for r6. TEST=/benchmarks/octane/crypto BUG= R=paul.lind@imgtec.com Review URL: https://codereview.chromium.org/688693002 Cr-Commit-Position: refs/heads/master@{#24988} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24988 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/mips/assembler-mips.cc | 1 + src/mips/lithium-mips.cc | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/mips/assembler-mips.cc b/src/mips/assembler-mips.cc index f1e5dfb670..d6a4f793f4 100644 --- a/src/mips/assembler-mips.cc +++ b/src/mips/assembler-mips.cc @@ -2065,6 +2065,7 @@ void Assembler::mul_d(FPURegister fd, FPURegister fs, FPURegister ft) { void Assembler::madd_d(FPURegister fd, FPURegister fr, FPURegister fs, FPURegister ft) { + DCHECK(IsMipsArchVariant(kMips32r2)); GenInstrRegister(COP1X, fr, ft, fs, fd, MADD_D); } diff --git a/src/mips/lithium-mips.cc b/src/mips/lithium-mips.cc index c7f3517a8e..7d5ffadd49 100644 --- a/src/mips/lithium-mips.cc +++ b/src/mips/lithium-mips.cc @@ -1517,7 +1517,7 @@ LInstruction* LChunkBuilder::DoMul(HMul* instr) { return DefineAsRegister(mul); } else if (instr->representation().IsDouble()) { - if (IsMipsArchVariant(kMips32r2) || IsMipsArchVariant(kMips32r6)) { + if (IsMipsArchVariant(kMips32r2)) { if (instr->HasOneUse() && instr->uses().value()->IsAdd()) { HAdd* add = HAdd::cast(instr->uses().value()); if (instr == add->left()) { @@ -1590,7 +1590,7 @@ LInstruction* LChunkBuilder::DoAdd(HAdd* instr) { LInstruction* result = DefineAsRegister(add); return result; } else if (instr->representation().IsDouble()) { - if (IsMipsArchVariant(kMips32r2) || IsMipsArchVariant(kMips32r6)) { + if (IsMipsArchVariant(kMips32r2)) { if (instr->left()->IsMul()) return DoMultiplyAdd(HMul::cast(instr->left()), instr->right());