blob: af5fcd8c09cfe7f43b0671c7a4df82b05ff56e16 [file] [log] [blame]
JF Bastienaf111db2015-08-24 22:16:48 +00001//- WebAssemblyISD.def - WebAssembly ISD ---------------------------*- C++ -*-//
2//
Chandler Carruth2946cd72019-01-19 08:50:56 +00003// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
JF Bastienaf111db2015-08-24 22:16:48 +00006//
7//===----------------------------------------------------------------------===//
8///
9/// \file
Adrian Prantl5f8f34e42018-05-01 15:54:18 +000010/// This file describes the various WebAssembly ISD node types.
JF Bastienaf111db2015-08-24 22:16:48 +000011///
12//===----------------------------------------------------------------------===//
13
14// NOTE: NO INCLUDE GUARD DESIRED!
15
Dan Gohmanf71abef2015-09-09 16:13:47 +000016HANDLE_NODETYPE(CALL1)
17HANDLE_NODETYPE(CALL0)
JF Bastienaf111db2015-08-24 22:16:48 +000018HANDLE_NODETYPE(RETURN)
19HANDLE_NODETYPE(ARGUMENT)
Sam Clegg492f7522019-03-26 19:46:15 +000020// A wrapper node for TargetExternalSymbol, TargetGlobalAddress, and MCSymbol
JF Bastienaf111db2015-08-24 22:16:48 +000021HANDLE_NODETYPE(Wrapper)
Sam Clegg492f7522019-03-26 19:46:15 +000022// A special wapper used in PIC code for __memory_base/__table_base relcative
23// access.
24HANDLE_NODETYPE(WrapperPIC)
Dan Gohman231244c2015-11-13 00:46:31 +000025HANDLE_NODETYPE(BR_IF)
Dan Gohman14026062016-03-08 03:18:12 +000026HANDLE_NODETYPE(BR_TABLE)
Thomas Livelya0d25812018-09-07 21:54:46 +000027HANDLE_NODETYPE(SHUFFLE)
Thomas Lively55735d52018-10-20 01:31:18 +000028HANDLE_NODETYPE(VEC_SHL)
29HANDLE_NODETYPE(VEC_SHR_S)
30HANDLE_NODETYPE(VEC_SHR_U)
Heejin Ahnda419bd2018-11-14 02:46:21 +000031HANDLE_NODETYPE(THROW)
Thomas Livelyd99af232019-02-05 00:49:55 +000032HANDLE_NODETYPE(MEMORY_COPY)
Thomas Livelybba3f062019-02-13 22:25:18 +000033HANDLE_NODETYPE(MEMORY_FILL)
JF Bastienaf111db2015-08-24 22:16:48 +000034
35// add memory opcodes starting at ISD::FIRST_TARGET_MEMORY_OPCODE here...