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
47#ifdef __GNUC__
48#pragma GCC diagnostic push
49#pragma GCC diagnostic ignored "-Woverlength-strings"
50#endif
51static constexpr char XCoreSDNodeNamesStorage[] =
52 "\0"
53 "XCoreISD::BL\0"
54 "XCoreISD::BR_JT\0"
55 "XCoreISD::BR_JT32\0"
56 "XCoreISD::CPRelativeWrapper\0"
57 "XCoreISD::CRC8\0"
58 "XCoreISD::DPRelativeWrapper\0"
59 "XCoreISD::EH_RETURN\0"
60 "XCoreISD::FRAME_TO_ARGS_OFFSET\0"
61 "XCoreISD::LADD\0"
62 "XCoreISD::LDWSP\0"
63 "XCoreISD::LMUL\0"
64 "XCoreISD::LSUB\0"
65 "XCoreISD::MACCS\0"
66 "XCoreISD::MACCU\0"
67 "XCoreISD::PCRelativeWrapper\0"
68 "XCoreISD::RETSP\0"
69 "XCoreISD::STWSP\0"
70 ;
71#ifdef __GNUC__
72#pragma GCC diagnostic pop
73#endif
74
75static constexpr llvm::StringTable
76XCoreSDNodeNames = XCoreSDNodeNamesStorage;
77
78static const VTByHwModePair XCoreVTByHwModeTable[] = {
79 /* dummy */ {0, MVT::INVALID_SIMPLE_VALUE_TYPE}
80};
81
82static const SDTypeConstraint XCoreSDTypeConstraints[] = {
83 /* 0 */ {SDTCisVT, 5, 0, 0, MVT::i32}, {SDTCisVT, 4, 0, 0, MVT::i32}, {SDTCisVT, 3, 0, 0, MVT::i32}, {SDTCisVT, 2, 0, 0, MVT::i32}, {SDTCisVT, 1, 0, 0, MVT::i32}, {SDTCisVT, 0, 0, 0, MVT::i32},
84 /* 6 */ {SDTCisPtrTy, 0, 0, 0, MVT::INVALID_SIMPLE_VALUE_TYPE},
85 /* 7 */ {SDTCisInt, 0, 0, 0, MVT::INVALID_SIMPLE_VALUE_TYPE},
86 /* 8 */ {SDTCisPtrTy, 0, 0, 0, MVT::INVALID_SIMPLE_VALUE_TYPE}, {SDTCisSameAs, 0, 1, 0, MVT::INVALID_SIMPLE_VALUE_TYPE},
87 /* 10 */ {SDTCisInt, 1, 0, 0, MVT::INVALID_SIMPLE_VALUE_TYPE},
88};
89
90static const SDNodeDesc XCoreSDNodeDescs[] = {
91 {0, 1, 0|1<<SDNPHasChain|1<<SDNPOutGlue|1<<SDNPOptInGlue|1<<SDNPVariadic, 0, 0, 1, 6, 1}, // BL
92 {0, 2, 0|1<<SDNPHasChain, 0, 0, 14, 4, 2}, // BR_JT
93 {0, 2, 0|1<<SDNPHasChain, 0, 0, 30, 4, 2}, // BR_JT32
94 {1, 1, 0, 0, 0, 48, 8, 2}, // CPRelativeWrapper
95 {2, 3, 0, 0, 0, 76, 1, 5}, // CRC8
96 {1, 1, 0, 0, 0, 91, 8, 2}, // DPRelativeWrapper
97 {0, 2, 0|1<<SDNPHasChain|1<<SDNPOptInGlue, 0, 0, 119, 8, 2}, // EH_RETURN
98 {1, 0, 0, 0, 0, 139, 7, 1}, // FRAME_TO_ARGS_OFFSET
99 {2, 3, 0, 0, 0, 170, 1, 5}, // LADD
100 {1, 1, 0|1<<SDNPHasChain, 0, 0, 185, 10, 1}, // LDWSP
101 {2, 4, 0, 0, 0, 201, 0, 6}, // LMUL
102 {2, 3, 0, 0, 0, 216, 1, 5}, // LSUB
103 {2, 4, 0, 0, 0, 231, 0, 6}, // MACCS
104 {2, 4, 0, 0, 0, 247, 0, 6}, // MACCU
105 {1, 1, 0, 0, 0, 263, 8, 2}, // PCRelativeWrapper
106 {0, 1, 0|1<<SDNPHasChain|1<<SDNPOptInGlue|1<<SDNPVariadic, 0, 0, 291, 6, 1}, // RETSP
107 {0, 2, 0|1<<SDNPHasChain, 0, 0, 307, 10, 1}, // STWSP
108};
109
110static const SDNodeInfo XCoreGenSDNodeInfo(
111 /*NumOpcodes=*/17, XCoreSDNodeDescs, XCoreSDNodeNames,
112 XCoreVTByHwModeTable, XCoreSDTypeConstraints);
113
114} // namespace llvm
115
116#endif // GET_SDNODE_DESC
117
118