mem64.isa (12234:78ece221f9f5) mem64.isa (12236:126ac9da6050)
1// -*- mode:c++ -*-
2
3// Copyright (c) 2011-2014 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

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

253def template DCStore64Declare {{
254 class %(class_name)s : public %(base_class)s
255 {
256 public:
257
258 /// Constructor.
259 %(class_name)s(ExtMachInst machInst, IntRegIndex _base, IntRegIndex _dest, uint64_t _imm);
260
1// -*- mode:c++ -*-
2
3// Copyright (c) 2011-2014 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

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

253def template DCStore64Declare {{
254 class %(class_name)s : public %(base_class)s
255 {
256 public:
257
258 /// Constructor.
259 %(class_name)s(ExtMachInst machInst, IntRegIndex _base, IntRegIndex _dest, uint64_t _imm);
260
261 %(BasicExecDeclare)s
262 %(InitiateAccDeclare)s
263 %(CompleteAccDeclare)s
261 Fault execute(ExecContext *, Trace::InstRecord *) const;
262 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const;
263 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const;
264
265 virtual void
266 annotateFault(ArmFault *fault) {
267 %(fa_code)s
268 }
269 };
270}};
271

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

335 class %(class_name)s : public %(base_class)s
336 {
337 public:
338
339 /// Constructor.
340 %(class_name)s(ExtMachInst machInst,
341 IntRegIndex _dest, IntRegIndex _base, int64_t _imm);
342
264
265 virtual void
266 annotateFault(ArmFault *fault) {
267 %(fa_code)s
268 }
269 };
270}};
271

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

335 class %(class_name)s : public %(base_class)s
336 {
337 public:
338
339 /// Constructor.
340 %(class_name)s(ExtMachInst machInst,
341 IntRegIndex _dest, IntRegIndex _base, int64_t _imm);
342
343 %(BasicExecDeclare)s
344 %(InitiateAccDeclare)s
345 %(CompleteAccDeclare)s
343 Fault execute(ExecContext *, Trace::InstRecord *) const;
344 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const;
345 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const;
346
347 virtual void
348 annotateFault(ArmFault *fault) {
349 %(fa_code)s
350 }
351 };
352}};
353
354def template LoadStoreImmU64Declare {{
355 class %(class_name)s : public %(base_class)s
356 {
357 public:
358
359 /// Constructor.
360 %(class_name)s(ExtMachInst machInst,
361 IntRegIndex _dest, IntRegIndex _base, int64_t _imm,
362 bool noAlloc = false, bool exclusive = false,
363 bool acrel = false);
364
346
347 virtual void
348 annotateFault(ArmFault *fault) {
349 %(fa_code)s
350 }
351 };
352}};
353
354def template LoadStoreImmU64Declare {{
355 class %(class_name)s : public %(base_class)s
356 {
357 public:
358
359 /// Constructor.
360 %(class_name)s(ExtMachInst machInst,
361 IntRegIndex _dest, IntRegIndex _base, int64_t _imm,
362 bool noAlloc = false, bool exclusive = false,
363 bool acrel = false);
364
365 %(BasicExecDeclare)s
366 %(InitiateAccDeclare)s
367 %(CompleteAccDeclare)s
365 Fault execute(ExecContext *, Trace::InstRecord *) const;
366 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const;
367 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const;
368
369 virtual void
370 annotateFault(ArmFault *fault) {
371 %(fa_code)s
372 }
373 };
374}};
375
376def template LoadStoreImmDU64Declare {{
377 class %(class_name)s : public %(base_class)s
378 {
379 public:
380
381 /// Constructor.
382 %(class_name)s(ExtMachInst machInst,
383 IntRegIndex _dest, IntRegIndex _dest2, IntRegIndex _base,
384 int64_t _imm = 0, bool noAlloc = false, bool exclusive = false,
385 bool acrel = false);
386
368
369 virtual void
370 annotateFault(ArmFault *fault) {
371 %(fa_code)s
372 }
373 };
374}};
375
376def template LoadStoreImmDU64Declare {{
377 class %(class_name)s : public %(base_class)s
378 {
379 public:
380
381 /// Constructor.
382 %(class_name)s(ExtMachInst machInst,
383 IntRegIndex _dest, IntRegIndex _dest2, IntRegIndex _base,
384 int64_t _imm = 0, bool noAlloc = false, bool exclusive = false,
385 bool acrel = false);
386
387 %(BasicExecDeclare)s
388 %(InitiateAccDeclare)s
389 %(CompleteAccDeclare)s
387 Fault execute(ExecContext *, Trace::InstRecord *) const;
388 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const;
389 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const;
390
391 virtual void
392 annotateFault(ArmFault *fault) {
393 %(fa_code)s
394 }
395 };
396}};
397

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

