data.isa (8909:7fa0a081f12f) data.isa (12258:08990d24fe41)
1// Copyright (c) 2010 ARM Limited
1// Copyright (c) 2010,2017 ARM Limited
2// All rights reserved
3//
4// The license below extends only to copyright in the software and shall
5// not be construed as granting a license to any other intellectual
6// property including but not limited to intellectual property relating
7// to a hardware implementation of the functionality of the software
8// licensed hereunder. You may use the software subject to the license
9// terms below provided that you ensure that this notice is replicated

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

783 return new Uhadd8Reg(machInst, rd, rn, rm, 0, LSL);
784 case 0x4:
785 return new Uhsub8Reg(machInst, rd, rn, rm, 0, LSL);
786 }
787 break;
788 }
789 }
790 } else if (bits(op1, 3, 2) == 0x2 && bits(op2, 3, 2) == 0x2) {
2// All rights reserved
3//
4// The license below extends only to copyright in the software and shall
5// not be construed as granting a license to any other intellectual
6// property including but not limited to intellectual property relating
7// to a hardware implementation of the functionality of the software
8// licensed hereunder. You may use the software subject to the license
9// terms below provided that you ensure that this notice is replicated

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

783 return new Uhadd8Reg(machInst, rd, rn, rm, 0, LSL);
784 case 0x4:
785 return new Uhsub8Reg(machInst, rd, rn, rm, 0, LSL);
786 }
787 break;
788 }
789 }
790 } else if (bits(op1, 3, 2) == 0x2 && bits(op2, 3, 2) == 0x2) {
791 const uint32_t op1 = bits(machInst, 21, 20);
791 const uint32_t op1 = bits(machInst, 22, 20);
792 const uint32_t op2 = bits(machInst, 5, 4);
793 const IntRegIndex rd =
794 (IntRegIndex)(uint32_t)bits(machInst, 11, 8);
795 const IntRegIndex rm =
796 (IntRegIndex)(uint32_t)bits(machInst, 3, 0);
797 switch (op1) {
798 case 0x0:
799 switch (op2) {

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

827 if (op2 == 0) {
828 return new Sel(machInst, rd, rn, rm);
829 }
830 break;
831 case 0x3:
832 if (op2 == 0) {
833 return new Clz(machInst, rd, rm);
834 }
792 const uint32_t op2 = bits(machInst, 5, 4);
793 const IntRegIndex rd =
794 (IntRegIndex)(uint32_t)bits(machInst, 11, 8);
795 const IntRegIndex rm =
796 (IntRegIndex)(uint32_t)bits(machInst, 3, 0);
797 switch (op1) {
798 case 0x0:
799 switch (op2) {

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

827 if (op2 == 0) {
828 return new Sel(machInst, rd, rn, rm);
829 }
830 break;
831 case 0x3:
832 if (op2 == 0) {
833 return new Clz(machInst, rd, rm);
834 }
835 break;
836 case 0x4:
837 switch (op2) {
838 case 0x0:
839 return new Crc32b(machInst, rd, rn, rm);
840 case 0x1:
841 return new Crc32h(machInst, rd, rn, rm);
842 case 0x2:
843 return new Crc32w(machInst, rd, rn, rm);
844 }
845 break;
846 case 0x5:
847 switch (op2) {
848 case 0x0:
849 return new Crc32cb(machInst, rd, rn, rm);
850 case 0x1:
851 return new Crc32ch(machInst, rd, rn, rm);
852 case 0x2:
853 return new Crc32cw(machInst, rd, rn, rm);
854 }
855 break;
835 }
836 }
837 return new Unknown(machInst);
838 }
839 }
840 '''
841}};
842

--- 692 unchanged lines hidden ---
856 }
857 }
858 return new Unknown(machInst);
859 }
860 }
861 '''
862}};
863

--- 692 unchanged lines hidden ---