fp.isa (13120:690a0db8e58b) | fp.isa (13168:4965381c122d) |
---|---|
1// -*- mode:c++ -*- 2 3// Copyright (c) 2010-2011, 2016-2018 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 --- 592 unchanged lines hidden (view full) --- 601 } else { 602 if (q) { 603 return new NVfmsQFp<float>(machInst, vd, vn, vm); 604 } else { 605 return new NVfmsDFp<float>(machInst, vd, vn, vm); 606 } 607 } 608 } | 1// -*- mode:c++ -*- 2 3// Copyright (c) 2010-2011, 2016-2018 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 --- 592 unchanged lines hidden (view full) --- 601 } else { 602 if (q) { 603 return new NVfmsQFp<float>(machInst, vd, vn, vm); 604 } else { 605 return new NVfmsDFp<float>(machInst, vd, vn, vm); 606 } 607 } 608 } |
609 } else { 610 if (u) { 611 switch (c) { 612 case 0x0: 613 return new SHA256H(machInst, vd, vn, vm); 614 case 0x1: 615 return new SHA256H2(machInst, vd, vn, vm); 616 case 0x2: 617 return new SHA256SU1(machInst, vd, vn, vm); 618 case 0x3: 619 return new Unknown(machInst); 620 default: 621 M5_UNREACHABLE; 622 } 623 } else { 624 switch (c) { 625 case 0x0: 626 return new SHA1C(machInst, vd, vn, vm); 627 case 0x1: 628 return new SHA1P(machInst, vd, vn, vm); 629 case 0x2: 630 return new SHA1M(machInst, vd, vn, vm); 631 case 0x3: 632 return new SHA1SU0(machInst, vd, vn, vm); 633 default: 634 M5_UNREACHABLE; 635 } 636 } |
|
609 } 610 return new Unknown(machInst); 611 case 0xd: 612 if (b) { 613 if (u) { 614 if (bits(c, 1) == 0) { 615 if (q) { 616 return new NVmulQFp<float>(machInst, vd, vn, vm); --- 912 unchanged lines hidden (view full) --- 1529 return new NVcltQFp<float>(machInst, vd, vm); 1530 } else { 1531 return new NVcltDFp<float>(machInst, vd, vm); 1532 } 1533 } else { 1534 return decodeNeonSTwoMiscReg<NVcltD, NVcltQ>( 1535 q, size, machInst, vd, vm); 1536 } | 637 } 638 return new Unknown(machInst); 639 case 0xd: 640 if (b) { 641 if (u) { 642 if (bits(c, 1) == 0) { 643 if (q) { 644 return new NVmulQFp<float>(machInst, vd, vn, vm); --- 912 unchanged lines hidden (view full) --- 1557 return new NVcltQFp<float>(machInst, vd, vm); 1558 } else { 1559 return new NVcltDFp<float>(machInst, vd, vm); 1560 } 1561 } else { 1562 return decodeNeonSTwoMiscReg<NVcltD, NVcltQ>( 1563 q, size, machInst, vd, vm); 1564 } |
1565 case 0x5: 1566 if (q) { 1567 return new SHA1H(machInst, vd, vm); 1568 } else { 1569 return new Unknown(machInst); 1570 } |
|
1537 case 0x6: 1538 if (bits(machInst, 10)) { 1539 if (q) 1540 return new NVabsQFp<float>(machInst, vd, vm); 1541 else 1542 return new NVabsDFp<float>(machInst, vd, vm); 1543 } else { 1544 return decodeNeonSTwoMiscReg<NVabsD, NVabsQ>( --- 46 unchanged lines hidden (view full) --- 1591 } 1592 case 0x6: 1593 if (b == 0xc) { 1594 return decodeNeonSTwoShiftUSReg<NVshll>( 1595 size, machInst, vd, vm, 8 << size); 1596 } else { 1597 return new Unknown(machInst); 1598 } | 1571 case 0x6: 1572 if (bits(machInst, 10)) { 1573 if (q) 1574 return new NVabsQFp<float>(machInst, vd, vm); 1575 else 1576 return new NVabsDFp<float>(machInst, vd, vm); 1577 } else { 1578 return decodeNeonSTwoMiscReg<NVabsD, NVabsQ>( --- 46 unchanged lines hidden (view full) --- 1625 } 1626 case 0x6: 1627 if (b == 0xc) { 1628 return decodeNeonSTwoShiftUSReg<NVshll>( 1629 size, machInst, vd, vm, 8 << size); 1630 } else { 1631 return new Unknown(machInst); 1632 } |
1633 case 0x7: 1634 if (q) { 1635 return new SHA256SU0(machInst, vd, vm); 1636 } else { 1637 return new SHA1SU1(machInst, vd, vm); 1638 } |
|
1599 case 0xc: 1600 case 0xe: 1601 if (b == 0x18) { 1602 if (size != 1 || (vm % 2)) 1603 return new Unknown(machInst); 1604 return new NVcvts2h<uint16_t>(machInst, vd, vm); 1605 } else if (b == 0x1c) { 1606 if (size != 1 || (vd % 2)) --- 1054 unchanged lines hidden --- | 1639 case 0xc: 1640 case 0xe: 1641 if (b == 0x18) { 1642 if (size != 1 || (vm % 2)) 1643 return new Unknown(machInst); 1644 return new NVcvts2h<uint16_t>(machInst, vd, vm); 1645 } else if (b == 0x1c) { 1646 if (size != 1 || (vd % 2)) --- 1054 unchanged lines hidden --- |