403 {
404 public:
405
406 /// Constructor.
407 %(class_name)s(ExtMachInst machInst,
408 IntRegIndex _result, IntRegIndex _dest, IntRegIndex _dest2,
409 IntRegIndex _base, int64_t _imm = 0);
410
390
391 virtual void
392 annotateFault(ArmFault *fault) {
393 %(fa_code)s
394 }
395 };
396}};
397

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

403 {
404 public:
405
406 /// Constructor.
407 %(class_name)s(ExtMachInst machInst,
408 IntRegIndex _result, IntRegIndex _dest, IntRegIndex _dest2,
409 IntRegIndex _base, int64_t _imm = 0);
410
411 %(BasicExecDeclare)s
412
413 %(InitiateAccDeclare)s
414
415 %(CompleteAccDeclare)s
411 Fault execute(ExecContext *, Trace::InstRecord *) const;
412 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const;
413 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const;
416 };
417}};
418
419
420def template LoadStoreReg64Declare {{
421 class %(class_name)s : public %(base_class)s
422 {
423 public:
424
425 /// Constructor.
426 %(class_name)s(ExtMachInst machInst,
427 IntRegIndex _dest, IntRegIndex _base, IntRegIndex _offset,
428 ArmExtendType _type, uint32_t _shiftAmt);
429
414 };
415}};
416
417
418def template LoadStoreReg64Declare {{
419 class %(class_name)s : public %(base_class)s
420 {
421 public:
422
423 /// Constructor.
424 %(class_name)s(ExtMachInst machInst,
425 IntRegIndex _dest, IntRegIndex _base, IntRegIndex _offset,
426 ArmExtendType _type, uint32_t _shiftAmt);
427
430 %(BasicExecDeclare)s
431 %(InitiateAccDeclare)s
432 %(CompleteAccDeclare)s
428 Fault execute(ExecContext *, Trace::InstRecord *) const;
429 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const;
430 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const;
433
434 virtual void
435 annotateFault(ArmFault *fault) {
436 %(fa_code)s
437 }
438 };
439}};
440

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

445
446 /// Constructor.
447 %(class_name)s(ExtMachInst machInst,
448 IntRegIndex _dest, IntRegIndex _base, IntRegIndex _offset,
449 ArmExtendType _type, uint32_t _shiftAmt,
450 bool noAlloc = false, bool exclusive = false,
451 bool acrel = false);
452
431
432 virtual void
433 annotateFault(ArmFault *fault) {
434 %(fa_code)s
435 }
436 };
437}};
438

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

