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 
17 namespace llvm {
18 
is_TC1(unsigned SchedClass)19 inline 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 
is_TC2(unsigned SchedClass)66 inline 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 
is_TC3x(unsigned SchedClass)98 inline 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 
is_TC2early(unsigned SchedClass)129 inline 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 
is_TC4x(unsigned SchedClass)139 inline 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