1//- WebAssemblyISD.def - WebAssembly ISD ---------------------------*- C++ -*-// 2// 3// 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 6// 7//===----------------------------------------------------------------------===// 8/// 9/// \file 10/// This file describes the various WebAssembly ISD node types. 11/// 12//===----------------------------------------------------------------------===// 13 14// NOTE: NO INCLUDE GUARD DESIRED! 15 16HANDLE_NODETYPE(CALL1) 17HANDLE_NODETYPE(CALL0) 18HANDLE_NODETYPE(CALL) 19HANDLE_NODETYPE(RET_CALL) 20HANDLE_NODETYPE(RETURN) 21HANDLE_NODETYPE(ARGUMENT) 22// A wrapper node for TargetExternalSymbol, TargetGlobalAddress, and MCSymbol 23HANDLE_NODETYPE(Wrapper) 24// A special wapper used in PIC code for __memory_base/__table_base relcative 25// access. 26HANDLE_NODETYPE(WrapperPIC) 27HANDLE_NODETYPE(BR_IF) 28HANDLE_NODETYPE(BR_TABLE) 29HANDLE_NODETYPE(SHUFFLE) 30HANDLE_NODETYPE(SWIZZLE) 31HANDLE_NODETYPE(VEC_SHL) 32HANDLE_NODETYPE(VEC_SHR_S) 33HANDLE_NODETYPE(VEC_SHR_U) 34HANDLE_NODETYPE(THROW) 35HANDLE_NODETYPE(MEMORY_COPY) 36HANDLE_NODETYPE(MEMORY_FILL) 37 38// Memory intrinsics 39HANDLE_MEM_NODETYPE(LOAD_SPLAT) 40