443
444 /// Constructor.
445 %(class_name)s(ExtMachInst machInst,
446 IntRegIndex _dest, IntRegIndex _base, IntRegIndex _offset,
447 ArmExtendType _type, uint32_t _shiftAmt,
448 bool noAlloc = false, bool exclusive = false,
449 bool acrel = false);
450
453 %(BasicExecDeclare)s
454 %(InitiateAccDeclare)s
455 %(CompleteAccDeclare)s
451 Fault execute(ExecContext *, Trace::InstRecord *) const;
452 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const;
453 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const;
456
457 virtual void
458 annotateFault(ArmFault *fault) {
459 %(fa_code)s
460 }
461 };
462}};
463
464def template LoadStoreRaw64Declare {{
465 class %(class_name)s : public %(base_class)s
466 {
467 public:
468
469 /// Constructor.
470 %(class_name)s(ExtMachInst machInst, IntRegIndex _dest,
471 IntRegIndex _base);
472
454
455 virtual void
456 annotateFault(ArmFault *fault) {
457 %(fa_code)s
458 }
459 };
460}};
461
462def template LoadStoreRaw64Declare {{
463 class %(class_name)s : public %(base_class)s
464 {
465 public:
466
467 /// Constructor.
468 %(class_name)s(ExtMachInst machInst, IntRegIndex _dest,
469 IntRegIndex _base);
470
473 %(BasicExecDeclare)s
474 %(InitiateAccDeclare)s
475 %(CompleteAccDeclare)s
471 Fault execute(ExecContext *, Trace::InstRecord *) const;
472 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const;
473 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const;
476
477 virtual void
478 annotateFault(ArmFault *fault) {
479 %(fa_code)s
480 }
481 };
482}};
483
484def template LoadStoreEx64Declare {{
485 class %(class_name)s : public %(base_class)s
486 {
487 public:
488
489 /// Constructor.
490 %(class_name)s(ExtMachInst machInst, IntRegIndex _dest,
491 IntRegIndex _base, IntRegIndex _result);
492
474
475 virtual void
476 annotateFault(ArmFault *fault) {
477 %(fa_code)s
478 }
479 };
480}};
481
482def template LoadStoreEx64Declare {{
483 class %(class_name)s : public %(base_class)s
484 {
485 public:
486
487 /// Constructor.
488 %(class_name)s(ExtMachInst machInst, IntRegIndex _dest,
489 IntRegIndex _base, IntRegIndex _result);
490
493 %(BasicExecDeclare)s
494 %(InitiateAccDeclare)s
495 %(CompleteAccDeclare)s
491 Fault execute(ExecContext *, Trace::InstRecord *) const;
492 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const;
493 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const;
496
497 virtual void
498 annotateFault(ArmFault *fault) {
499 %(fa_code)s
500 }
501 };
502}};
503
504def template LoadStoreLit64Declare {{
505 class %(class_name)s : public %(base_class)s
506 {
507 public:
508
509 /// Constructor.
510 %(class_name)s(ExtMachInst machInst, IntRegIndex _dest, int64_t _imm);
511
494
495 virtual void
496 annotateFault(ArmFault *fault) {
497 %(fa_code)s
498 }
499 };
500}};
501
502def template LoadStoreLit64Declare {{
503 class %(class_name)s : public %(base_class)s
504 {
505 public:
506
507 /// Constructor.
508 %(class_name)s(ExtMachInst machInst, IntRegIndex _dest, int64_t _imm);
509
512 %(BasicExecDeclare)s
513 %(InitiateAccDeclare)s
514 %(CompleteAccDeclare)s
510 Fault execute(ExecContext *, Trace::InstRecord *) const;
511 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const;
512 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const;
515
516 virtual void
517 annotateFault(ArmFault *fault) {
518 %(fa_code)s
519 }
520 };
521}};
522
523def template LoadStoreLitU64Declare {{
524 class %(class_name)s : public %(base_class)s
525 {
526 public:
527
528 /// Constructor.
529 %(class_name)s(ExtMachInst machInst, IntRegIndex _dest, int64_t _imm,
530 bool noAlloc = false, bool exclusive = false,
531 bool acrel = false);
532
513
514 virtual void
515 annotateFault(ArmFault *fault) {
516 %(fa_code)s
517 }
518 };
519}};
520
521def template LoadStoreLitU64Declare {{
522 class %(class_name)s : public %(base_class)s
523 {
524 public:
525
526 /// Constructor.
527 %(class_name)s(ExtMachInst machInst, IntRegIndex _dest, int64_t _imm,
528 bool noAlloc = false, bool exclusive = false,
529 bool acrel = false);
530
533 %(BasicExecDeclare)s
534 %(InitiateAccDeclare)s
535 %(CompleteAccDeclare)s
531 Fault execute(ExecContext *, Trace::InstRecord *) const;
532 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const;
533 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const;
536
537 virtual void
538 annotateFault(ArmFault *fault) {
539 %(fa_code)s
540 }
541 };
542}};
543

--- 143 unchanged lines hidden ---
534
535 virtual void
536 annotateFault(ArmFault *fault) {
537 %(fa_code)s
538 }
539 };
540}};
541

--- 143 unchanged lines hidden ---