OSDN Git Service

[mips][mips64r6] madd.[ds], msub.[ds], nmadd.[ds], and nmsub.[ds] are not available...
authorDaniel Sanders <daniel.sanders@imgtec.com>
Thu, 12 Jun 2014 11:04:18 +0000 (11:04 +0000)
committerDaniel Sanders <daniel.sanders@imgtec.com>
Thu, 12 Jun 2014 11:04:18 +0000 (11:04 +0000)
commita61aa38ee1739c8e89b8faa769a8deb7eb16e83c
tree9d13ed4e834396a2c89bf05596f56a03da5edb72
parentd94bc707c46c29c1dce9dd276b603ccff3ebfa83
[mips][mips64r6] madd.[ds], msub.[ds], nmadd.[ds], and nmsub.[ds] are not available on MIPS32r6/MIPS64r6

Summary:
This patch updates both the assembler and the code generator.

MIPS32r6/MIPS64r6 replaces them with maddf.[ds] and msubf.[ds] which are fused
multiply-add/sub operations. We don't emit these yet, this patch only prevents the removed instructions from being emitted.

Depends on D3955

Reviewers: jkolek, zoran.jovanovic, vmedic

Reviewed By: vmedic

Differential Revision: http://reviews.llvm.org/D3956

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@210763 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/Mips32r6InstrInfo.td
lib/Target/Mips/MipsInstrFPU.td
lib/Target/Mips/MipsInstrInfo.td
test/CodeGen/Mips/fmadd1.ll
test/MC/Mips/mips32r6/invalid-mips32r2.s [new file with mode: 0644]