[mips] Split the DSP control register and define one register for each field of
authorAkira Hatanaka <ahatanaka@mips.com>
Fri, 3 May 2013 18:37:49 +0000 (18:37 +0000)
committerAkira Hatanaka <ahatanaka@mips.com>
Fri, 3 May 2013 18:37:49 +0000 (18:37 +0000)
commita2b2200ff8684ba23c64b24c0128a78f4b6e3c73
treed2449ab47f16331a31b2a270ec1e133e0651a845
parent4bcd5f888fa762613cf8096a79ba7b8a72665de2
[mips] Split the DSP control register and define one register for each field of
its fields.

This removes false dependencies between DSP instructions which access different
fields of the the control register. Implicit register operands are added to
instructions RDDSP and WRDSP after instruction selection, depending on the
value of the mask operand.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181041 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/MipsDSPInstrInfo.td
lib/Target/Mips/MipsRegisterInfo.cpp
lib/Target/Mips/MipsRegisterInfo.td
lib/Target/Mips/MipsSEISelDAGToDAG.cpp
lib/Target/Mips/MipsSEISelDAGToDAG.h
test/CodeGen/Mips/dsp-r1.ll