1//===----------------------------------------------------------------------===//
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// Automatically generated file, do not edit!
9//===----------------------------------------------------------------------===//
10
11
12#ifndef LLVM_LIB_TARGET_HEXAGON_HEXAGONDEPTIMINGCLASSES_H
13#define LLVM_LIB_TARGET_HEXAGON_HEXAGONDEPTIMINGCLASSES_H
14
15#include "HexagonInstrInfo.h"
16
17namespace llvm {
18
19inline bool is_TC1(unsigned SchedClass) {
20  switch (SchedClass) {
21  case Hexagon::Sched::tc_112d30d6:
22  case Hexagon::Sched::tc_151bf368:
23  case Hexagon::Sched::tc_1c2c7a4a:
24  case Hexagon::Sched::tc_1d41f8b7:
25  case Hexagon::Sched::tc_23708a21:
26  case Hexagon::Sched::tc_24f426ab:
27  case Hexagon::Sched::tc_2f573607:
28  case Hexagon::Sched::tc_388f9897:
29  case Hexagon::Sched::tc_3d14a17b:
30  case Hexagon::Sched::tc_3fbf1042:
31  case Hexagon::Sched::tc_407e96f9:
32  case Hexagon::Sched::tc_42ff66ba:
33  case Hexagon::Sched::tc_4a55d03c:
34  case Hexagon::Sched::tc_5502c366:
35  case Hexagon::Sched::tc_55b33fda:
36  case Hexagon::Sched::tc_56a124a7:
37  case Hexagon::Sched::tc_57a55b54:
38  case Hexagon::Sched::tc_59a7822c:
39  case Hexagon::Sched::tc_5b347363:
40  case Hexagon::Sched::tc_5da50c4b:
41  case Hexagon::Sched::tc_60e324ff:
42  case Hexagon::Sched::tc_651cbe02:
43  case Hexagon::Sched::tc_6fc5dbea:
44  case Hexagon::Sched::tc_711c805f:
45  case Hexagon::Sched::tc_713b66bf:
46  case Hexagon::Sched::tc_9124c04f:
47  case Hexagon::Sched::tc_9c52f549:
48  case Hexagon::Sched::tc_9e27f2f9:
49  case Hexagon::Sched::tc_9f6cd987:
50  case Hexagon::Sched::tc_a1297125:
51  case Hexagon::Sched::tc_a7a13fac:
52  case Hexagon::Sched::tc_b837298f:
53  case Hexagon::Sched::tc_c57d9f39:
54  case Hexagon::Sched::tc_d33e5eee:
55  case Hexagon::Sched::tc_decdde8a:
56  case Hexagon::Sched::tc_ed03645c:
57  case Hexagon::Sched::tc_eeda4109:
58  case Hexagon::Sched::tc_ef921005:
59  case Hexagon::Sched::tc_f999c66e:
60    return true;
61  default:
62    return false;
63  }
64}
65
66inline bool is_TC2(unsigned SchedClass) {
67  switch (SchedClass) {
68  case Hexagon::Sched::tc_01d44cb2:
69  case Hexagon::Sched::tc_0dfac0a7:
70  case Hexagon::Sched::tc_1fcb8495:
71  case Hexagon::Sched::tc_20131976:
72  case Hexagon::Sched::tc_2c13e7f5:
73  case Hexagon::Sched::tc_3edca78f:
74  case Hexagon::Sched::tc_5e4cf0e8:
75  case Hexagon::Sched::tc_65279839:
76  case Hexagon::Sched::tc_7401744f:
77  case Hexagon::Sched::tc_84a7500d:
78  case Hexagon::Sched::tc_8a825db2:
79  case Hexagon::Sched::tc_8b5bd4f5:
80  case Hexagon::Sched::tc_95a33176:
81  case Hexagon::Sched::tc_9b3c0462:
82  case Hexagon::Sched::tc_a08b630b:
83  case Hexagon::Sched::tc_a4e22bbd:
84  case Hexagon::Sched::tc_a7bdb22c:
85  case Hexagon::Sched::tc_bb831a7c:
86  case Hexagon::Sched::tc_c20701f0:
87  case Hexagon::Sched::tc_d3632d88:
88  case Hexagon::Sched::tc_d61dfdc3:
89  case Hexagon::Sched::tc_e3d699e3:
90  case Hexagon::Sched::tc_f098b237:
91  case Hexagon::Sched::tc_f34c1c21:
92    return true;
93  default:
94    return false;
95  }
96}
97
98inline bool is_TC3x(unsigned SchedClass) {
99  switch (SchedClass) {
100  case Hexagon::Sched::tc_01e1be3b:
101  case Hexagon::Sched::tc_1248597c:
102  case Hexagon::Sched::tc_197dce51:
103  case Hexagon::Sched::tc_28e55c6f:
104  case Hexagon::Sched::tc_2c3e17fc:
105  case Hexagon::Sched::tc_38382228:
106  case Hexagon::Sched::tc_38e0bae9:
107  case Hexagon::Sched::tc_4abdbdc6:
108  case Hexagon::Sched::tc_503ce0f3:
109  case Hexagon::Sched::tc_556f6577:
110  case Hexagon::Sched::tc_5a4b5e58:
111  case Hexagon::Sched::tc_6ae3426b:
112  case Hexagon::Sched::tc_6d861a95:
113  case Hexagon::Sched::tc_788b1d09:
114  case Hexagon::Sched::tc_7f8ae742:
115  case Hexagon::Sched::tc_9406230a:
116  case Hexagon::Sched::tc_a154b476:
117  case Hexagon::Sched::tc_a38c45dc:
118  case Hexagon::Sched::tc_c21d7447:
119  case Hexagon::Sched::tc_d7718fbe:
120  case Hexagon::Sched::tc_db596beb:
121  case Hexagon::Sched::tc_f0cdeccf:
122  case Hexagon::Sched::tc_fae9dfa5:
123    return true;
124  default:
125    return false;
126  }
127}
128
129inline bool is_TC2early(unsigned SchedClass) {
130  switch (SchedClass) {
131  case Hexagon::Sched::tc_45f9d1be:
132  case Hexagon::Sched::tc_a4ee89db:
133    return true;
134  default:
135    return false;
136  }
137}
138
139inline bool is_TC4x(unsigned SchedClass) {
140  switch (SchedClass) {
141  case Hexagon::Sched::tc_02fe1c65:
142  case Hexagon::Sched::tc_0a195f2c:
143  case Hexagon::Sched::tc_7f7f45f5:
144  case Hexagon::Sched::tc_9783714b:
145  case Hexagon::Sched::tc_9e72dc89:
146  case Hexagon::Sched::tc_9edb7c77:
147  case Hexagon::Sched::tc_f0e8e832:
148  case Hexagon::Sched::tc_f7569068:
149    return true;
150  default:
151    return false;
152  }
153}
154} // namespace llvm
155
156#endif  // LLVM_LIB_TARGET_HEXAGON_HEXAGONDEPTIMINGCLASSES_H
157