diff options
Diffstat (limited to 'llvm/lib/Target/Alpha/AlphaInstrFormats.td')
| -rw-r--r-- | llvm/lib/Target/Alpha/AlphaInstrFormats.td | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/lib/Target/Alpha/AlphaInstrFormats.td b/llvm/lib/Target/Alpha/AlphaInstrFormats.td index c34b624dcc3..7180409ef51 100644 --- a/llvm/lib/Target/Alpha/AlphaInstrFormats.td +++ b/llvm/lib/Target/Alpha/AlphaInstrFormats.td @@ -50,6 +50,15 @@ class MForm<bits<6> opcode, string asmstr> let Inst{20-16} = Rb; let Inst{15-0} = disp; } +class MfcForm<bits<6> opcode, bits<16> fc, string asmstr> + : InstAlpha<opcode, (ops GPRC:$RA, GPRC:$RB), asmstr> { + bits<5> Ra; + bits<5> Rb; + + let Inst{25-21} = Ra; + let Inst{20-16} = Rb; + let Inst{15-0} = fc; +} class MgForm<bits<6> opcode, string asmstr> : InstAlpha<opcode, (ops GPRC:$RA, s16imm:$DISP, GPRC:$RB, s16imm:$NUM), asmstr> { |

