diff options
author | Akira Hatanaka <ahatanaka@mips.com> | 2013-04-18 00:52:44 +0000 |
---|---|---|
committer | Akira Hatanaka <ahatanaka@mips.com> | 2013-04-18 00:52:44 +0000 |
commit | 26aef5b7d64e2dd2ed49123baf1e1075b648824f (patch) | |
tree | debdc4fc1f522e6bf496d2f0d50fd88561da2a6d /lib/Target/Mips/MipsDSPInstrFormats.td | |
parent | 86924b4182537745659f2660244f3402c1e1ca4d (diff) | |
download | llvm-26aef5b7d64e2dd2ed49123baf1e1075b648824f.tar.gz llvm-26aef5b7d64e2dd2ed49123baf1e1075b648824f.tar.bz2 llvm-26aef5b7d64e2dd2ed49123baf1e1075b648824f.tar.xz |
[mips] DSP-ASE move from HI/LO register instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179739 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Mips/MipsDSPInstrFormats.td')
-rw-r--r-- | lib/Target/Mips/MipsDSPInstrFormats.td | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/lib/Target/Mips/MipsDSPInstrFormats.td b/lib/Target/Mips/MipsDSPInstrFormats.td index a72a763fde..cf09113cd8 100644 --- a/lib/Target/Mips/MipsDSPInstrFormats.td +++ b/lib/Target/Mips/MipsDSPInstrFormats.td @@ -219,6 +219,33 @@ class MULT_FMT<bits<6> opcode, bits<6> funct> : DSPInst { let Inst{5-0} = funct; } +// MFHI sub-class format. +class MFHI_FMT<bits<6> funct> : DSPInst { + bits<5> rd; + bits<2> ac; + + let Inst{31-26} = 0; + let Inst{25-23} = 0; + let Inst{22-21} = ac; + let Inst{20-16} = 0; + let Inst{15-11} = rd; + let Inst{10-6} = 0; + let Inst{5-0} = funct; +} + +// MTHI sub-class format. +class MTHI_FMT<bits<6> funct> : DSPInst { + bits<5> rs; + bits<2> ac; + + let Inst{31-26} = 0; + let Inst{25-21} = rs; + let Inst{20-13} = 0; + let Inst{12-11} = ac; + let Inst{10-6} = 0; + let Inst{5-0} = funct; +} + // EXTR.W sub-class format (type 1). class EXTR_W_TY1_FMT<bits<5> op> : DSPInst { bits<5> rt; |