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 //===----------------------------------------------------------------------===//
10 // WebAssembly instruction format definitions.
12 //===----------------------------------------------------------------------===//
14 // WebAssembly Instruction Format
15 class WebAssemblyInst<string cstr> : Instruction {
16 field bits<0> Inst; // Instruction encoding.
17 let Namespace = "WebAssembly";
19 let Constraints = cstr;
22 // Normal instructions
23 class I<dag oops, dag iops, list<dag> pattern, string cstr = "">
24 : WebAssemblyInst<cstr> {
25 dag OutOperandList = oops;
26 dag InOperandList = iops;
27 let Pattern = pattern;