blob: 142eccfbcaa5f9ace0e7d4bde529d29bacba53f0 [file] [log] [blame]
Dan Gohman10e730a2015-06-29 23:51:55 +00001// WebAssemblyInstrInfo.td-Describe the WebAssembly Instructions-*- tablegen -*-
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9//
10// WebAssembly Instruction definitions.
11//
12//===----------------------------------------------------------------------===//
13
14//===----------------------------------------------------------------------===//
15// WebAssembly Instruction Predicate Definitions.
16//===----------------------------------------------------------------------===//
17
JF Bastien03855df2015-07-01 23:41:25 +000018def HasAddr32 : Predicate<"!Subtarget->hasAddr64()">;
19def HasAddr64 : Predicate<"Subtarget->hasAddr64()">;
20def HasSIMD128 : Predicate<"Subtarget->hasSIMD128()">,
21 AssemblerPredicate<"FeatureSIMD128", "simd128">;
22
Dan Gohman10e730a2015-06-29 23:51:55 +000023//===----------------------------------------------------------------------===//
24// WebAssembly-specific DAG Node Types.
25//===----------------------------------------------------------------------===//
26
27//===----------------------------------------------------------------------===//
28// WebAssembly-specific DAG Nodes.
29//===----------------------------------------------------------------------===//
30
31//===----------------------------------------------------------------------===//
32// WebAssembly-specific Operands.
33//===----------------------------------------------------------------------===//
34
35//===----------------------------------------------------------------------===//
36// WebAssembly Instruction Format Definitions.
37//===----------------------------------------------------------------------===//
38
39include "WebAssemblyInstrFormats.td"
40
41//===----------------------------------------------------------------------===//
42// Additional sets of instructions.
43//===----------------------------------------------------------------------===//
44
45include "WebAssemblyInstrAtomics.td"
46include "WebAssemblyInstrSIMD.td"