[Codegen] Alter the default promotion for saturating adds and subs
[llvm-complete.git] / lib / Target / WebAssembly / WebAssemblyISD.def
blob13f0476eb4a5a3c2ffc165e0374693b1839d9075
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 //===----------------------------------------------------------------------===//
14 // NOTE: NO INCLUDE GUARD DESIRED!
16 HANDLE_NODETYPE(CALL1)
17 HANDLE_NODETYPE(CALL0)
18 HANDLE_NODETYPE(RET_CALL)
19 HANDLE_NODETYPE(RETURN)
20 HANDLE_NODETYPE(ARGUMENT)
21 // A wrapper node for TargetExternalSymbol, TargetGlobalAddress, and MCSymbol
22 HANDLE_NODETYPE(Wrapper)
23 // A special wapper used in PIC code for __memory_base/__table_base relcative
24 // access.
25 HANDLE_NODETYPE(WrapperPIC)
26 HANDLE_NODETYPE(BR_IF)
27 HANDLE_NODETYPE(BR_TABLE)
28 HANDLE_NODETYPE(SHUFFLE)
29 HANDLE_NODETYPE(SWIZZLE)
30 HANDLE_NODETYPE(VEC_SHL)
31 HANDLE_NODETYPE(VEC_SHR_S)
32 HANDLE_NODETYPE(VEC_SHR_U)
33 HANDLE_NODETYPE(LOAD_SPLAT)
34 HANDLE_NODETYPE(THROW)
35 HANDLE_NODETYPE(MEMORY_COPY)
36 HANDLE_NODETYPE(MEMORY_FILL)
38 // add memory opcodes starting at ISD::FIRST_TARGET_MEMORY_OPCODE here...