aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/SystemZ/SystemZInstrFormats.td
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@linux.vnet.ibm.com>2013-07-02 14:56:45 +0000
committerRichard Sandiford <rsandifo@linux.vnet.ibm.com>2013-07-02 14:56:45 +0000
commit9188443a2d35352c4e8a2cffd1b4d31d47843b26 (patch)
tree980fdaf6bdacd1e193a723d27be6d21a03eddc4e /lib/Target/SystemZ/SystemZInstrFormats.td
parent850ba41ed4252aae61e62140cdf0c61dbb444563 (diff)
downloadexternal_llvm-9188443a2d35352c4e8a2cffd1b4d31d47843b26.zip
external_llvm-9188443a2d35352c4e8a2cffd1b4d31d47843b26.tar.gz
external_llvm-9188443a2d35352c4e8a2cffd1b4d31d47843b26.tar.bz2
[SystemZ] Add the MVC instruction
This is the first use of D(L,B) addressing, which required a fair bit of surgery. For that reason, the patch just adds the instruction definition and the associated assembler and disassembler support. A later patch will actually make use of it for codegen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185433 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/SystemZ/SystemZInstrFormats.td')
-rw-r--r--lib/Target/SystemZ/SystemZInstrFormats.td13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/Target/SystemZ/SystemZInstrFormats.td b/lib/Target/SystemZ/SystemZInstrFormats.td
index ac0300c..58110ec 100644
--- a/lib/Target/SystemZ/SystemZInstrFormats.td
+++ b/lib/Target/SystemZ/SystemZInstrFormats.td
@@ -383,6 +383,19 @@ class InstSIY<bits<16> op, dag outs, dag ins, string asmstr, list<dag> pattern>
let Has20BitOffset = 1;
}
+class InstSS<bits<8> op, dag outs, dag ins, string asmstr, list<dag> pattern>
+ : InstSystemZ<6, outs, ins, asmstr, pattern> {
+ field bits<48> Inst;
+ field bits<48> SoftFail = 0;
+
+ bits<24> BDL1;
+ bits<16> BD2;
+
+ let Inst{47-40} = op;
+ let Inst{39-16} = BDL1;
+ let Inst{15-0} = BD2;
+}
+
//===----------------------------------------------------------------------===//
// Instruction definitions with semantics
//===----------------------------------------------------------------------===//