fp.isa (7643:775ccd204013) fp.isa (7853:69aae4379062)
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

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

753 (bits(machInst, 22) << 4)));
754 const bool q = bits(machInst, 6);
755 const bool op = bits(machInst, 5);
756 const uint8_t cmode = bits(machInst, 11, 8);
757 const uint8_t imm = ((THUMB ? bits(machInst, 28) :
758 bits(machInst, 24)) << 7) |
759 (bits(machInst, 18, 16) << 4) |
760 (bits(machInst, 3, 0) << 0);
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

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

753 (bits(machInst, 22) << 4)));
754 const bool q = bits(machInst, 6);
755 const bool op = bits(machInst, 5);
756 const uint8_t cmode = bits(machInst, 11, 8);
757 const uint8_t imm = ((THUMB ? bits(machInst, 28) :
758 bits(machInst, 24)) << 7) |
759 (bits(machInst, 18, 16) << 4) |
760 (bits(machInst, 3, 0) << 0);
761 const uint64_t bigImm = simd_modified_imm(op, cmode, imm);
761
762 // Check for invalid immediate encodings and return an unknown op
763 // if it happens
764 bool immValid = true;
765 const uint64_t bigImm = simd_modified_imm(op, cmode, imm, immValid);
766 if (!immValid) {
767 return new Unknown(machInst);
768 }
769
762 if (op) {
763 if (bits(cmode, 3) == 0) {
764 if (bits(cmode, 0) == 0) {
765 if (q)
766 return new NVmvniQ<uint64_t>(machInst, vd, bigImm);
767 else
768 return new NVmvniD<uint64_t>(machInst, vd, bigImm);
769 } else {

--- 1735 unchanged lines hidden ---
770 if (op) {
771 if (bits(cmode, 3) == 0) {
772 if (bits(cmode, 0) == 0) {
773 if (q)
774 return new NVmvniQ<uint64_t>(machInst, vd, bigImm);
775 else
776 return new NVmvniD<uint64_t>(machInst, vd, bigImm);
777 } else {

--- 1735 unchanged lines hidden ---