diff options
author | Akira Hatanaka <ahatanaka@mips.com> | 2012-09-27 03:13:59 +0000 |
---|---|---|
committer | Akira Hatanaka <ahatanaka@mips.com> | 2012-09-27 03:13:59 +0000 |
commit | a216401621bf23a672accdf6d2d1cf46ef97b4ee (patch) | |
tree | e733d28a4540881182083213cfca97c3527bd0b0 /lib/Target/Mips/MipsDSPInstrFormats.td | |
parent | 01f7089bca51744226306e09db4954e3df02b3be (diff) | |
download | llvm-a216401621bf23a672accdf6d2d1cf46ef97b4ee.tar.gz llvm-a216401621bf23a672accdf6d2d1cf46ef97b4ee.tar.bz2 llvm-a216401621bf23a672accdf6d2d1cf46ef97b4ee.tar.xz |
MIPS DSP: ADDU.QB instruction sub-class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164754 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Mips/MipsDSPInstrFormats.td')
-rw-r--r-- | lib/Target/Mips/MipsDSPInstrFormats.td | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/lib/Target/Mips/MipsDSPInstrFormats.td b/lib/Target/Mips/MipsDSPInstrFormats.td index c22bbdc208..5680b736bd 100644 --- a/lib/Target/Mips/MipsDSPInstrFormats.td +++ b/lib/Target/Mips/MipsDSPInstrFormats.td @@ -29,6 +29,34 @@ class PseudoDSP<dag outs, dag ins, list<dag> pattern>: let Predicates = [HasDSP]; } +// ADDU.QB sub-class format. +class ADDU_QB_FMT<bits<5> op> : DSPInst { + bits<5> rd; + bits<5> rs; + bits<5> rt; + + let Opcode = SPECIAL3_OPCODE.V; + + let Inst{25-21} = rs; + let Inst{20-16} = rt; + let Inst{15-11} = rd; + let Inst{10-6} = op; + let Inst{5-0} = 0b010000; +} + +class RADDU_W_QB_FMT<bits<5> op> : DSPInst { + bits<5> rd; + bits<5> rs; + + let Opcode = SPECIAL3_OPCODE.V; + + let Inst{25-21} = rs; + let Inst{20-16} = 0; + let Inst{15-11} = rd; + let Inst{10-6} = op; + let Inst{5-0} = 0b010000; +} + // DPA.W.PH sub-class format. class DPA_W_PH_FMT<bits<5> op> : DSPInst { bits<2> ac; |