1 //- WebAssemblyISD.def
- WebAssembly ISD
---------------------------*- C
++ -*-//
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
7 //===----------------------------------------------------------------------===//
10 /// This file describes the various WebAssembly ISD node types.
12 //===----------------------------------------------------------------------===//
14 // NOTE
: NO INCLUDE GUARD DESIRED
!
17 HANDLE_NODETYPE(RET_CALL
)
18 HANDLE_NODETYPE(RETURN)
19 HANDLE_NODETYPE(ARGUMENT
)
20 HANDLE_NODETYPE(LOCAL_GET
)
21 HANDLE_NODETYPE(LOCAL_SET
)
22 // A wrapper node for TargetExternalSymbol
, TargetGlobalAddress
, and MCSymbol
23 HANDLE_NODETYPE(Wrapper
)
24 // A special node for TargetGlobalAddress used in PIC code for
25 // __memory_base
/__table_base relative access.
26 HANDLE_NODETYPE(WrapperREL
)
27 HANDLE_NODETYPE(BR_IF
)
28 HANDLE_NODETYPE(BR_TABLE
)
29 HANDLE_NODETYPE(SHUFFLE
)
30 HANDLE_NODETYPE(SWIZZLE
)
31 HANDLE_NODETYPE(VEC_SHL
)
32 HANDLE_NODETYPE(VEC_SHR_S
)
33 HANDLE_NODETYPE(VEC_SHR_U
)
34 HANDLE_NODETYPE(NARROW_U
)
35 HANDLE_NODETYPE(EXTEND_LOW_S
)
36 HANDLE_NODETYPE(EXTEND_LOW_U
)
37 HANDLE_NODETYPE(EXTEND_HIGH_S
)
38 HANDLE_NODETYPE(EXTEND_HIGH_U
)
39 HANDLE_NODETYPE(CONVERT_LOW_S
)
40 HANDLE_NODETYPE(CONVERT_LOW_U
)
41 HANDLE_NODETYPE(PROMOTE_LOW
)
42 HANDLE_NODETYPE(TRUNC_SAT_ZERO_S
)
43 HANDLE_NODETYPE(TRUNC_SAT_ZERO_U
)
44 HANDLE_NODETYPE(DEMOTE_ZERO
)
45 HANDLE_NODETYPE(MEMORY_COPY
)
46 HANDLE_NODETYPE(MEMORY_FILL
)
49 HANDLE_MEM_NODETYPE(GLOBAL_GET
)
50 HANDLE_MEM_NODETYPE(GLOBAL_SET
)
51 HANDLE_MEM_NODETYPE(TABLE_GET
)
52 HANDLE_MEM_NODETYPE(TABLE_SET
)