Deleted Added
sdiff udiff text old ( 8203:78b9f056d58a ) new ( 8205:7ecbffb674aa )
full compact
1// -*- mode:c++ -*-
2
3// Copyright (c) 2010 ARM Limited
4// All rights reserved
5//
6// The license below extends only to copyright in the software and shall
7// not be construed as granting a license to any other intellectual
8// property including but not limited to intellectual property relating

--- 88 unchanged lines hidden (view full) ---

97
98 if (fault == NoFault) {
99 %(op_wb)s;
100 }
101 } else {
102 xc->setPredicate(false);
103 }
104
105 return fault;
106 }
107}};
108
109def template SwapInitiateAcc {{
110 Fault %(class_name)s::initiateAcc(%(CPU_exec_context)s *xc,
111 Trace::InstRecord *traceData) const
112 {

--- 12 unchanged lines hidden (view full) ---

125 if (fault == NoFault) {
126 fault = xc->write((uint%(mem_acc_size)d_t&)Mem, EA,
127 memAccessFlags, &memData);
128 }
129 } else {
130 xc->setPredicate(false);
131 }
132
133 return fault;
134 }
135}};
136
137def template SwapCompleteAcc {{
138 Fault %(class_name)s::completeAcc(PacketPtr pkt,
139 %(CPU_exec_context)s *xc,
140 Trace::InstRecord *traceData) const

--- 10 unchanged lines hidden (view full) ---

151
152 %(postacc_code)s;
153
154 if (fault == NoFault) {
155 %(op_wb)s;
156 }
157 }
158
159 return fault;
160 }
161}};
162
163def template LoadExecute {{
164 Fault %(class_name)s::execute(%(CPU_exec_context)s *xc,
165 Trace::InstRecord *traceData) const
166 {

--- 13 unchanged lines hidden (view full) ---

180
181 if (fault == NoFault) {
182 %(op_wb)s;
183 }
184 } else {
185 xc->setPredicate(false);
186 }
187
188 return fault;
189 }
190}};
191
192def template NeonLoadExecute {{
193 template <class Element>
194 Fault %(class_name)s<Element>::execute(
195 %(CPU_exec_context)s *xc, Trace::InstRecord *traceData) const

--- 18 unchanged lines hidden (view full) ---

214
215 if (fault == NoFault) {
216 %(op_wb)s;
217 }
218 } else {
219 xc->setPredicate(false);
220 }
221
222 return fault;
223 }
224}};
225
226def template StoreExecute {{
227 Fault %(class_name)s::execute(%(CPU_exec_context)s *xc,
228 Trace::InstRecord *traceData) const
229 {

--- 17 unchanged lines hidden (view full) ---

247
248 if (fault == NoFault) {
249 %(op_wb)s;
250 }
251 } else {
252 xc->setPredicate(false);
253 }
254
255 return fault;
256 }
257}};
258
259def template NeonStoreExecute {{
260 template <class Element>
261 Fault %(class_name)s<Element>::execute(
262 %(CPU_exec_context)s *xc, Trace::InstRecord *traceData) const

--- 22 unchanged lines hidden (view full) ---

285
286 if (fault == NoFault) {
287 %(op_wb)s;
288 }
289 } else {
290 xc->setPredicate(false);
291 }
292
293 return fault;
294 }
295}};
296
297def template StoreExExecute {{
298 Fault %(class_name)s::execute(%(CPU_exec_context)s *xc,
299 Trace::InstRecord *traceData) const
300 {

--- 23 unchanged lines hidden (view full) ---

324
325 if (fault == NoFault) {
326 %(op_wb)s;
327 }
328 } else {
329 xc->setPredicate(false);
330 }
331
332 return fault;
333 }
334}};
335
336def template StoreExInitiateAcc {{
337 Fault %(class_name)s::initiateAcc(%(CPU_exec_context)s *xc,
338 Trace::InstRecord *traceData) const
339 {

--- 12 unchanged lines hidden (view full) ---

352
353 if (fault == NoFault) {
354 fault = xc->write((uint%(mem_acc_size)d_t&)Mem, EA,
355 memAccessFlags, NULL);
356 }
357 } else {
358 xc->setPredicate(false);
359 }
360
361 return fault;
362 }
363}};
364
365def template StoreInitiateAcc {{
366 Fault %(class_name)s::initiateAcc(%(CPU_exec_context)s *xc,
367 Trace::InstRecord *traceData) const

--- 14 unchanged lines hidden (view full) ---

382 if (fault == NoFault) {
383 fault = xc->write((uint%(mem_acc_size)d_t&)Mem, EA,
384 memAccessFlags, NULL);
385 }
386 } else {
387 xc->setPredicate(false);
388 }
389
390 return fault;
391 }
392}};
393
394def template NeonStoreInitiateAcc {{
395 template <class Element>
396 Fault %(class_name)s<Element>::initiateAcc(
397 %(CPU_exec_context)s *xc, Trace::InstRecord *traceData) const

--- 16 unchanged lines hidden (view full) ---

414 if (fault == NoFault) {
415 fault = xc->writeBytes(memUnion.bytes, %(size)d, EA,
416 memAccessFlags, NULL);
417 }
418 } else {
419 xc->setPredicate(false);
420 }
421
422 return fault;
423 }
424}};
425
426def template LoadInitiateAcc {{
427 Fault %(class_name)s::initiateAcc(%(CPU_exec_context)s *xc,
428 Trace::InstRecord *traceData) const
429 {

--- 6 unchanged lines hidden (view full) ---

436
437 if (%(predicate_test)s)
438 {
439 if (fault == NoFault) {
440 fault = xc->read(EA, (uint%(mem_acc_size)d_t &)Mem, memAccessFlags);
441 }
442 } else {
443 xc->setPredicate(false);
444 }
445
446 return fault;
447 }
448}};
449
450def template NeonLoadInitiateAcc {{
451 template <class Element>

--- 9 unchanged lines hidden (view full) ---

461
462 if (%(predicate_test)s)
463 {
464 if (fault == NoFault) {
465 fault = xc->readBytes(EA, NULL, %(size)d, memAccessFlags);
466 }
467 } else {
468 xc->setPredicate(false);
469 }
470
471 return fault;
472 }
473}};
474
475def template LoadCompleteAcc {{
476 Fault %(class_name)s::completeAcc(PacketPtr pkt,

--- 14 unchanged lines hidden (view full) ---

491 %(memacc_code)s;
492 }
493
494 if (fault == NoFault) {
495 %(op_wb)s;
496 }
497 }
498
499 return fault;
500 }
501}};
502
503def template NeonLoadCompleteAcc {{
504 template <class Element>
505 Fault %(class_name)s<Element>::completeAcc(
506 PacketPtr pkt, %(CPU_exec_context)s *xc,

--- 14 unchanged lines hidden (view full) ---

521 %(memacc_code)s;
522 }
523
524 if (fault == NoFault) {
525 %(op_wb)s;
526 }
527 }
528
529 return fault;
530 }
531}};
532
533def template StoreCompleteAcc {{
534 Fault %(class_name)s::completeAcc(PacketPtr pkt,
535 %(CPU_exec_context)s *xc,
536 Trace::InstRecord *traceData) const
537 {
538 return NoFault;
539 }
540}};
541
542def template NeonStoreCompleteAcc {{
543 template <class Element>
544 Fault %(class_name)s<Element>::completeAcc(
545 PacketPtr pkt, %(CPU_exec_context)s *xc,
546 Trace::InstRecord *traceData) const
547 {
548 return NoFault;
549 }
550}};
551
552def template StoreExCompleteAcc {{
553 Fault %(class_name)s::completeAcc(PacketPtr pkt,
554 %(CPU_exec_context)s *xc,
555 Trace::InstRecord *traceData) const

--- 8 unchanged lines hidden (view full) ---

564 uint64_t writeResult = pkt->req->getExtraData();
565 %(postacc_code)s;
566
567 if (fault == NoFault) {
568 %(op_wb)s;
569 }
570 }
571
572 return fault;
573 }
574}};
575
576def template RfeDeclare {{
577 /**
578 * Static instruction class for "%(mnemonic)s".
579 */

--- 620 unchanged lines hidden ---