1 // WebAssemblyInstrFormats.td - WebAssembly Instruction Formats -*- tblgen -*-//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
11 /// \brief WebAssembly instruction format definitions.
13 //===----------------------------------------------------------------------===//
15 // WebAssembly Instruction Format
16 class WebAssemblyInst<string cstr> : Instruction {
17 field bits<0> Inst; // Instruction encoding.
18 let Namespace = "WebAssembly";
20 let Constraints = cstr;
23 // Normal instructions
24 class I<dag oops, dag iops, list<dag> pattern, string cstr = "">
25 : WebAssemblyInst<cstr> {
26 dag OutOperandList = oops;
27 dag InOperandList = iops;
28 let Pattern = pattern;