1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* Target SDNode descriptions *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* From: XCore.td *|
7|* *|
8\*===----------------------------------------------------------------------===*/
9
10#ifdef GET_SDNODE_ENUM
11#undef GET_SDNODE_ENUM
12
13namespace llvm::XCoreISD {
14
15enum GenNodeType : unsigned {
16 BL = ISD::BUILTIN_OP_END,
17 BR_JT,
18 BR_JT32,
19 CPRelativeWrapper,
20 CRC8,
21 DPRelativeWrapper,
22 EH_RETURN,
23 FRAME_TO_ARGS_OFFSET,
24 LADD,
25 LDWSP,
26 LMUL,
27 LSUB,
28 MACCS,
29 MACCU,
30 PCRelativeWrapper,
31 RETSP,
32 STWSP,
33};
34
35static constexpr unsigned GENERATED_OPCODE_END = STWSP + 1;
36
37} // namespace llvm::XCoreISD
38
39#endif // GET_SDNODE_ENUM
40
41#ifdef GET_SDNODE_DESC
42#undef GET_SDNODE_DESC
43
44namespace llvm {
45
46#ifdef __GNUC__
47#pragma GCC diagnostic push
48#pragma GCC diagnostic ignored "-Woverlength-strings"
49#endif
50static constexpr char XCoreSDNodeNamesStorage[] =
51 "\0"
52 "XCoreISD::BL\0"
53 "XCoreISD::BR_JT\0"
54 "XCoreISD::BR_JT32\0"
55 "XCoreISD::CPRelativeWrapper\0"
56 "XCoreISD::CRC8\0"
57 "XCoreISD::DPRelativeWrapper\0"
58 "XCoreISD::EH_RETURN\0"
59 "XCoreISD::FRAME_TO_ARGS_OFFSET\0"
60 "XCoreISD::LADD\0"
61 "XCoreISD::LDWSP\0"
62 "XCoreISD::LMUL\0"
63 "XCoreISD::LSUB\0"
64 "XCoreISD::MACCS\0"
65 "XCoreISD::MACCU\0"
66 "XCoreISD::PCRelativeWrapper\0"
67 "XCoreISD::RETSP\0"
68 "XCoreISD::STWSP\0"
69 ;
70#ifdef __GNUC__
71#pragma GCC diagnostic pop
72#endif
73
74static constexpr llvm::StringTable XCoreSDNodeNames =
75 XCoreSDNodeNamesStorage;
76
77static const SDTypeConstraint XCoreSDTypeConstraints[] = {
78 /* 0 */ {SDTCisVT, 5, 0, MVT::i32}, {SDTCisVT, 4, 0, MVT::i32}, {SDTCisVT, 3, 0, MVT::i32}, {SDTCisVT, 2, 0, MVT::i32}, {SDTCisVT, 1, 0, MVT::i32}, {SDTCisVT, 0, 0, MVT::i32},
79 /* 6 */ {SDTCisPtrTy, 0, 0, MVT::INVALID_SIMPLE_VALUE_TYPE},
80 /* 7 */ {SDTCisInt, 0, 0, MVT::INVALID_SIMPLE_VALUE_TYPE},
81 /* 8 */ {SDTCisPtrTy, 0, 0, MVT::INVALID_SIMPLE_VALUE_TYPE}, {SDTCisSameAs, 0, 1, MVT::INVALID_SIMPLE_VALUE_TYPE},
82 /* 10 */ {SDTCisInt, 1, 0, MVT::INVALID_SIMPLE_VALUE_TYPE},
83};
84
85static const SDNodeDesc XCoreSDNodeDescs[] = {
86 {0, 1, 0|1<<SDNPHasChain|1<<SDNPOutGlue|1<<SDNPOptInGlue|1<<SDNPVariadic, 0, 0, 1, 6, 1}, // BL
87 {0, 2, 0|1<<SDNPHasChain, 0, 0, 14, 4, 2}, // BR_JT
88 {0, 2, 0|1<<SDNPHasChain, 0, 0, 30, 4, 2}, // BR_JT32
89 {1, 1, 0, 0, 0, 48, 8, 2}, // CPRelativeWrapper
90 {2, 3, 0, 0, 0, 76, 1, 5}, // CRC8
91 {1, 1, 0, 0, 0, 91, 8, 2}, // DPRelativeWrapper
92 {0, 2, 0|1<<SDNPHasChain|1<<SDNPOptInGlue, 0, 0, 119, 8, 2}, // EH_RETURN
93 {1, 0, 0, 0, 0, 139, 7, 1}, // FRAME_TO_ARGS_OFFSET
94 {2, 3, 0, 0, 0, 170, 1, 5}, // LADD
95 {1, 1, 0|1<<SDNPHasChain, 0, 0, 185, 10, 1}, // LDWSP
96 {2, 4, 0, 0, 0, 201, 0, 6}, // LMUL
97 {2, 3, 0, 0, 0, 216, 1, 5}, // LSUB
98 {2, 4, 0, 0, 0, 231, 0, 6}, // MACCS
99 {2, 4, 0, 0, 0, 247, 0, 6}, // MACCU
100 {1, 1, 0, 0, 0, 263, 8, 2}, // PCRelativeWrapper
101 {0, 1, 0|1<<SDNPHasChain|1<<SDNPOptInGlue|1<<SDNPVariadic, 0, 0, 291, 6, 1}, // RETSP
102 {0, 2, 0|1<<SDNPHasChain, 0, 0, 307, 10, 1}, // STWSP
103};
104
105static const SDNodeInfo XCoreGenSDNodeInfo(
106 /*NumOpcodes=*/17, XCoreSDNodeDescs,
107 XCoreSDNodeNames, XCoreSDTypeConstraints);
108
109} // namespace llvm
110
111#endif // GET_SDNODE_DESC
112
113