mem.isa (12236:126ac9da6050) | mem.isa (12616:4b463b4dc098) |
---|---|
1// -*- mode:c++ -*- 2 3// Copyright (c) 2010, 2012, 2014, 2016 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 --- 568 unchanged lines hidden (view full) --- 577 class %(class_name)s : public %(base_class)s 578 { 579 public: 580 581 /// Constructor. 582 %(class_name)s(ExtMachInst machInst, 583 uint32_t _base, int _mode, bool _wb); 584 | 1// -*- mode:c++ -*- 2 3// Copyright (c) 2010, 2012, 2014, 2016 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 --- 568 unchanged lines hidden (view full) --- 577 class %(class_name)s : public %(base_class)s 578 { 579 public: 580 581 /// Constructor. 582 %(class_name)s(ExtMachInst machInst, 583 uint32_t _base, int _mode, bool _wb); 584 |
585 Fault execute(ExecContext *, Trace::InstRecord *) const; 586 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const; 587 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const; | 585 Fault execute(ExecContext *, Trace::InstRecord *) const override; 586 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const override; 587 Fault completeAcc(PacketPtr, ExecContext *, 588 Trace::InstRecord *) const override; |
588 }; 589}}; 590 591def template SrsDeclare {{ 592 /** 593 * Static instruction class for "%(mnemonic)s". 594 */ 595 class %(class_name)s : public %(base_class)s 596 { 597 public: 598 599 /// Constructor. 600 %(class_name)s(ExtMachInst machInst, 601 uint32_t _regMode, int _mode, bool _wb); 602 | 589 }; 590}}; 591 592def template SrsDeclare {{ 593 /** 594 * Static instruction class for "%(mnemonic)s". 595 */ 596 class %(class_name)s : public %(base_class)s 597 { 598 public: 599 600 /// Constructor. 601 %(class_name)s(ExtMachInst machInst, 602 uint32_t _regMode, int _mode, bool _wb); 603 |
603 Fault execute(ExecContext *, Trace::InstRecord *) const; 604 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const; 605 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const; | 604 Fault execute(ExecContext *, Trace::InstRecord *) const override; 605 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const override; 606 Fault completeAcc(PacketPtr, ExecContext *, 607 Trace::InstRecord *) const override; |
606 }; 607}}; 608 609def template SwapDeclare {{ 610 /** 611 * Static instruction class for "%(mnemonic)s". 612 */ 613 class %(class_name)s : public %(base_class)s 614 { 615 public: 616 617 /// Constructor. 618 %(class_name)s(ExtMachInst machInst, 619 uint32_t _dest, uint32_t _op1, uint32_t _base); 620 | 608 }; 609}}; 610 611def template SwapDeclare {{ 612 /** 613 * Static instruction class for "%(mnemonic)s". 614 */ 615 class %(class_name)s : public %(base_class)s 616 { 617 public: 618 619 /// Constructor. 620 %(class_name)s(ExtMachInst machInst, 621 uint32_t _dest, uint32_t _op1, uint32_t _base); 622 |
621 Fault execute(ExecContext *, Trace::InstRecord *) const; 622 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const; 623 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const; | 623 Fault execute(ExecContext *, Trace::InstRecord *) const override; 624 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const override; 625 Fault completeAcc(PacketPtr, ExecContext *, 626 Trace::InstRecord *) const override; |
624 }; 625}}; 626 627def template LoadStoreDImmDeclare {{ 628 /** 629 * Static instruction class for "%(mnemonic)s". 630 */ 631 class %(class_name)s : public %(base_class)s 632 { 633 public: 634 635 /// Constructor. 636 %(class_name)s(ExtMachInst machInst, 637 uint32_t _dest, uint32_t _dest2, 638 uint32_t _base, bool _add, int32_t _imm); 639 | 627 }; 628}}; 629 630def template LoadStoreDImmDeclare {{ 631 /** 632 * Static instruction class for "%(mnemonic)s". 633 */ 634 class %(class_name)s : public %(base_class)s 635 { 636 public: 637 638 /// Constructor. 639 %(class_name)s(ExtMachInst machInst, 640 uint32_t _dest, uint32_t _dest2, 641 uint32_t _base, bool _add, int32_t _imm); 642 |
640 Fault execute(ExecContext *, Trace::InstRecord *) const; 641 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const; 642 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const; | 643 Fault execute(ExecContext *, Trace::InstRecord *) const override; 644 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const override; 645 Fault completeAcc(PacketPtr, ExecContext *, 646 Trace::InstRecord *) const override; |
643 }; 644}}; 645 646def template StoreExDImmDeclare {{ 647 /** 648 * Static instruction class for "%(mnemonic)s". 649 */ 650 class %(class_name)s : public %(base_class)s 651 { 652 public: 653 654 /// Constructor. 655 %(class_name)s(ExtMachInst machInst, 656 uint32_t _result, uint32_t _dest, uint32_t _dest2, 657 uint32_t _base, bool _add, int32_t _imm); 658 | 647 }; 648}}; 649 650def template StoreExDImmDeclare {{ 651 /** 652 * Static instruction class for "%(mnemonic)s". 653 */ 654 class %(class_name)s : public %(base_class)s 655 { 656 public: 657 658 /// Constructor. 659 %(class_name)s(ExtMachInst machInst, 660 uint32_t _result, uint32_t _dest, uint32_t _dest2, 661 uint32_t _base, bool _add, int32_t _imm); 662 |
659 Fault execute(ExecContext *, Trace::InstRecord *) const; 660 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const; 661 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const; | 663 Fault execute(ExecContext *, Trace::InstRecord *) const override; 664 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const override; 665 Fault completeAcc(PacketPtr, ExecContext *, 666 Trace::InstRecord *) const override; |
662 }; 663}}; 664 665def template LoadStoreImmDeclare {{ 666 /** 667 * Static instruction class for "%(mnemonic)s". 668 */ 669 class %(class_name)s : public %(base_class)s 670 { 671 public: 672 673 /// Constructor. 674 %(class_name)s(ExtMachInst machInst, 675 uint32_t _dest, uint32_t _base, bool _add, int32_t _imm); 676 | 667 }; 668}}; 669 670def template LoadStoreImmDeclare {{ 671 /** 672 * Static instruction class for "%(mnemonic)s". 673 */ 674 class %(class_name)s : public %(base_class)s 675 { 676 public: 677 678 /// Constructor. 679 %(class_name)s(ExtMachInst machInst, 680 uint32_t _dest, uint32_t _base, bool _add, int32_t _imm); 681 |
677 Fault execute(ExecContext *, Trace::InstRecord *) const; 678 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const; 679 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const; | 682 Fault execute(ExecContext *, Trace::InstRecord *) const override; 683 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const override; 684 Fault completeAcc(PacketPtr, ExecContext *, 685 Trace::InstRecord *) const override; |
680 | 686 |
681 virtual void 682 annotateFault(ArmFault *fault) { | 687 void 688 annotateFault(ArmFault *fault) override 689 { |
683 %(fa_code)s 684 } 685 }; 686}}; 687 688def template StoreExImmDeclare {{ 689 /** 690 * Static instruction class for "%(mnemonic)s". 691 */ 692 class %(class_name)s : public %(base_class)s 693 { 694 public: 695 696 /// Constructor. 697 %(class_name)s(ExtMachInst machInst, 698 uint32_t _result, uint32_t _dest, uint32_t _base, 699 bool _add, int32_t _imm); 700 | 690 %(fa_code)s 691 } 692 }; 693}}; 694 695def template StoreExImmDeclare {{ 696 /** 697 * Static instruction class for "%(mnemonic)s". 698 */ 699 class %(class_name)s : public %(base_class)s 700 { 701 public: 702 703 /// Constructor. 704 %(class_name)s(ExtMachInst machInst, 705 uint32_t _result, uint32_t _dest, uint32_t _base, 706 bool _add, int32_t _imm); 707 |
701 Fault execute(ExecContext *, Trace::InstRecord *) const; 702 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const; 703 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const; | 708 Fault execute(ExecContext *, Trace::InstRecord *) const override; 709 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const override; 710 Fault completeAcc(PacketPtr, ExecContext *, 711 Trace::InstRecord *) const override; |
704 }; 705}}; 706 707def template StoreDRegDeclare {{ 708 /** 709 * Static instruction class for "%(mnemonic)s". 710 */ 711 class %(class_name)s : public %(base_class)s 712 { 713 public: 714 715 /// Constructor. 716 %(class_name)s(ExtMachInst machInst, 717 uint32_t _dest, uint32_t _dest2, 718 uint32_t _base, bool _add, 719 int32_t _shiftAmt, uint32_t _shiftType, 720 uint32_t _index); 721 | 712 }; 713}}; 714 715def template StoreDRegDeclare {{ 716 /** 717 * Static instruction class for "%(mnemonic)s". 718 */ 719 class %(class_name)s : public %(base_class)s 720 { 721 public: 722 723 /// Constructor. 724 %(class_name)s(ExtMachInst machInst, 725 uint32_t _dest, uint32_t _dest2, 726 uint32_t _base, bool _add, 727 int32_t _shiftAmt, uint32_t _shiftType, 728 uint32_t _index); 729 |
722 Fault execute(ExecContext *, Trace::InstRecord *) const; 723 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const; 724 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const; | 730 Fault execute(ExecContext *, Trace::InstRecord *) const override; 731 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const override; 732 Fault completeAcc(PacketPtr, ExecContext *, 733 Trace::InstRecord *) const override; |
725 }; 726}}; 727 728def template StoreRegDeclare {{ 729 /** 730 * Static instruction class for "%(mnemonic)s". 731 */ 732 class %(class_name)s : public %(base_class)s 733 { 734 public: 735 736 /// Constructor. 737 %(class_name)s(ExtMachInst machInst, 738 uint32_t _dest, uint32_t _base, bool _add, 739 int32_t _shiftAmt, uint32_t _shiftType, 740 uint32_t _index); 741 | 734 }; 735}}; 736 737def template StoreRegDeclare {{ 738 /** 739 * Static instruction class for "%(mnemonic)s". 740 */ 741 class %(class_name)s : public %(base_class)s 742 { 743 public: 744 745 /// Constructor. 746 %(class_name)s(ExtMachInst machInst, 747 uint32_t _dest, uint32_t _base, bool _add, 748 int32_t _shiftAmt, uint32_t _shiftType, 749 uint32_t _index); 750 |
742 Fault execute(ExecContext *, Trace::InstRecord *) const; 743 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const; 744 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const; | 751 Fault execute(ExecContext *, Trace::InstRecord *) const override; 752 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const override; 753 Fault completeAcc(PacketPtr, ExecContext *, 754 Trace::InstRecord *) const override; |
745 | 755 |
746 virtual void 747 annotateFault(ArmFault *fault) { | 756 void 757 annotateFault(ArmFault *fault) override 758 { |
748 %(fa_code)s 749 } 750 }; 751}}; 752 753def template LoadDRegDeclare {{ 754 /** 755 * Static instruction class for "%(mnemonic)s". --- 4 unchanged lines hidden (view full) --- 760 761 /// Constructor. 762 %(class_name)s(ExtMachInst machInst, 763 uint32_t _dest, uint32_t _dest2, 764 uint32_t _base, bool _add, 765 int32_t _shiftAmt, uint32_t _shiftType, 766 uint32_t _index); 767 | 759 %(fa_code)s 760 } 761 }; 762}}; 763 764def template LoadDRegDeclare {{ 765 /** 766 * Static instruction class for "%(mnemonic)s". --- 4 unchanged lines hidden (view full) --- 771 772 /// Constructor. 773 %(class_name)s(ExtMachInst machInst, 774 uint32_t _dest, uint32_t _dest2, 775 uint32_t _base, bool _add, 776 int32_t _shiftAmt, uint32_t _shiftType, 777 uint32_t _index); 778 |
768 Fault execute(ExecContext *, Trace::InstRecord *) const; 769 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const; 770 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const; | 779 Fault execute(ExecContext *, Trace::InstRecord *) const override; 780 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const override; 781 Fault completeAcc(PacketPtr, ExecContext *, 782 Trace::InstRecord *) const override; |
771 }; 772}}; 773 774def template LoadRegDeclare {{ 775 /** 776 * Static instruction class for "%(mnemonic)s". 777 */ 778 class %(class_name)s : public %(base_class)s 779 { 780 public: 781 782 /// Constructor. 783 %(class_name)s(ExtMachInst machInst, 784 uint32_t _dest, uint32_t _base, bool _add, 785 int32_t _shiftAmt, uint32_t _shiftType, 786 uint32_t _index); 787 | 783 }; 784}}; 785 786def template LoadRegDeclare {{ 787 /** 788 * Static instruction class for "%(mnemonic)s". 789 */ 790 class %(class_name)s : public %(base_class)s 791 { 792 public: 793 794 /// Constructor. 795 %(class_name)s(ExtMachInst machInst, 796 uint32_t _dest, uint32_t _base, bool _add, 797 int32_t _shiftAmt, uint32_t _shiftType, 798 uint32_t _index); 799 |
788 Fault execute(ExecContext *, Trace::InstRecord *) const; 789 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const; 790 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const; | 800 Fault execute(ExecContext *, Trace::InstRecord *) const override; 801 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const override; 802 Fault completeAcc(PacketPtr, ExecContext *, 803 Trace::InstRecord *) const override; |
791 | 804 |
792 virtual void 793 annotateFault(ArmFault *fault) { | 805 void 806 annotateFault(ArmFault *fault) override 807 { |
794 %(fa_code)s 795 } 796 }; 797}}; 798 799def template LoadImmDeclare {{ 800 /** 801 * Static instruction class for "%(mnemonic)s". 802 */ 803 class %(class_name)s : public %(base_class)s 804 { 805 public: 806 807 /// Constructor. 808 %(class_name)s(ExtMachInst machInst, 809 uint32_t _dest, uint32_t _base, bool _add, int32_t _imm); 810 | 808 %(fa_code)s 809 } 810 }; 811}}; 812 813def template LoadImmDeclare {{ 814 /** 815 * Static instruction class for "%(mnemonic)s". 816 */ 817 class %(class_name)s : public %(base_class)s 818 { 819 public: 820 821 /// Constructor. 822 %(class_name)s(ExtMachInst machInst, 823 uint32_t _dest, uint32_t _base, bool _add, int32_t _imm); 824 |
811 Fault execute(ExecContext *, Trace::InstRecord *) const; 812 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const; 813 Fault completeAcc(PacketPtr, ExecContext *, Trace::InstRecord *) const; | 825 Fault execute(ExecContext *, Trace::InstRecord *) const override; 826 Fault initiateAcc(ExecContext *, Trace::InstRecord *) const override; 827 Fault completeAcc(PacketPtr, ExecContext *, 828 Trace::InstRecord *) const override; |
814 | 829 |
815 virtual void 816 annotateFault(ArmFault *fault) { | 830 void 831 annotateFault(ArmFault *fault) override 832 { |
817 %(fa_code)s 818 } 819 }; 820}}; 821 822def template RfeConstructor {{ 823 %(class_name)s::%(class_name)s(ExtMachInst machInst, 824 uint32_t _base, int _mode, bool _wb) --- 402 unchanged lines hidden --- | 833 %(fa_code)s 834 } 835 }; 836}}; 837 838def template RfeConstructor {{ 839 %(class_name)s::%(class_name)s(ExtMachInst machInst, 840 uint32_t _base, int _mode, bool _wb) --- 402 unchanged lines hidden --- |