1 | /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |
2 | |* *| |
3 | |* Target SDNode descriptions *| |
4 | |* *| |
5 | |* Automatically generated file, do not edit! *| |
6 | |* From: AVR.td *| |
7 | |* *| |
8 | \*===----------------------------------------------------------------------===*/ |
9 | |
10 | #ifdef GET_SDNODE_ENUM |
11 | #undef GET_SDNODE_ENUM |
12 | |
13 | namespace llvm::AVRISD { |
14 | |
15 | enum GenNodeType : unsigned { |
16 | ASR = ISD::BUILTIN_OP_END, |
17 | ASRBN, |
18 | ASRLO, |
19 | ASRLOOP, |
20 | ASRW, |
21 | ASRWN, |
22 | BRCOND, |
23 | CALL, |
24 | CMP, |
25 | CMPC, |
26 | LSL, |
27 | LSLBN, |
28 | LSLHI, |
29 | LSLLOOP, |
30 | LSLW, |
31 | LSLWN, |
32 | LSR, |
33 | LSRBN, |
34 | LSRLO, |
35 | LSRLOOP, |
36 | LSRW, |
37 | LSRWN, |
38 | RETI_GLUE, |
39 | RET_GLUE, |
40 | ROL, |
41 | ROLLOOP, |
42 | ROR, |
43 | RORLOOP, |
44 | SELECT_CC, |
45 | SWAP, |
46 | TST, |
47 | WRAPPER, |
48 | }; |
49 | |
50 | static constexpr unsigned GENERATED_OPCODE_END = WRAPPER + 1; |
51 | |
52 | } // namespace llvm::AVRISD |
53 | |
54 | #endif // GET_SDNODE_ENUM |
55 | |
56 | #ifdef GET_SDNODE_DESC |
57 | #undef GET_SDNODE_DESC |
58 | |
59 | namespace llvm { |
60 | |
61 | #ifdef __GNUC__ |
62 | #pragma GCC diagnostic push |
63 | #pragma GCC diagnostic ignored "-Woverlength-strings" |
64 | #endif |
65 | static constexpr char AVRSDNodeNamesStorage[] = |
66 | "\0" |
67 | "AVRISD::ASR\0" |
68 | "AVRISD::ASRBN\0" |
69 | "AVRISD::ASRLO\0" |
70 | "AVRISD::ASRLOOP\0" |
71 | "AVRISD::ASRW\0" |
72 | "AVRISD::ASRWN\0" |
73 | "AVRISD::BRCOND\0" |
74 | "AVRISD::CALL\0" |
75 | "AVRISD::CMP\0" |
76 | "AVRISD::CMPC\0" |
77 | "AVRISD::LSL\0" |
78 | "AVRISD::LSLBN\0" |
79 | "AVRISD::LSLHI\0" |
80 | "AVRISD::LSLLOOP\0" |
81 | "AVRISD::LSLW\0" |
82 | "AVRISD::LSLWN\0" |
83 | "AVRISD::LSR\0" |
84 | "AVRISD::LSRBN\0" |
85 | "AVRISD::LSRLO\0" |
86 | "AVRISD::LSRLOOP\0" |
87 | "AVRISD::LSRW\0" |
88 | "AVRISD::LSRWN\0" |
89 | "AVRISD::RETI_GLUE\0" |
90 | "AVRISD::RET_GLUE\0" |
91 | "AVRISD::ROL\0" |
92 | "AVRISD::ROLLOOP\0" |
93 | "AVRISD::ROR\0" |
94 | "AVRISD::RORLOOP\0" |
95 | "AVRISD::SELECT_CC\0" |
96 | "AVRISD::SWAP\0" |
97 | "AVRISD::TST\0" |
98 | "AVRISD::WRAPPER\0" |
99 | ; |
100 | #ifdef __GNUC__ |
101 | #pragma GCC diagnostic pop |
102 | #endif |
103 | |
104 | static constexpr llvm::StringTable AVRSDNodeNames = |
105 | AVRSDNodeNamesStorage; |
106 | |
107 | static const SDTypeConstraint AVRSDTypeConstraints[] = { |
108 | /* 0 */ {SDTCisVT, 1, 0, MVT::i8}, {SDTCisVT, 0, 0, MVT::Other}, |
109 | /* 2 */ {SDTCisVT, 0, 0, MVT::iPTR}, |
110 | /* 3 */ {SDTCisInt, 4, 0, MVT::INVALID_SIMPLE_VALUE_TYPE}, {SDTCisSameAs, 3, 0, MVT::INVALID_SIMPLE_VALUE_TYPE}, {SDTCisSameAs, 2, 0, MVT::INVALID_SIMPLE_VALUE_TYPE}, {SDTCisSameAs, 1, 0, MVT::INVALID_SIMPLE_VALUE_TYPE}, {SDTCisInt, 0, 0, MVT::INVALID_SIMPLE_VALUE_TYPE}, |
111 | /* 8 */ {SDTCisPtrTy, 0, 0, MVT::INVALID_SIMPLE_VALUE_TYPE}, {SDTCisSameAs, 0, 1, MVT::INVALID_SIMPLE_VALUE_TYPE}, |
112 | /* 10 */ {SDTCisInt, 2, 0, MVT::INVALID_SIMPLE_VALUE_TYPE}, {SDTCisInt, 0, 0, MVT::INVALID_SIMPLE_VALUE_TYPE}, {SDTCisSameAs, 0, 1, MVT::INVALID_SIMPLE_VALUE_TYPE}, |
113 | /* 13 */ {SDTCisInt, 0, 0, MVT::INVALID_SIMPLE_VALUE_TYPE}, {SDTCisSameAs, 0, 2, MVT::INVALID_SIMPLE_VALUE_TYPE}, {SDTCisSameAs, 0, 1, MVT::INVALID_SIMPLE_VALUE_TYPE}, |
114 | /* 16 */ {SDTCisVT, 3, 0, MVT::i8}, {SDTCisSameAs, 1, 2, MVT::INVALID_SIMPLE_VALUE_TYPE}, {SDTCisSameAs, 0, 1, MVT::INVALID_SIMPLE_VALUE_TYPE}, |
115 | }; |
116 | |
117 | static const SDNodeDesc AVRSDNodeDescs[] = { |
118 | {1, 1, 0, 0, 0, 1, 11, 2}, // ASR |
119 | {1, 2, 0, 0, 0, 13, 13, 3}, // ASRBN |
120 | {1, 1, 0, 0, 0, 27, 11, 2}, // ASRLO |
121 | {1, 2, 0, 0, 0, 41, 10, 3}, // ASRLOOP |
122 | {2, 3, 0, 0, 0, 57, 3, 5}, // ASRW |
123 | {1, 2, 0, 0, 0, 70, 13, 3}, // ASRWN |
124 | {0, 2, 0|1<<SDNPHasChain|1<<SDNPInGlue, 0, 0, 84, 0, 2}, // BRCOND |
125 | {0, -1, 0|1<<SDNPHasChain|1<<SDNPOutGlue|1<<SDNPOptInGlue|1<<SDNPVariadic, 0, 0, 99, 2, 1}, // CALL |
126 | {0, 2, 0|1<<SDNPOutGlue, 0, 0, 112, 9, 1}, // CMP |
127 | {0, 2, 0|1<<SDNPOutGlue|1<<SDNPInGlue, 0, 0, 124, 9, 1}, // CMPC |
128 | {1, 1, 0, 0, 0, 137, 11, 2}, // LSL |
129 | {1, 2, 0, 0, 0, 149, 13, 3}, // LSLBN |
130 | {1, 1, 0, 0, 0, 163, 11, 2}, // LSLHI |
131 | {1, 2, 0, 0, 0, 177, 10, 3}, // LSLLOOP |
132 | {2, 3, 0, 0, 0, 193, 3, 5}, // LSLW |
133 | {1, 2, 0, 0, 0, 206, 13, 3}, // LSLWN |
134 | {1, 1, 0, 0, 0, 220, 11, 2}, // LSR |
135 | {1, 2, 0, 0, 0, 232, 13, 3}, // LSRBN |
136 | {1, 1, 0, 0, 0, 246, 11, 2}, // LSRLO |
137 | {1, 2, 0, 0, 0, 260, 10, 3}, // LSRLOOP |
138 | {2, 3, 0, 0, 0, 276, 3, 5}, // LSRW |
139 | {1, 2, 0, 0, 0, 289, 13, 3}, // LSRWN |
140 | {0, 0, 0|1<<SDNPHasChain|1<<SDNPOptInGlue|1<<SDNPVariadic, 0, 0, 303, 0, 0}, // RETI_GLUE |
141 | {0, 0, 0|1<<SDNPHasChain|1<<SDNPOptInGlue|1<<SDNPVariadic, 0, 0, 321, 0, 0}, // RET_GLUE |
142 | {1, 1, 0, 0, 0, 338, 11, 2}, // ROL |
143 | {1, 2, 0, 0, 0, 350, 10, 3}, // ROLLOOP |
144 | {1, 1, 0, 0, 0, 366, 11, 2}, // ROR |
145 | {1, 2, 0, 0, 0, 378, 10, 3}, // RORLOOP |
146 | {1, 3, 0|1<<SDNPInGlue, 0, 0, 394, 16, 3}, // SELECT_CC |
147 | {1, 1, 0, 0, 0, 412, 11, 2}, // SWAP |
148 | {0, 1, 0|1<<SDNPOutGlue, 0, 0, 425, 7, 1}, // TST |
149 | {1, 1, 0, 0, 0, 437, 8, 2}, // WRAPPER |
150 | }; |
151 | |
152 | static const SDNodeInfo AVRGenSDNodeInfo( |
153 | /*NumOpcodes=*/32, AVRSDNodeDescs, |
154 | AVRSDNodeNames, AVRSDTypeConstraints); |
155 | |
156 | } // namespace llvm |
157 | |
158 | #endif // GET_SDNODE_DESC |
159 | |
160 | |