• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/* cortex_a55 function units  definition : */
2
3const unsigned int kunitNum = 2;
4Unit *instancekUnitIdSlot0 = new Unit(kUnitIdSlot0);
5if(instancekUnitIdSlot0 == nullptr) {
6  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdSlot0 failed." << std::endl;
7}
8DEBUG_ASSERT(instancekUnitIdSlot0, "Unit allocation for kUnitIdSlot0 failed.");
9
10Unit *instancekUnitIdSlot1 = new Unit(kUnitIdSlot1);
11if(instancekUnitIdSlot1 == nullptr) {
12  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdSlot1 failed." << std::endl;
13}
14DEBUG_ASSERT(instancekUnitIdSlot1, "Unit allocation for kUnitIdSlot1 failed.");
15
16Unit *instancekUnitIdAgen = new Unit(kUnitIdAgen);
17if(instancekUnitIdAgen == nullptr) {
18  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdAgen failed." << std::endl;
19}
20DEBUG_ASSERT(instancekUnitIdAgen, "Unit allocation for kUnitIdAgen failed.");
21
22Unit *instancekUnitIdHazard = new Unit(kUnitIdHazard);
23if(instancekUnitIdHazard == nullptr) {
24  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdHazard failed." << std::endl;
25}
26DEBUG_ASSERT(instancekUnitIdHazard, "Unit allocation for kUnitIdHazard failed.");
27
28Unit *instancekUnitIdCrypto = new Unit(kUnitIdCrypto);
29if(instancekUnitIdCrypto == nullptr) {
30  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdCrypto failed." << std::endl;
31}
32DEBUG_ASSERT(instancekUnitIdCrypto, "Unit allocation for kUnitIdCrypto failed.");
33
34Unit *instancekUnitIdMul = new Unit(kUnitIdMul);
35if(instancekUnitIdMul == nullptr) {
36  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdMul failed." << std::endl;
37}
38DEBUG_ASSERT(instancekUnitIdMul, "Unit allocation for kUnitIdMul failed.");
39
40Unit *instancekUnitIdDiv = new Unit(kUnitIdDiv);
41if(instancekUnitIdDiv == nullptr) {
42  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdDiv failed." << std::endl;
43}
44DEBUG_ASSERT(instancekUnitIdDiv, "Unit allocation for kUnitIdDiv failed.");
45
46Unit *instancekUnitIdBranch = new Unit(kUnitIdBranch);
47if(instancekUnitIdBranch == nullptr) {
48  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdBranch failed." << std::endl;
49}
50DEBUG_ASSERT(instancekUnitIdBranch, "Unit allocation for kUnitIdBranch failed.");
51
52Unit *instancekUnitIdStAgu = new Unit(kUnitIdStAgu);
53if(instancekUnitIdStAgu == nullptr) {
54  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdStAgu failed." << std::endl;
55}
56DEBUG_ASSERT(instancekUnitIdStAgu, "Unit allocation for kUnitIdStAgu failed.");
57
58Unit *instancekUnitIdLdAgu = new Unit(kUnitIdLdAgu);
59if(instancekUnitIdLdAgu == nullptr) {
60  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdLdAgu failed." << std::endl;
61}
62DEBUG_ASSERT(instancekUnitIdLdAgu, "Unit allocation for kUnitIdLdAgu failed.");
63
64Unit *instancekUnitIdFpAluLo = new Unit(kUnitIdFpAluLo);
65if(instancekUnitIdFpAluLo == nullptr) {
66  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdFpAluLo failed." << std::endl;
67}
68DEBUG_ASSERT(instancekUnitIdFpAluLo, "Unit allocation for kUnitIdFpAluLo failed.");
69
70Unit *instancekUnitIdFpAluHi = new Unit(kUnitIdFpAluHi);
71if(instancekUnitIdFpAluHi == nullptr) {
72  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdFpAluHi failed." << std::endl;
73}
74DEBUG_ASSERT(instancekUnitIdFpAluHi, "Unit allocation for kUnitIdFpAluHi failed.");
75
76Unit *instancekUnitIdFpMulLo = new Unit(kUnitIdFpMulLo);
77if(instancekUnitIdFpMulLo == nullptr) {
78  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdFpMulLo failed." << std::endl;
79}
80DEBUG_ASSERT(instancekUnitIdFpMulLo, "Unit allocation for kUnitIdFpMulLo failed.");
81
82Unit *instancekUnitIdFpMulHi = new Unit(kUnitIdFpMulHi);
83if(instancekUnitIdFpMulHi == nullptr) {
84  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdFpMulHi failed." << std::endl;
85}
86DEBUG_ASSERT(instancekUnitIdFpMulHi, "Unit allocation for kUnitIdFpMulHi failed.");
87
88Unit *instancekUnitIdFpDivLo = new Unit(kUnitIdFpDivLo);
89if(instancekUnitIdFpDivLo == nullptr) {
90  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdFpDivLo failed." << std::endl;
91}
92DEBUG_ASSERT(instancekUnitIdFpDivLo, "Unit allocation for kUnitIdFpDivLo failed.");
93
94Unit *instancekUnitIdFpDivHi = new Unit(kUnitIdFpDivHi);
95if(instancekUnitIdFpDivHi == nullptr) {
96  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdFpDivHi failed." << std::endl;
97}
98DEBUG_ASSERT(instancekUnitIdFpDivHi, "Unit allocation for kUnitIdFpDivHi failed.");
99
100Unit *instancekUnitIdSlotS = new Unit(kUnitTypeOr, kUnitIdSlotS, kunitNum,
101                                      instancekUnitIdSlot0, instancekUnitIdSlot1);
102if(instancekUnitIdSlotS == nullptr) {
103  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdSlotS failed." << std::endl;
104}
105DEBUG_ASSERT(instancekUnitIdSlotS, "Unit allocation for kUnitIdSlotS failed.");
106
107Unit *instancekUnitIdFpAluS = new Unit(kUnitTypeOr, kUnitIdFpAluS, kunitNum,
108                                       instancekUnitIdFpAluLo, instancekUnitIdFpAluHi);
109if(instancekUnitIdFpAluS == nullptr) {
110  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdFpAluS failed." << std::endl;
111}
112DEBUG_ASSERT(instancekUnitIdFpAluS, "Unit allocation for kUnitIdFpAluS failed.");
113
114Unit *instancekUnitIdFpMulS = new Unit(kUnitTypeOr, kUnitIdFpMulS, kunitNum,
115                                       instancekUnitIdFpMulLo, instancekUnitIdFpMulHi);
116if(instancekUnitIdFpMulS == nullptr) {
117  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdFpMulS failed." << std::endl;
118}
119DEBUG_ASSERT(instancekUnitIdFpMulS, "Unit allocation for kUnitIdFpMulS failed.");
120
121Unit *instancekUnitIdFpDivS = new Unit(kUnitTypeOr, kUnitIdFpDivS, kunitNum,
122                                       instancekUnitIdFpDivLo, instancekUnitIdFpDivHi);
123if(instancekUnitIdFpDivS == nullptr) {
124  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdFpDivS failed." << std::endl;
125}
126DEBUG_ASSERT(instancekUnitIdFpDivS, "Unit allocation for kUnitIdFpDivS failed.");
127
128Unit *instancekUnitIdSlotD = new Unit(kUnitTypeAnd, kUnitIdSlotD, kunitNum,
129                                      instancekUnitIdSlot0, instancekUnitIdSlot1);
130if(instancekUnitIdSlotD == nullptr) {
131  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdSlotD failed." << std::endl;
132}
133DEBUG_ASSERT(instancekUnitIdSlotD, "Unit allocation for kUnitIdSlotD failed.");
134
135Unit *instancekUnitIdFpAluD = new Unit(kUnitTypeAnd, kUnitIdFpAluD, kunitNum,
136                                       instancekUnitIdFpAluLo, instancekUnitIdFpAluHi);
137if(instancekUnitIdFpAluD == nullptr) {
138  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdFpAluD failed." << std::endl;
139}
140DEBUG_ASSERT(instancekUnitIdFpAluD, "Unit allocation for kUnitIdFpAluD failed.");
141
142Unit *instancekUnitIdFpMulD = new Unit(kUnitTypeAnd, kUnitIdFpMulD, kunitNum,
143                                       instancekUnitIdFpMulLo, instancekUnitIdFpMulHi);
144if(instancekUnitIdFpMulD == nullptr) {
145  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdFpMulD failed." << std::endl;
146}
147DEBUG_ASSERT(instancekUnitIdFpMulD, "Unit allocation for kUnitIdFpMulD failed.");
148
149Unit *instancekUnitIdFpDivD = new Unit(kUnitTypeAnd, kUnitIdFpDivD, kunitNum,
150                                       instancekUnitIdFpDivLo, instancekUnitIdFpDivHi);
151if(instancekUnitIdFpDivD == nullptr) {
152  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdFpDivD failed." << std::endl;
153}
154DEBUG_ASSERT(instancekUnitIdFpDivD, "Unit allocation for kUnitIdFpDivD failed.");
155
156Unit *instancekUnitIdSlotSHazard = new Unit(kUnitTypeAnd, kUnitIdSlotSHazard, kunitNum,
157                                            instancekUnitIdSlotS, instancekUnitIdHazard);
158if(instancekUnitIdSlotSHazard == nullptr) {
159  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdSlotSHazard failed." << std::endl;
160}
161DEBUG_ASSERT(instancekUnitIdSlotSHazard, "Unit allocation for kUnitIdSlotSHazard failed.");
162
163Unit *instancekUnitIdSlotSMul = new Unit(kUnitTypeAnd, kUnitIdSlotSMul, kunitNum,
164                                         instancekUnitIdSlotS, instancekUnitIdMul);
165if(instancekUnitIdSlotSMul == nullptr) {
166  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdSlotSMul failed." << std::endl;
167}
168DEBUG_ASSERT(instancekUnitIdSlotSMul, "Unit allocation for kUnitIdSlotSMul failed.");
169
170Unit *instancekUnitIdSlotSBranch = new Unit(kUnitTypeAnd, kUnitIdSlotSBranch, kunitNum,
171                                            instancekUnitIdSlotS, instancekUnitIdBranch);
172if(instancekUnitIdSlotSBranch == nullptr) {
173  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdSlotSBranch failed." << std::endl;
174}
175DEBUG_ASSERT(instancekUnitIdSlotSBranch, "Unit allocation for kUnitIdSlotSBranch failed.");
176
177Unit *instancekUnitIdSlotSAgen = new Unit(kUnitTypeAnd, kUnitIdSlotSAgen, kunitNum,
178                                          instancekUnitIdSlotS, instancekUnitIdAgen);
179if(instancekUnitIdSlotSAgen == nullptr) {
180  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdSlotSAgen failed." << std::endl;
181}
182DEBUG_ASSERT(instancekUnitIdSlotSAgen, "Unit allocation for kUnitIdSlotSAgen failed.");
183
184Unit *instancekUnitIdSlotDAgen = new Unit(kUnitTypeAnd, kUnitIdSlotDAgen, kunitNum,
185                                          instancekUnitIdSlot0, instancekUnitIdSlot1, instancekUnitIdAgen);
186if(instancekUnitIdSlotDAgen == nullptr) {
187  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdSlotDAgen failed." << std::endl;
188}
189DEBUG_ASSERT(instancekUnitIdSlotDAgen, "Unit allocation for kUnitIdSlotDAgen failed.");
190
191Unit *instancekUnitIdSlot0LdAgu = new Unit(kUnitTypeAnd, kUnitIdSlot0LdAgu, kunitNum,
192                                           instancekUnitIdSlot0, instancekUnitIdLdAgu);
193if(instancekUnitIdSlot0LdAgu == nullptr) {
194  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdSlot0LdAgu failed." << std::endl;
195}
196DEBUG_ASSERT(instancekUnitIdSlot0LdAgu, "Unit allocation for kUnitIdSlot0LdAgu failed.");
197
198Unit *instancekUnitIdSlot0StAgu = new Unit(kUnitTypeAnd, kUnitIdSlot0StAgu, kunitNum,
199                                           instancekUnitIdSlot0, instancekUnitIdStAgu);
200if(instancekUnitIdSlot0StAgu == nullptr) {
201  maple::LogInfo::MapleLogger(maple::kLlErr) << "Unit allocation for kUnitIdSlot0StAgu failed." << std::endl;
202}
203DEBUG_ASSERT(instancekUnitIdSlot0StAgu, "Unit allocation for kUnitIdSlot0StAgu failed.");
204
205