fp.isa (7379:92ef7238d230) fp.isa (7380:baee640ca6a4)
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

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

720 if (half) {
721 return new VcvtUHFixedFpD(machInst, vd, vd, size);
722 } else {
723 return new VcvtUFixedFpD(machInst, vd, vd, size);
724 }
725 }
726 }
727 case 0xc:
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

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

720 if (half) {
721 return new VcvtUHFixedFpD(machInst, vd, vd, size);
722 } else {
723 return new VcvtUFixedFpD(machInst, vd, vd, size);
724 }
725 }
726 }
727 case 0xc:
728 if (single) {
729 return new VcvtFpUIntS(machInst, vd, vm);
728 if (bits(machInst, 7) == 0) {
729 if (single) {
730 return new VcvtFpUIntSR(machInst, vd, vm);
731 } else {
732 vd = (IntRegIndex)(bits(machInst, 22) |
733 (bits(machInst, 15, 12) << 1));
734 return new VcvtFpUIntDR(machInst, vd, vm);
735 }
730 } else {
736 } else {
731 vd = (IntRegIndex)(bits(machInst, 22) |
732 (bits(machInst, 15, 12) << 1));
733 return new VcvtFpUIntD(machInst, vd, vm);
737 if (single) {
738 return new VcvtFpUIntS(machInst, vd, vm);
739 } else {
740 vd = (IntRegIndex)(bits(machInst, 22) |
741 (bits(machInst, 15, 12) << 1));
742 return new VcvtFpUIntD(machInst, vd, vm);
743 }
734 }
735 case 0xd:
744 }
745 case 0xd:
736 if (single) {
737 return new VcvtFpSIntS(machInst, vd, vm);
746 if (bits(machInst, 7) == 0) {
747 if (single) {
748 return new VcvtFpSIntSR(machInst, vd, vm);
749 } else {
750 vd = (IntRegIndex)(bits(machInst, 22) |
751 (bits(machInst, 15, 12) << 1));
752 return new VcvtFpSIntDR(machInst, vd, vm);
753 }
738 } else {
754 } else {
739 vd = (IntRegIndex)(bits(machInst, 22) |
740 (bits(machInst, 15, 12) << 1));
741 return new VcvtFpSIntD(machInst, vd, vm);
755 if (single) {
756 return new VcvtFpSIntS(machInst, vd, vm);
757 } else {
758 vd = (IntRegIndex)(bits(machInst, 22) |
759 (bits(machInst, 15, 12) << 1));
760 return new VcvtFpSIntD(machInst, vd, vm);
761 }
742 }
743 case 0xe:
744 {
745 const bool half = (bits(machInst, 7) == 0);
746 const uint32_t imm = bits(machInst, 5) |
747 (bits(machInst, 3, 0) << 1);
748 const uint32_t size =
749 (bits(machInst, 7) == 0 ? 16 : 32) - imm;

--- 48 unchanged lines hidden ---
762 }
763 case 0xe:
764 {
765 const bool half = (bits(machInst, 7) == 0);
766 const uint32_t imm = bits(machInst, 5) |
767 (bits(machInst, 3, 0) << 1);
768 const uint32_t size =
769 (bits(machInst, 7) == 0 ? 16 : 32) - imm;

--- 48 unchanged lines hidden ---